Commit Graph

424 Commits

Author SHA1 Message Date
gpotter2 5b26cf90ff Add L2ListenTcpdump test 2017-09-29 19:00:39 +02:00
gpotter2 a37b38ab5a Add sndrcvloop tests 2017-09-29 18:59:45 +02:00
Pierre Lalet 1fbe6b4992 Merge pull request #837 from guedou/coverage_version
[coverage] Scapy version
2017-09-29 18:55:27 +02:00
Guillaume Valadon 8a59bf4014 Test scapy._version() 2017-09-29 16:49:29 +02:00
Pierre LALET b86d2d495a Test specific .{get,has}layer() methods 2017-09-29 15:14:45 +02:00
Pierre LALET 8ac38c611c Allow filters in the Packet slice / .getlayer() API
With a packet `pkt = IP() / IP(ttl=3) / IP()`, this will allow:

  - pkt.getlayer(IP, ttl=3)
  - pkt[IP, {"ttl": 3}]

This is particularly useful with Dot11Elt() layers, when you want a
specific value (the SSID or supported rates for example).
2017-09-29 15:02:55 +02:00
gpotter2 6e173e9f6e [coverage] Add more scapypipes tests + tests fixes (#808)
* Add more scapypipes tests
* Daemonize threads, better UTscapy closing
* Fix TCPConnectPipe
2017-09-29 14:55:35 +02:00
Pierre Lalet 542b1e7f5a Merge pull request #847 from p-l-/fixes-py3
Python 3: multiple fixes
2017-09-29 14:52:50 +02:00
gpotter2 f36dacb741 Fix plot tests: python 3 2017-09-28 20:37:43 +02:00
Pierre LALET a73622c320 Python 3: fix regression tests 2017-09-28 16:34:52 +02:00
Pierre Lalet 0e02addc58 Merge pull request #833 from guedou/coverage_plist
[coverage] PacketList methods regression tests
2017-09-28 15:40:23 +02:00
Guillaume Valadon 20bb4692de PacketList methods regression tests 2017-09-26 14:38:13 +02:00
gpotter2 2bc05da394 Fix DHCP + volatile 2017-09-23 15:37:49 +02:00
gpotter2 d07dcda7f6 Fix DNS bytes, next(a) instead of a.next(), regression.uts tests 2017-09-22 19:43:22 +02:00
gpotter2 b612d8d9f6 More chr/chb and ord/orb changes 2017-09-21 20:09:44 +02:00
gpotter2 5e76be46bd Bytes conversion fixes, NTP fixes 2017-09-21 20:09:43 +02:00
gpotter2 6e0d5ba2d2 Fix attach_filter BPF + regression 2017-09-21 20:09:41 +02:00
gpotter2 2d6991edd4 Several fixes: bytes, types, layers, networking 2017-09-21 20:09:40 +02:00
gpotter2 d64526a001 Regression tests fixed + Minor fixes 2017-09-21 20:09:38 +02:00
gpotter2 d6cbca4023 Add python 3 executables 2017-09-21 20:08:39 +02:00
Pierre LALET 113bdf5225 VXLAN: more layer bindings 2017-09-21 16:39:32 +02:00
Pierre Lalet ecfe6dd96f Merge pull request #439 from X-Cli/HeterPLF
Add next_cls_cb attribute to PacketListField
2017-09-20 12:28:35 +02:00
gpotter2 887a967643 [Console/Python 3] Remove pyreadline/gnureadline (#703)
* Fix warning texts not being printed

* Add legacy style + histfile

* Fix Doc, readme, appveyor

* Add packet fields auto-completion (thanks to @p-l-)

* Pickle, session, interact tests

* Remove trailing line
2017-09-20 11:29:50 +02:00
Pierre Lalet 2f6b9fee76 Merge pull request #700 from guedou/Issue_#699
Fix DHCPv6 Relay message behavior
2017-09-19 17:53:10 +02:00
Guillaume Valadon 1c98e2ab58 Fix DHCPv6 Relay message behavior 2017-09-19 14:01:17 +02:00
Florian Maury f30d24fab0 Add next_cls_cb attribute to PacketListField
- this feature adds the ability to have a PacketListField
    of heterogeneous Packet types with dynamic discovery
    of the next type. This discovery can be based on any elements
    including previously parsed packets, underlayers, remaining
    bytes (look ahead), and last parsed packet.
  - this feature also adds the ability to parse PacketListFields
    where neither the length nor the number of elements can be
    predicted before parsing. This could be done previously using
    a length_from callback that did significant peeks into the
    string to parse, but it felt clumsy.
2017-09-19 11:30:01 +02:00
gpotter2 a3618a0988 Simplify Net and Net6 conversion 2017-09-17 18:08:29 +02:00
gpotter2 a7d464f13c Fix Loopback on layer 3 2017-09-17 18:07:47 +02:00
gpotter2 ad81f50e90 Fix ttl in IPv6 + comment out tests 2017-09-17 18:07:11 +02:00
gpotter2 d0d4624756 Add LOOPBACK_INTERFACE tests 2017-09-17 18:07:10 +02:00
gpotter2 4e9f4e38ab Add live IPv6 answers tests 2017-09-17 18:05:58 +02:00
gpotter2 bb7e8d7b4a Fix Net6 repr + add tests 2017-09-17 18:05:56 +02:00
Pierre LALET ed1da06a0a Fix VXLAN regression test to make it more specific 2017-09-16 21:18:22 +02:00
Pierre Lalet 1d057bfd91 Merge pull request #674 from gpotter2/fix-str-bytes
[Python 2 to 3] Bytes fixes
2017-09-14 19:40:08 +02:00
Pierre LALET cdb33d8703 TUN/TAP tests: bring interfaces up 2017-09-12 16:25:41 +02:00
Pierre LALET a8b3739699 Add tests for TUN sockets & bridge_and_sniff() 2017-09-12 16:07:59 +02:00
Pierre LALET 885003504e Add tests for TAP sockets & bridge_and_sniff() 2017-09-12 16:07:59 +02:00
Guillaume Valadon 9a2e4bfec9 Merge pull request #802 from gpotter2/tests-scapypipes
[coverage] Add ScapyPipes tests
2017-09-11 12:29:36 +02:00
Guillaume Valadon 557923afb5 Merge pull request #806 from gpotter2/coverage-3
[coverage] Reduce coverage randomness: tls+TEX
2017-09-11 12:10:57 +02:00
gpotter2 564233098c Reduce coverage randomness: tls+TEX 2017-09-10 12:41:56 +02:00
gpotter2 9a4d5569a0 Add ScapyPipes tests 2017-09-08 23:40:27 +02:00
Pierre LALET 066b1d5d0d Make FlagValue objects hashable
This will make them usable as set elements or dict or Counter keys.
2017-09-08 17:33:25 +02:00
gpotter2 5e88574100 Bytes conversion, chb, raw, minor fixes 2017-09-02 02:01:39 +02:00
gpotter2 bbcd63e5f1 New sys.stdout contextmanager + dadict tests 2017-09-01 01:25:47 +02:00
gpotter2 10b0db3bf5 Small tests: reduce randomness of coverage 2017-08-30 21:43:43 +02:00
William R. Dieter 25c6470ca8 Fix ordering of bit fields in the Dot11QoS QoS Control field
Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2017-08-28 14:33:51 -07:00
Pierre Lalet 408094ea3f Merge pull request #764 from p-l-/fix-tls-load
Fix TLS layer loading
2017-08-24 16:24:41 +02:00
Pierre Lalet f82ec78838 Merge pull request #779 from gpotter2/fix-config-iter
[Python 2 to 3] Fix iter functions in config
2017-08-24 16:17:57 +02:00
gpotter2 3ad88257ef Add small test 2017-08-24 14:18:36 +02:00
gpotter2 1186356a1d Add required b's 2017-08-24 12:26:55 +02:00
Pierre LALET c2cc5002e6 Do not load tls module by default 2017-08-20 04:10:18 +02:00
gpotter2 1ab1cd44d3 Fix little-big endian dissection issue 2017-08-11 12:03:43 +02:00
Pierre Lalet 695913c5ae Merge pull request #624 from jsebechlebsky/ppp_auth
Improve PPP Authentication support
2017-08-09 07:15:17 +02:00
Jan Sebechlebsky 955c5b14a3 Add tests for PPP CHAP layer 2017-08-06 17:28:11 +02:00
Jan Sebechlebsky ca4b6396f1 Add tests for PPP PAP layer 2017-08-06 17:28:10 +02:00
Guillaume Valadon 996042c30d DNS TSIG Ressource Record 2017-08-02 14:02:13 +02:00
gpotter2 66d692d232 Add VRRP chksum test 2017-07-31 15:48:26 +02:00
Pierre Lorinquer 310e468dd9 EAP_TTLS class added in eap.py. Regression tests have also been added to the regression.uts file.
Add a mysummary() method to the EAP class.
2017-07-24 09:10:53 +02:00
gpotter2 679dc6e4ea Add missing coma 2017-07-24 08:23:49 +02:00
Pierre Lalet a8decd0518 Merge pull request #694 from guedou/Issue_#529
Don't call randval() on unused ConditionalField
2017-07-20 14:45:17 +02:00
gpotter2 fb02085ceb Fix defragment/defrag on real DNS packets 2017-07-19 14:34:19 +02:00
Guillaume Valadon d2db85948a Don't call randval() on unused ConditionalField 2017-07-13 11:44:19 +02:00
Pierre Lalet f937cccf72 Merge pull request #675 from gpotter2/select-semaphores
[Speed up] Use passive form to select.select + Fix pipetools.uts
2017-07-13 09:51:09 +02:00
mtury 72720872d4 [TLS] Major module overhaul (#542)
* TLS module major overhaul

* Clean TLS directory

* TLS 1.3 packets and basic client automaton (+ session fixes)

* Fix multiple key share entries

* Convergence py3

* Support features from cryptography v2.0

* Validate CertificateVerify signatures

* Small fix on TLS signature parsing

* Small fixes in TLS module

* Enhance Encrypted PMS support

* Convergence py3 - print

* Revert useless changes

* Strengthen crypto lib validation
2017-07-06 07:52:04 +02:00
gpotter2 bb2df99080 Update StringIO 2017-06-29 16:03:44 +02:00
gpotter2 5f3080bc2d Remove __cmp__ (fix tests) 2017-06-29 16:03:44 +02:00
Guillaume Valadon 4f45d40193 Merge pull request #693 from gpotter2/fix-tests-1
[tests] Remove stuck test
2017-06-28 11:58:15 +02:00
gpotter2 299bd5e08d Use correct manufdb on windows 2017-06-27 23:02:41 +02:00
gpotter2 22a55b62eb [Python 2 to 3] Main six fixes (#630)
* Apply six fixes
* Include six directly in scapy
* Ignore six library in coverage
* Moved winpcapy to modules
* Iterator and list fixes
2017-06-27 18:31:14 +02:00
gpotter2 416b2fdaac Comment-out crashy test 2017-06-27 13:31:20 +02:00
gpotter2 701ef0e566 Improve Dot11 coverage + bug fixes 2017-06-26 11:41:43 +02:00
gpotter2 e5084df44c Disable cymru AS_resolver test 2017-06-22 16:38:57 +02:00
gpotter2 653d114f04 [coverage] Several tests + coverage stability (#637)
* Simplify construct_source_candidate_set

* New tests: _CipherSuitesField and construct_source_candidate_set

* Fix run_tests.bat

* New nmap.uts tests

* Add LLMNR tests

* Add TLS failing tests

* STP, linux + bpf random tests

* Add DHCP6 tests
2017-06-22 10:19:02 +02:00
gpotter2 0bfed5c578 Use passive form to select.select 2017-06-07 15:09:07 +02:00
Guillaume Valadon f618886810 Merge pull request #676 from gpotter2/fix-pypy-tests1
Fix pipetools tests
2017-06-07 08:44:41 +02:00
Guillaume Valadon 3a2d7bb846 Some unit tests (#670) 2017-06-06 13:39:33 +02:00
gpotter2 85e91cf2d0 Reduce waiting time in tests 2017-06-05 14:03:43 +02:00
Pierre Lalet 6db9cf9fb9 Merge pull request #639 from gpotter2/windows-pipetools
[Pipetools/coverage] Make pipes work on windows + add tests
2017-06-01 10:19:41 +02:00
plorinquer c8bc0446ae RADIUS module update. (#627)
* The authenticator field is now a XStrFixedLenField (this improves its readability when displayed using show() or show2()).

* RADIUS module update.

* The description of the compute_message_authenticator() method (RadiusAttr_Message_Authenticator class) has been edited.

* The "Response Authenticator computation" test requires the Cryptography library.

* Fix attribute names in compute_message_authenticator().

* Applied guedou's comments.

Specify field length in the Message-Authenticator attribute.
2017-06-01 08:36:06 +02:00
Neale Ranns cc02b632bb MPLS label layering/stacking clears the EOS bit
Signed-off-by: Neale Ranns <nranns@cisco.com>
2017-05-31 23:35:08 +02:00
gpotter2 0ef62bfe31 Change line ending of unix to dos files 2017-05-31 17:05:39 +02:00
gpotter2 6178b48843 Added high push tests + drainers 2017-05-31 13:36:25 +02:00
gpotter2 37b8c8237a Add more coverage: operators and logic 2017-05-31 13:36:25 +02:00
gpotter2 1998f2f655 More pipetool tests 2017-05-31 13:36:24 +02:00
gpotter2 b0266116b2 Add pipetool tests 2017-05-31 13:35:29 +02:00
gpotter2 949ea2fa3b Minor formatting improvements 2017-05-31 13:33:25 +02:00
gpotter2 1306fd897b Add tests 2017-05-31 13:33:25 +02:00
Pierre Lalet 3123e90157 Merge pull request #618 from guedou/codecov_14
[coverage] More tests for inet.py
2017-05-02 13:47:59 +02:00
Pierre LALET ddc4359b86 Cleanup Nmap module, add tests 2017-04-28 23:26:38 +02:00
Guillaume Valadon 84d5cf965a TCP automaton unit tests on Linux 2017-04-27 11:38:33 +02:00
Guillaume Valadon 04b05ed5f5 Test report_ports() using mock 2017-04-25 16:49:45 +02:00
gpotter2 d02b7f5bf2 New tests to avoid randomness of coverage 2017-04-22 19:48:24 +02:00
Pierre Lalet 7476e93141 Merge pull request #553 from Leereen/sctp-enhance
[SCTP] RFC 4895 & 5061
2017-04-19 16:11:27 +02:00
Guillaume Valadon dcd1b911c0 Merge pull request #613 from p-l-/fix-bitfield-len
Fields/BitField: implement .i2len()
2017-04-19 11:04:15 +02:00
Pierre Lalet 4af8e3a4ed Merge pull request #609 from gpotter2/random-coverage
[coverage] Small tests
2017-04-18 23:13:49 +02:00
gpotter2 0ef96fa9cb Add new tests that do not depend on sniffing
to reduce the randomness of coverage
2017-04-18 22:55:32 +02:00
Pierre Lalet 575a582e2f Merge pull request #586 from plorinquer/eap-fixes
EAP - fix variable length field computation
2017-04-18 22:14:32 +02:00
Pierre Lalet 8c56c54fa7 Merge pull request #599 from gpotter2/fix-windows-routes
[Routing/Windows] Improve routing system
2017-04-18 21:22:28 +02:00
Pierre Lorinquer 3adc44e65b LEAP - (Cisco) Lightweight EAP support added. 2017-04-18 14:07:57 +02:00
Pierre LALET 0227a5157c Fields/BitField: implement .i2len() 2017-04-17 14:56:20 +02:00
gpotter2 3288e99073 IPv6 support for Windows 7 + no powershell 2017-04-16 23:14:14 +02:00
Pierre Lalet 535885ed52 Merge pull request #606 from guedou/codecov_12
[coverage] Answering machines unit tests
2017-04-13 13:46:12 +02:00
Guillaume Valadon 01ac767be7 Answering machines unit tests 2017-04-13 11:25:05 +02:00
Lucas Pascal 46eac33866 [fix] requested correction 2017-04-13 08:50:30 +02:00
Guillaume Valadon c8289a7feb More tests for scapy/*.py files 2017-04-12 17:29:18 +02:00
Pierre Lalet 2868fa8703 Merge pull request #601 from guedou/smaller_ut_results
Smaller unit tests results
2017-04-10 17:34:17 +02:00
Guillaume Valadon 4bbee3b741 [coverage] More unit tests for scapy/*.py & bug fixes (#522)
* Code cleaning, unit tests
* Fix manuf DB path
* Specify seed in volatile objects using RandomEnumeration
* pypy fixes
2017-04-10 17:33:08 +02:00
Guillaume Valadon 5e0fe43f47 Smaller unit tests results 2017-04-10 15:48:19 +02:00
Lucas Pascal d8a0387bdd [test] basic SCTP testing 2017-04-10 11:23:32 +02:00
gpotter2 db7c9c1d87 Fix duplicated function + test 2017-04-09 13:07:54 +02:00
gpotter2 43af87fc49 Improve routes on windows 2017-04-09 13:07:54 +02:00
Thomas Faivre 8ea9b84b4a test/ipsec: add reference packet to check decryption
Currently, only internal encryption and decryption were tested but the
implementation might not be the on it is supposed to be.

Add reference packets generated using Ubuntu-16.04, iproute2 and ping:
 # ip -V
 ip utility, iproute2-ss151103
 # uname -a
 Linux router-vm 4.4.0-62-generic #83-Ubuntu SMP Wed Jan 18 14:10:15 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
 # ping -V
 ping utility, iputils-s20160308

Signed-off-by: Thomas Faivre <thomas.faivre@6wind.com>
2017-04-06 13:00:57 +02:00
Thomas Faivre e430ef6386 tests: fix some AES-CCM tests
In TLS, the AES-CCM test is commented out because CCM is not supported
by cryptography. But the combined_modes_ccm keyword is made to skip
these tests.

In IPsec, some IPv4 tests are located in the IPv6 section. Also add the
same combination of test for the AES-CCM as the other modes.

Also, there is some errors in the key material as the *MUST*
implementation uses a 16 bytes key and a 3 bytes nonce. Fix those
lengths.

Signed-off-by: Thomas Faivre <thomas.faivre@6wind.com>
2017-04-06 13:00:57 +02:00
Guillaume Valadon 1bb5499190 Support Raw IPv6 as PCAP linktype 2017-03-30 09:05:13 +02:00
Pierre Lalet 77b4ce3af4 Merge pull request #576 from guedou/PR#504_improved
[rewritten] PR #504
2017-03-29 12:10:05 +02:00
Pierre Lorinquer 2cd6d3347f Fix EAP_MD5 "len" field computation.
The default values of the "value_size" field is None. This can trigger
an issue
when computing the "len" field.

Test: str(EAP_MD5())

In order to fix this issue, the default value of the "value_size" field
has been set to 0.

Tests have been added in "regression.uts".

Added regression tests for EAP_TLS and EAP_FAST.

Use XStrLenField in EAP_MD5, EAP_TLS and EAP_FAST packets instead of StrLenField.

Delete blank lines before the class description (EAPOL, EAP, EAP_MD5, EAP_TLS and EAP_FAST packet classes).

"registered_options" dictionary was renamed "registered_methods"
(EAP-MD5, EAP-TLS etc are not options, but authentication methods).

EAP getlayer() and haslayer() methods have been overloaded in order to
allow access to a given "EAP layer" (such as EAP_TLS, for instance) by
providing the parent class name ("EAP"). For example, this is now
possible:

>>> eap_tls = EAP_TLS()
>>> EAP_TLS in eap_tls
True
>>> EAP in eap_tls
True
>>> eap_tls[EAP_TLS]
<EAP_TLS  |>
>>> eap_tls[EAP]
<EAP_TLS  |>

Regression tests have been added.
2017-03-28 21:36:16 +02:00
Thomas Faivre c73cdbc5f2 layers/ipsec: fix AH dissection
The ICV size is defined by the authentication algorithm in the SA.
it can be deduced from the payloadlen field but the padding len is
unknown aswell so there is no way to find both without the SA.

Assume everything in payloadlen is the ICV until the verification called
from the SA. Fill padding when possible.

Signed-off-by: Thomas Faivre <thomas.faivre@6wind.com>
2017-03-28 11:35:12 +02:00
Guillaume Valadon 1ab629e4d4 Small fix and unit tests 2017-03-23 16:09:05 +01:00
Pierre LALET a6e2c2f3cb Prevent sr() tests crashes 2017-03-22 08:24:44 +01:00
Pierre Lalet 037c992d29 Merge pull request #572 from gpotter2/scpy-30-prog
[convergence] Python 3- string byte tag
2017-03-22 07:21:59 +01:00
gpotter2 d2d7d2dac9 Auto parser on tests 2017-03-21 22:38:45 +01:00
gpotter2 3b36b636b6 Fix mock_windows tests 2017-03-20 21:03:41 +01:00
Guillaume Valadon a7a164350d Merge pull request #516 from plorinquer/ntp-update
NTP : update and small fixes
2017-03-16 09:13:16 +01:00
Pierre Lalet 0c7ad603d7 Merge pull request #558 from guedou/PR#182_improved
[rewritten] PR #182
2017-03-15 17:25:05 +01:00
Guillaume Valadon 996b02e6f1 Merge pull request #528 from gpotter2/patch-7
[coverage] Tests for ManufDB + Multiple fixes
2017-03-15 15:03:27 +01:00
Guillaume Valadon 597f30bea7 Merge pull request #537 from gpotter2/pickling-error
[Pickling] Add packets pickling support
2017-03-15 15:02:29 +01:00
Guillaume Valadon 35354325a8 Improved Segment Routing Header support - draft-06 2017-03-15 14:29:36 +01:00
gpotter2 911f1d6c45 Better tests + fixes 2017-03-15 13:17:49 +01:00
gpotter2 8666c13183 Only test ManuFDB when available 2017-03-15 13:17:49 +01:00
gpotter2 81fc163513 Added some windows arch tests 2017-03-15 13:17:48 +01:00
gpotter2 ab08f45646 Fix manufdb detection on windows 2017-03-15 13:15:11 +01:00
gpotter2 8fbcf84614 Added client tls tests on appveyor 2017-03-15 13:15:10 +01:00
Pierre Lalet 7d9004373b Merge pull request #498 from gpotter2/patch-windows-tests
[Windows] Fixed VBS fallback
2017-03-13 13:51:08 +01:00
gpotter2 f3016aca7c Add pickling methods 2017-03-11 01:38:28 +01:00
Guillaume Valadon caff8ac253 Better unit tests for inet6.py 2017-03-10 13:05:35 +01:00
Guillaume Valadon 4d8b461e69 Merge pull request #545 from p-l-/enh-flags
Flags: allow operations (| & ==) with strings
2017-03-10 12:59:01 +01:00
Pierre Lalet f982008e7a Merge pull request #543 from gpotter2/multi-utscapy
[coverage] Speed up all tests x2
2017-03-10 08:24:53 +01:00
Pierre Lalet 3f0ec99b54 Merge pull request #548 from gpotter2/fix-as-resolver
[Tests] Fix AS_RESOLVER
2017-03-09 22:37:25 +01:00
Pierre LALET 53a66dee44 Add tests for TCP.answers() 2017-03-09 13:47:59 +01:00
gpotter2 d5670e8b38 Fix AS_RESOLVER 2017-03-06 20:55:03 +01:00
Pierre LALET a6b12fc6eb Flags: allow operations (| & ==) with strings: pkt[TCP].flags |= "SA" 2017-03-06 07:56:52 +01:00
gpotter2 f2201b7f82 Add UTscapy multi-file support 2017-03-05 02:14:36 +01:00
Victor Pfautz 0d92fc9fbb Fixed spacing bug (#532)
Fixed some typos and bad whitespaces.
2017-03-01 13:08:36 +01:00
Pierre LALET 4e4ea3a59e Tests: disable debug_dissector in sniff tests
This should avoid random unrelated crashes.
2017-02-22 10:22:20 +01:00
Pierre Lalet 0d4151a118 Merge pull request #509 from guedou/codecov_8
[coverage] Better unit tests for inet.py
2017-02-16 20:10:49 +01:00
Pierre Lorinquer 99214c1ca8 NTPControl: rename field 'error' in 'err' in order to have the same name for the error field in NTP Control messages and NTP Private messages.
Use the XStrFixedLenField class which is now defined in scapy/fields.py + Fix typo.
2017-02-16 15:04:51 +01:00
gpotter2 e658e64c2b [Windows/coverage] Fix and Support automaton (#496) 2017-02-14 23:28:57 +01:00
gpotter2 59b16b4577 [TLS/coverage] Migrate to UTS + Bug (#508) 2017-02-14 23:26:42 +01:00
mtu 7b880de63b Enable DES and EXP-DES for TLS 2017-02-10 14:48:27 +01:00
Guillaume Valadon 2f8d8b8e51 Better unit tests for inet.py 2017-02-10 13:53:30 +01:00