[dts] [PATCH V2]dep/lldp: fix lldp for python3

Tu, Lijuan lijuan.tu at intel.com
Thu Jan 16 09:58:26 CET 2020


applied

> -----Original Message-----
> From: dts [mailto:dts-bounces at dpdk.org] On Behalf Of Xiao Qimai
> Sent: Thursday, January 16, 2020 4:09 PM
> To: dts at dpdk.org
> Cc: Xiao, QimaiX <qimaix.xiao at 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 at 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 at 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



More information about the dts mailing list