From adbf96f23f5bba382f7679814d6774e091af8a6c Mon Sep 17 00:00:00 2001 From: Jarrod Johnson Date: Fri, 2 Dec 2022 11:24:00 -0500 Subject: [PATCH] Use bytearray in PXE processing Python 2 and 3 are inconsistent with how they treat memoryview, but they are consistent on bytearray treatment Since rqv is merely a cheaply sliceable view of rq, use rq directly for functions where the difference between 2 and 3 would matter. --- confluent_server/confluent/discovery/protocols/pxe.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/confluent_server/confluent/discovery/protocols/pxe.py b/confluent_server/confluent/discovery/protocols/pxe.py index ef06e53e..baa73c1b 100644 --- a/confluent_server/confluent/discovery/protocols/pxe.py +++ b/confluent_server/confluent/discovery/protocols/pxe.py @@ -314,9 +314,9 @@ def proxydhcp(handler, nodeguess): optidx = rqv.tobytes().index(b'\x63\x82\x53\x63') + 4 except ValueError: continue - hwlen = rqv[2] - opts, disco = opts_to_dict(rqv, optidx, 3) - disco['hwaddr'] = ':'.join(['{0:02x}'.format(x) for x in rqv[28:28+hwlen]]) + hwlen = rq[2] + opts, disco = opts_to_dict(rq, optidx, 3) + disco['hwaddr'] = ':'.join(['{0:02x}'.format(x) for x in rq[28:28+hwlen]]) node = None if disco.get('hwaddr', None) in macmap: node = macmap[disco['hwaddr']]