Fix individual modules import
When using scapy as a third party library, we do not "benefit" from the
loading routine that puts all symbols in the __builtin__ namespace. This
implies that all modules must be "importable" without any errors for
undefined symbols.
This patch fixes importing every scapy module individually. Some
circular imports were fixed (between inet6 and dhcp6).
Most errors were detected by using pylint with the right configuration
(scapy produces a *lot* of errors). Other errors were detected with the
following shell script:
export PYTHONPATH=".:$PYTHONPATH"
for f in $(find scapy/ -name '*.py'); do
f=${f%/__init__.py}
module=$(echo ${f%.py} | sed 's,/,.,g')
python -c "import $module; print $module"
done
Also, replace all implicit relative imports by absolute imports to avoid
surprises with some python versions.
Signed-off-by:
Robin Jarry <robin.jarry@6wind.com>
Showing
- scapy/all.py 32 additions, 32 deletionsscapy/all.py
- scapy/ansmachine.py 3 additions, 3 deletionsscapy/ansmachine.py
- scapy/arch/__init__.py 9 additions, 7 deletionsscapy/arch/__init__.py
- scapy/arch/linux.py 2 additions, 1 deletionscapy/arch/linux.py
- scapy/arch/pcapdnet.py 6 additions, 6 deletionsscapy/arch/pcapdnet.py
- scapy/arch/solaris.py 1 addition, 1 deletionscapy/arch/solaris.py
- scapy/arch/unix.py 3 additions, 3 deletionsscapy/arch/unix.py
- scapy/arch/windows/__init__.py 1 addition, 2 deletionsscapy/arch/windows/__init__.py
- scapy/as_resolvers.py 1 addition, 1 deletionscapy/as_resolvers.py
- scapy/asn1/asn1.py 1 addition, 1 deletionscapy/asn1/asn1.py
- scapy/asn1/ber.py 1 addition, 1 deletionscapy/asn1/ber.py
- scapy/asn1fields.py 9 additions, 12 deletionsscapy/asn1fields.py
- scapy/asn1packet.py 2 additions, 1 deletionscapy/asn1packet.py
- scapy/automaton.py 6 additions, 6 deletionsscapy/automaton.py
- scapy/autorun.py 4 additions, 4 deletionsscapy/autorun.py
- scapy/base_classes.py 3 additions, 3 deletionsscapy/base_classes.py
- scapy/config.py 6 additions, 5 deletionsscapy/config.py
- scapy/contrib/HomePlugAV.py 4 additions, 1 deletionscapy/contrib/HomePlugAV.py
- scapy/contrib/bgp.py 1 addition, 0 deletionsscapy/contrib/bgp.py
- scapy/contrib/carp.py 3 additions, 2 deletionsscapy/contrib/carp.py
Loading
Please register or sign in to comment