focal-proposed:
$ sudo python3 Python 3.8.10 (default, Jun 2 2021, 10:49:15) [GCC 9.4.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> from neutron.privileged.agent.linux import ip_lib >>> ip_lib.get_link_vfs('enp3s0f0', None) {0: {'mac': 'e6:f8:10:43:f5:6c', 'link_state': 0}, 1: {'mac': '16:cd:68:27:ba:76', 'link_state': 0}, 2: {'mac': '06:80:b4:9f:c5:9e', 'link_state': 0}, 3: {'mac': '92:37:10:5d:3b:86', 'link_state': 0}, 4: {'mac': '42:75:cb:09:93:78', 'link_state': 0}, 5: {'mac': '4e:aa:60:3b:1d:04', 'link_state': 0}, 6: {'mac': '2e:44:8a:08:71:82', 'link_state': 0}, 7: {'mac': 'fa:72:b3:51:81:2d', 'link_state': 0}, 8: {'mac': '6e:5f:e1:22:84:06', 'link_state': 0}, 9: {'mac': 'a2:2d:6b:84:3a:af', 'link_state': 0}, 10: {'mac': 'ee:6d:90:95:5f:22', 'link_state': 0}, 11: {'mac': '16:79:03:25:66:7b', 'link_state': 0}, 12: {'mac': 'ee:c8:56:4a:75:e8', 'link_state': 0}, 13: {'mac': '56:30:25:e8:df:c1', 'link_state': 0}, 14: {'mac': '76:d3:ea:aa:0c:09', 'link_state': 0}, 15: {'mac': 'c6:0f:2a:c6:a2:58', 'link_state': 0}, 16: {'mac': '1e:70:c6:45:3b:74', 'link_state': 0}, 17: {'mac': '5a:63:86:59:43:26', 'link_state': 0}, 18: {'mac': '56:29:8d:ac:cb:e2', 'link_state': 0}, 19: {'mac': '7e:34:75:7d:3e:de', 'link_state': 0}, 20: {'mac': '0e:e0:45:a3:8b:00', 'link_state': 0}, 21: {'mac': '6a:d7:43:81:2c:8c', 'link_state': 0}, 22: {'mac': '8a:83:f5:d3:31:d1', 'link_state': 0}, 23: {'mac': 'e6:08:e4:bd:c1:79', 'link_state': 0}, 24: {'mac': 'c6:1d:73:3d:9c:a6', 'link_state': 0}, 25: {'mac': 'ce:61:95:88:38:08', 'link_state': 0}, 26: {'mac': '3e:21:d4:bc:28:35', 'link_state': 0}, 27: {'mac': 'd2:c7:56:c8:fb:26', 'link_state': 0}, 28: {'mac': 'aa:de:6e:00:3e:13', 'link_state': 0}, 29: {'mac': '4a:47:c1:92:48:23', 'link_state': 0}, 30: {'mac': '5e:2b:60:4f:d4:6e', 'link_state': 0}, 31: {'mac': 'f2:64:c1:af:49:b7', 'link_state': 0}, 32: {'mac': '9a:d5:68:db:7a:bd', 'link_state': 0}, 33: {'mac': '16:9f:10:2c:e0:fc', 'link_state': 0}, 34: {'mac': 'b6:f6:c8:a8:c9:66', 'link_state': 0}, 35: {'mac': '62:54:ac:a3:45:8f', 'link_state': 0}, 36: {'mac': '96:7f:49:2b:82:b2', 'link_state': 0}, 37: {'mac': 'b2:ff:83:e5:18:3a', 'link_state': 0}, 38: {'mac': '42:96:69:bf:6e:51', 'link_state': 0}, 39: {'mac': 'e2:f8:19:8a:86:d4', 'link_state': 0}, 40: {'mac': 'e2:1e:b6:79:b5:f2', 'link_state': 0}, 41: {'mac': '06:b8:04:14:67:7a', 'link_state': 0}, 42: {'mac': '9e:0c:a0:5b:0f:00', 'link_state': 0}, 43: {'mac': '32:b2:4e:d4:83:33', 'link_state': 0}, 44: {'mac': '96:f9:05:31:81:e1', 'link_state': 0}, 45: {'mac': '2e:0e:e3:f0:6e:24', 'link_state': 0}, 46: {'mac': 'fa:95:1d:9c:c5:9b', 'link_state': 0}, 47: {'mac': '2a:9e:69:16:c0:04', 'link_state': 0}, 48: {'mac': 'b6:3e:6d:63:c6:01', 'link_state': 0}, 49: {'mac': '42:24:89:2b:b4:2e', 'link_state': 0}, 50: {'mac': 'ae:9d:ad:22:37:76', 'link_state': 0}, 51: {'mac': 'b2:f0:4c:15:6d:1d', 'link_state': 0}, 52: {'mac': '42:07:bc:96:28:65', 'link_state': 0}, 53: {'mac': '22:d5:9e:d1:40:fd', 'link_state': 0}, 54: {'mac': 'c6:10:07:fd:87:f6', 'link_state': 0}, 55: {'mac': '5a:5b:f1:d6:46:14', 'link_state': 0}, 56: {'mac': 'b2:55:f8:90:0a:7a', 'link_state': 0}, 57: {'mac': 'ba:37:61:76:4d:1a', 'link_state': 0}, 58: {'mac': 'de:4e:cc:df:a8:6c', 'link_state': 0}, 59: {'mac': '7a:cb:25:c4:07:7a', 'link_state': 0}, 60: {'mac': 'f2:02:5a:cd:88:7b', 'link_state': 0}, 61: {'mac': '72:48:17:f3:f7:80', 'link_state': 0}, 62: {'mac': '62:a3:8d:d0:04:3e', 'link_state': 0}}
focal-proposed:
$ sudo python3 privileged. agent.linux import ip_lib get_link_ vfs('enp3s0f0' , None) 10:43:f5: 6c', 'link_state': 0}, 1: {'mac': '16:cd: 68:27:ba: 76', 'link_state': 0}, 2: {'mac': '06:80: b4:9f:c5: 9e', 'link_state': 0}, 3: {'mac': '92:37: 10:5d:3b: 86', 'link_state': 0}, 4: {'mac': '42:75: cb:09:93: 78', 'link_state': 0}, 5: {'mac': '4e:aa: 60:3b:1d: 04', 'link_state': 0}, 6: {'mac': '2e:44: 8a:08:71: 82', 'link_state': 0}, 7: {'mac': 'fa:72: b3:51:81: 2d', 'link_state': 0}, 8: {'mac': '6e:5f: e1:22:84: 06', 'link_state': 0}, 9: {'mac': 'a2:2d: 6b:84:3a: af', 'link_state': 0}, 10: {'mac': 'ee:6d: 90:95:5f: 22', 'link_state': 0}, 11: {'mac': '16:79: 03:25:66: 7b', 'link_state': 0}, 12: {'mac': 'ee:c8: 56:4a:75: e8', 'link_state': 0}, 13: {'mac': '56:30: 25:e8:df: c1', 'link_state': 0}, 14: {'mac': '76:d3: ea:aa:0c: 09', 'link_state': 0}, 15: {'mac': 'c6:0f: 2a:c6:a2: 58', 'link_state': 0}, 16: {'mac': '1e:70: c6:45:3b: 74', 'link_state': 0}, 17: {'mac': '5a:63: 86:59:43: 26', 'link_state': 0}, 18: {'mac': '56:29: 8d:ac:cb: e2', 'link_state': 0}, 19: {'mac': '7e:34: 75:7d:3e: de', 'link_state': 0}, 20: {'mac': '0e:e0: 45:a3:8b: 00', 'link_state': 0}, 21: {'mac': '6a:d7: 43:81:2c: 8c', 'link_state': 0}, 22: {'mac': '8a:83: f5:d3:31: d1', 'link_state': 0}, 23: {'mac': 'e6:08: e4:bd:c1: 79', 'link_state': 0}, 24: {'mac': 'c6:1d: 73:3d:9c: a6', 'link_state': 0}, 25: {'mac': 'ce:61: 95:88:38: 08', 'link_state': 0}, 26: {'mac': '3e:21: d4:bc:28: 35', 'link_state': 0}, 27: {'mac': 'd2:c7: 56:c8:fb: 26', 'link_state': 0}, 28: {'mac': 'aa:de: 6e:00:3e: 13', 'link_state': 0}, 29: {'mac': '4a:47: c1:92:48: 23', 'link_state': 0}, 30: {'mac': '5e:2b: 60:4f:d4: 6e', 'link_state': 0}, 31: {'mac': 'f2:64: c1:af:49: b7', 'link_state': 0}, 32: {'mac': '9a:d5: 68:db:7a: bd', 'link_state': 0}, 33: {'mac': '16:9f: 10:2c:e0: fc', 'link_state': 0}, 34: {'mac': 'b6:f6: c8:a8:c9: 66', 'link_state': 0}, 35: {'mac': '62:54: ac:a3:45: 8f', 'link_state': 0}, 36: {'mac': '96:7f: 49:2b:82: b2', 'link_state': 0}, 37: {'mac': 'b2:ff: 83:e5:18: 3a', 'link_state': 0}, 38: {'mac': '42:96: 69:bf:6e: 51', 'link_state': 0}, 39: {'mac': 'e2:f8: 19:8a:86: d4', 'link_state': 0}, 40: {'mac': 'e2:1e: b6:79:b5: f2', 'link_state': 0}, 41: {'mac': '06:b8: 04:14:67: 7a', 'link_state': 0}, 42: {'mac': '9e:0c: a0:5b:0f: 00', 'link_state': 0}, 43: {'mac': '32:b2: 4e:d4:83: 33', 'link_state': 0}, 44: {'mac': '96:f9: 05:31:81: e1', 'link_state': 0}, 45: {'mac': '2e:0e: e3:f0:6e: 24', 'link_state': 0}, 46: {'mac': 'fa:95: 1d:9c:c5: 9b', 'link_state': 0}, 47: {'mac': '2a:9e: 69:16:c0: 04', 'link_state': 0}, 48: {'mac': 'b6:3e: 6d:63:c6: 01', 'link_state': 0}, 49: {'mac': '42:24: 89:2b:b4: 2e', 'link_state': 0}, 50: {'mac': 'ae:9d: ad:22:37: 76', 'link_state': 0}, 51: {'mac': 'b2:f0: 4c:15:6d: 1d', 'link_state': 0}, 52: {'mac': '42:07: bc:96:28: 65', 'link_state': 0}, 53: {'mac': '22:d5: 9e:d1:40: fd', 'link_state': 0}, 54: {'mac': 'c6:10: 07:fd:87: f6', 'link_state': 0}, 55: {'mac': '5a:5b: f1:d6:46: 14', 'link_state': 0}, 56: {'mac': 'b2:55: f8:90:0a: 7a', 'link_state': 0}, 57: {'mac': 'ba:37: 61:76:4d: 1a', 'link_state': 0}, 58: {'mac': 'de:4e: cc:df:a8: 6c', 'link_state': 0}, 59: {'mac': '7a:cb: 25:c4:07: 7a', 'link_state': 0}, 60: {'mac': 'f2:02: 5a:cd:88: 7b', 'link_state': 0}, 61: {'mac': '72:48: 17:f3:f7: 80', 'link_state': 0}, 62: {'mac': '62:a3: 8d:d0:04: 3e', 'link_state': 0}}
Python 3.8.10 (default, Jun 2 2021, 10:49:15)
[GCC 9.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from neutron.
>>> ip_lib.
{0: {'mac': 'e6:f8: