[issue39991] test_uuid.test_netstat_getnode() fails on FreeBSD VM: uuid._netstat_getnode() uses IPv6 address as MAC address

STINNER Victor report at bugs.python.org
Tue Mar 17 07:27:33 EDT 2020


New submission from STINNER Victor <vstinner at python.org>:

My FreeBSD VM has a NIC with the IPv6 address fe80::5054:ff:fe9: local-link IPv6 address. It's used by uuid._netstat_getnode() as a MAC address, but it seems like this IPv6 address doesn't respect RFC 4122 and so should be skipped.

_find_mac_under_heading() should reject IPv6 address: only use MAC address.


vstinner at freebsd$ uname -a
FreeBSD freebsd 12.1-RELEASE-p2 FreeBSD 12.1-RELEASE-p2 GENERIC  amd64

======================================================================
FAIL: test_netstat_getnode (test.test_uuid.TestInternalsWithExtModule)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/home/vstinner/python/master/Lib/test/test_uuid.py", line 767, in test_netstat_getnode
    self.check_node(node, 'netstat')
  File "/usr/home/vstinner/python/master/Lib/test/test_uuid.py", line 736, in check_node
    self.assertTrue(0 < node < (1 << 48),
AssertionError: False is not true : fe805054fffe9 is not an RFC 4122 node ID

======================================================================
FAIL: test_netstat_getnode (test.test_uuid.TestInternalsWithoutExtModule)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/home/vstinner/python/master/Lib/test/test_uuid.py", line 767, in test_netstat_getnode
    self.check_node(node, 'netstat')
  File "/usr/home/vstinner/python/master/Lib/test/test_uuid.py", line 736, in check_node
    self.assertTrue(0 < node < (1 << 48),
AssertionError: False is not true : fe805054fffe9 is not an RFC 4122 node ID



It's using a qemu VM run by virt-manager.

fe805054fffe9 seems to be the MAC address of my vtnet network interface:

vstinner at freebsd$ netstat -ian 
Name    Mtu Network       Address              Ipkts Ierrs Idrop    Opkts Oerrs  Coll
vtnet  1500 <Link#1>      52:54:00:9d:0e:67    10017     0     0     8174     0     0
vtnet     - fe80::%vtnet0 fe80::5054:ff:fe9        0     -     -        4     -     -
vtnet     - 192.168.122.0 192.168.122.45        8844     -     -     8171     -     -
lo0   16384 <Link#2>      lo0                 260148     0     0   260148     0     0
lo0       - ::1/128       ::1                    193     -     -      193     -     -
                          ff01::1%lo0      
                          ff02::2:2eb7:74fa
                          ff02::2:ff2e:b774
                          ff02::1%lo0      
                          ff02::1:ff00:1%lo
lo0       - fe80::%lo0/64 fe80::1%lo0              0     -     -        0     -     -
                          ff01::1%lo0      
                          ff02::2:2eb7:74fa
                          ff02::2:ff2e:b774
                          ff02::1%lo0      
                          ff02::1:ff00:1%lo
lo0       - 127.0.0.0/8   127.0.0.1           259955     -     -   259955     -     -
                          224.0.0.1

----------
components: Tests
messages: 364412
nosy: barry, vstinner
priority: normal
severity: normal
status: open
title: test_uuid.test_netstat_getnode() fails on FreeBSD VM: uuid._netstat_getnode() uses IPv6 address as MAC address
versions: Python 3.9

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue39991>
_______________________________________


More information about the Python-bugs-list mailing list