* [dts] [PATCH V2]dep/lldp: fix lldp for python3
@ 2020-01-16 8:11 Xiao Qimai
0 siblings, 0 replies; 3+ messages in thread
From: Xiao Qimai @ 2020-01-16 8:11 UTC (permalink / raw)
To: dts; +Cc: Xiao Qimai
python3 will not allow concat str to bytes
Signed-off-by: Xiao Qimai <qimaix.xiao@intel.com>
---
dep/lldp.py | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/dep/lldp.py b/dep/lldp.py
index 9792e05..faa3b4d 100644
--- a/dep/lldp.py
+++ b/dep/lldp.py
@@ -1,3 +1,4 @@
+#!/usr/bin/env python
## This file is part of Scapy
## See http://www.secdev.org/projects/scapy for more informations
## Copyright (C) Philippe Biondi <phil@secdev.org>
@@ -78,7 +79,7 @@ class LLDPGeneric(Packet):
def post_build(self, p, pay):
if self.length is None:
l = len(p) - 2
- p = chr((self.type << 1) ^ (l >> 8)) + chr(l & 0xff) + bytes.decode(p[2:], encoding='gbk')
+ p = chr((self.type << 1) ^ (l >> 8)).encode() + chr(l & 0xff).encode() + p[2:]
return p+pay
@@ -211,15 +212,13 @@ class LLDPManagementAddress(LLDPGeneric):
# TODO Remove redundant code. LLDPGeneric.post_build()
if self.length is None:
l = len(p) - 2
- p = chr((self.type << 1) ^ (l >> 8)) + chr(l & 0xff) + p[2:].decode()
+ p = chr((self.type << 1) ^ (l >> 8)).encode() + chr(l & 0xff).encode() + p[2:]
if self.addrlen is None:
addrlen = len(p) - 2 - 8 - len(self.oid) + 1
- if isinstance(p, type('abc')):
- p = p[:2]+ struct.pack("B", addrlen).decode() + p[3:]
- else:
- p = p[:2].decode() + struct.pack("B", addrlen).decode() + p[3:].decode()
- return bytes(p, encoding="utf-8")+pay
+ p = p[:2] + struct.pack("B", addrlen) + p[3:]
+
+ return p+pay
_LLDPDot1Subtype = {1: "Port VLAN Id"}
--
2.17.1
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [dts] [PATCH V2]dep/lldp: fix lldp for python3
2020-01-16 8:08 Xiao Qimai
@ 2020-01-16 8:58 ` Tu, Lijuan
0 siblings, 0 replies; 3+ messages in thread
From: Tu, Lijuan @ 2020-01-16 8:58 UTC (permalink / raw)
To: Xiao, QimaiX, dts; +Cc: Xiao, QimaiX
applied
> -----Original Message-----
> From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of Xiao Qimai
> Sent: Thursday, January 16, 2020 4:09 PM
> To: dts@dpdk.org
> Cc: Xiao, QimaiX <qimaix.xiao@intel.com>
> Subject: [dts] [PATCH V2]dep/lldp: fix lldp for python3
>
> python3 will not allow concat str to bytes
>
> Signed-off-by: Xiao Qimai <qimaix.xiao@intel.com>
> ---
> dep/lldp.py | 13 ++++++-------
> 1 file changed, 6 insertions(+), 7 deletions(-)
>
> diff --git a/dep/lldp.py b/dep/lldp.py
> index 9792e05..faa3b4d 100644
> --- a/dep/lldp.py
> +++ b/dep/lldp.py
> @@ -1,3 +1,4 @@
> +#!/usr/bin/env python
> ## This file is part of Scapy
> ## See http://www.secdev.org/projects/scapy for more informations ##
> Copyright (C) Philippe Biondi <phil@secdev.org> @@ -78,7 +79,7 @@ class
> LLDPGeneric(Packet):
> def post_build(self, p, pay):
> if self.length is None:
> l = len(p) - 2
> - p = chr((self.type << 1) ^ (l >> 8)) + chr(l & 0xff) + bytes.decode(p[2:],
> encoding='gbk')
> + p = chr((self.type << 1) ^ (l >> 8)).encode() + chr(l &
> + 0xff).encode() + p[2:]
>
> return p+pay
>
> @@ -211,15 +212,13 @@ class LLDPManagementAddress(LLDPGeneric):
> # TODO Remove redundant code. LLDPGeneric.post_build()
> if self.length is None:
> l = len(p) - 2
> - p = chr((self.type << 1) ^ (l >> 8)) + chr(l & 0xff) + p[2:].decode()
> + p = chr((self.type << 1) ^ (l >> 8)).encode() + chr(l &
> + 0xff).encode() + p[2:]
>
> if self.addrlen is None:
> addrlen = len(p) - 2 - 8 - len(self.oid) + 1
> - if isinstance(p, type('abc')):
> - p = p[:2]+ struct.pack("B", addrlen).decode() + p[3:]
> - else:
> - p = p[:2].decode() + struct.pack("B", addrlen).decode() +
> p[3:].decode()
> - return bytes(p, encoding="utf-8")+pay
> + p = p[:2] + struct.pack("B", addrlen) + p[3:]
> +
> + return p+pay
>
>
> _LLDPDot1Subtype = {1: "Port VLAN Id"}
> --
> 2.17.1
^ permalink raw reply [flat|nested] 3+ messages in thread
* [dts] [PATCH V2]dep/lldp: fix lldp for python3
@ 2020-01-16 8:08 Xiao Qimai
2020-01-16 8:58 ` Tu, Lijuan
0 siblings, 1 reply; 3+ messages in thread
From: Xiao Qimai @ 2020-01-16 8:08 UTC (permalink / raw)
To: dts; +Cc: Xiao Qimai
python3 will not allow concat str to bytes
Signed-off-by: Xiao Qimai <qimaix.xiao@intel.com>
---
dep/lldp.py | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/dep/lldp.py b/dep/lldp.py
index 9792e05..faa3b4d 100644
--- a/dep/lldp.py
+++ b/dep/lldp.py
@@ -1,3 +1,4 @@
+#!/usr/bin/env python
## This file is part of Scapy
## See http://www.secdev.org/projects/scapy for more informations
## Copyright (C) Philippe Biondi <phil@secdev.org>
@@ -78,7 +79,7 @@ class LLDPGeneric(Packet):
def post_build(self, p, pay):
if self.length is None:
l = len(p) - 2
- p = chr((self.type << 1) ^ (l >> 8)) + chr(l & 0xff) + bytes.decode(p[2:], encoding='gbk')
+ p = chr((self.type << 1) ^ (l >> 8)).encode() + chr(l & 0xff).encode() + p[2:]
return p+pay
@@ -211,15 +212,13 @@ class LLDPManagementAddress(LLDPGeneric):
# TODO Remove redundant code. LLDPGeneric.post_build()
if self.length is None:
l = len(p) - 2
- p = chr((self.type << 1) ^ (l >> 8)) + chr(l & 0xff) + p[2:].decode()
+ p = chr((self.type << 1) ^ (l >> 8)).encode() + chr(l & 0xff).encode() + p[2:]
if self.addrlen is None:
addrlen = len(p) - 2 - 8 - len(self.oid) + 1
- if isinstance(p, type('abc')):
- p = p[:2]+ struct.pack("B", addrlen).decode() + p[3:]
- else:
- p = p[:2].decode() + struct.pack("B", addrlen).decode() + p[3:].decode()
- return bytes(p, encoding="utf-8")+pay
+ p = p[:2] + struct.pack("B", addrlen) + p[3:]
+
+ return p+pay
_LLDPDot1Subtype = {1: "Port VLAN Id"}
--
2.17.1
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-01-16 8:58 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-01-16 8:11 [dts] [PATCH V2]dep/lldp: fix lldp for python3 Xiao Qimai
-- strict thread matches above, loose matches on Subject: below --
2020-01-16 8:08 Xiao Qimai
2020-01-16 8:58 ` Tu, Lijuan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).