From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id B4DFD94101E for ; Wed, 2 Aug 2023 03:09:57 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=Gs+LJEtMU0gnJ6Gff9N2Foi0HhssfV2EVJVlKnOZ2H0=; c=relaxed/simple; d=groups.io; h=From:To:Cc:References:In-Reply-To:Subject:Date:Message-ID:MIME-Version:Thread-Index:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Type:Content-Language; s=20140610; t=1690945796; v=1; b=IDghkm4BuF15SE+jdTQIRFtFATV51QeRNKYrkClv4GM5fZ6XsRFcKeiI4rJdlekgtijOH9yr oW8fIxjJfxlFG9qKcXcS/jZ46w0BTFbtxCgVK08+qR89qK8m0e3lrrHFJVEueor0IipRBDB1clI gtidAnHmxuAVhJWFccQqBCuY= X-Received: by 127.0.0.2 with SMTP id LMraYY7687511xYWj6aj5fQO; Tue, 01 Aug 2023 20:09:56 -0700 X-Received: from zrleap.intel-email.com (zrleap.intel-email.com [114.80.218.36]) by mx.groups.io with SMTP id smtpd.web11.6586.1690945794471938335 for ; Tue, 01 Aug 2023 20:09:55 -0700 X-Received: from zrleap.intel-email.com (localhost [127.0.0.1]) by zrleap.intel-email.com (Postfix) with ESMTP id 8CF3FA32DFDE for ; Wed, 2 Aug 2023 11:09:51 +0800 (CST) X-Received: from localhost (localhost [127.0.0.1]) by zrleap.intel-email.com (Postfix) with ESMTP id 7AD07A32DFD2 for ; Wed, 2 Aug 2023 11:09:51 +0800 (CST) X-Received: from mail.byosoft.com.cn (mail.byosoft.com.cn [58.240.74.242]) by zrleap.intel-email.com (Postfix) with SMTP id 93C69A32DFC2 for ; Wed, 2 Aug 2023 11:09:46 +0800 (CST) X-Received: from DESKTOPS6D0PVI ([58.246.60.130]) (envelope-sender ) by 192.168.6.13 with ESMTP for ; Wed, 02 Aug 2023 11:09:40 +0800 X-WM-Sender: gaoliming@byosoft.com.cn X-Originating-IP: 58.246.60.130 X-WM-AuthFlag: YES X-WM-AuthUser: gaoliming@byosoft.com.cn From: "gaoliming via groups.io" To: "'Joey Vagedes'" , "'Kinney, Michael D'" Cc: , "'Rebecca Cran'" , "'Feng, Bob C'" , "'Chen, Christine'" References: <20230627162722.1030-1-joey.vagedes@gmail.com> <20230627162722.1030-2-joey.vagedes@gmail.com> In-Reply-To: Subject: =?UTF-8?B?W2VkazItZGV2ZWxdIOWbnuWkjTogW1BBVENIIHYxIDEvMV0gQmFzZVRvb2xzOiBCaW5Ub1BjZDogUmVzb2x2ZSB4ZHJsaWIgZGVwcmVjYXRpb24=?= Date: Wed, 2 Aug 2023 11:09:41 +0800 Message-ID: <001c01d9c4ee$c7fd3120$57f79360$@byosoft.com.cn> MIME-Version: 1.0 Thread-Index: AQFkVg3WzMSyzHqlThL/gDkNZl9FPAHwPf7MAuiF8qwDStf2sbCAFGlA Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,gaoliming@byosoft.com.cn List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: 8nbVdToiX1qfeFPQwMvBSNkRx7686176AA= Content-Type: multipart/alternative; boundary="----=_NextPart_000_001D_01D9C531.D6252C10" Content-Language: zh-cn X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=IDghkm4B; dmarc=none; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io ------=_NextPart_000_001D_01D9C531.D6252C10 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Reviewed-by: Liming Gao I will merge it today.= =20 =20 Thanks Liming =E5=8F=91=E4=BB=B6=E4=BA=BA: Joey Vagedes =20 =E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4: 2023=E5=B9=B47=E6=9C=8813=E6=97=A5 23= :27 =E6=94=B6=E4=BB=B6=E4=BA=BA: Kinney, Michael D =E6=8A=84=E9=80=81: devel@edk2.groups.io; Rebecca Cran ;= Gao, Liming ; Feng, Bob C = ; Chen, Christine =E4=B8=BB=E9=A2=98: Re: [PATCH v1 1/1] BaseTools: BinToPcd: Resolve xdrlib = deprecation =20 Thank you for the review Michael. @Rebecca Cran = , @Liming Gao have you had time to take = a look at this? It is a fairly simple change, following the same logic as x= drlib with a few modifications to use some newer python functionality. =20 Thanks, Joey =20 On Tue, Jun 27, 2023 at 10:21=E2=80=AFAM Kinney, Michael D > wrote: Thank you for fixing this. Reviewed-by: Michael D Kinney > > -----Original Message----- > From: Joey Vagedes > > Sent: Tuesday, June 27, 2023 9:27 AM > To: devel@edk2.groups.io =20 > Cc: Rebecca Cran >; Gao, Li= ming > >; Feng, Bob = C >; Chen, > Christine >; Kinney, = Michael D > > > Subject: [PATCH v1 1/1] BaseTools: BinToPcd: Resolve xdrlib deprecation >=20 > Removes the dependency on xdrlib and replaces it with custom logic to > pack a per the xdr requirements. Necessary as xdrlib is being deprecated > in python 3.13. >=20 > Cc: Rebecca Cran > > Cc: Liming Gao > > Cc: Bob Feng > > Cc: Yuwei Chen > > Cc: Michael D Kinney > Signed-off-by: Joey Vagedes > > --- > BaseTools/Scripts/BinToPcd.py | 19 +++++++++++++++---- > 1 file changed, 15 insertions(+), 4 deletions(-) >=20 > diff --git a/BaseTools/Scripts/BinToPcd.py b/BaseTools/Scripts/BinToPcd.p= y > index 3bc557b8412c..460c08b7f7cd 100644 > --- a/BaseTools/Scripts/BinToPcd.py > +++ b/BaseTools/Scripts/BinToPcd.py > @@ -14,6 +14,9 @@ import sys > import argparse >=20 > import re >=20 > import xdrlib >=20 > +import io >=20 > +import struct >=20 > +import math >=20 >=20 >=20 > # >=20 > # Globals for help information >=20 > @@ -46,16 +49,24 @@ if __name__ =3D=3D '__main__': > raise argparse.ArgumentTypeError (Message) >=20 > return Argument >=20 >=20 >=20 > + def XdrPackBuffer (buffer): >=20 > + packed_bytes =3D io.BytesIO() >=20 > + for unpacked_bytes in buffer: >=20 > + n =3D len(unpacked_bytes) >=20 > + packed_bytes.write(struct.pack('>L',n)) >=20 > + data =3D unpacked_bytes[:n] >=20 > + n =3D math.ceil(n/4)*4 >=20 > + data =3D data + (n - len(data)) * b'\0' >=20 > + packed_bytes.write(data) >=20 > + return packed_bytes.getvalue() >=20 > + >=20 > def ByteArray (Buffer, Xdr =3D False): >=20 > if Xdr: >=20 > # >=20 > # If Xdr flag is set then encode data using the Variable- > Length Opaque >=20 > # Data format of RFC 4506 External Data Representation > Standard (XDR). >=20 > # >=20 > - XdrEncoder =3D xdrlib.Packer () >=20 > - for Item in Buffer: >=20 > - XdrEncoder.pack_bytes (Item) >=20 > - Buffer =3D bytearray (XdrEncoder.get_buffer ()) >=20 > + Buffer =3D bytearray (XdrPackBuffer (Buffer)) >=20 > else: >=20 > # >=20 > # If Xdr flag is not set, then concatenate all the data >=20 > -- > 2.41.0.windows.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#107439): https://edk2.groups.io/g/devel/message/107439 Mute This Topic: https://groups.io/mt/100498650/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- ------=_NextPart_000_001D_01D9C531.D6252C10 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable

Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn> = =C2=A0I will merge it today.

<= o:p> 

Thanks<= /p>

Liming

=

=E5=8F=91=E4=BB=B6=E4=BA=BA:= Joey Vagedes <joey.vagedes@gmail.com>
=E5=8F=91=E9=80=81= =E6=97=B6=E9=97=B4: 2023=E5=B9=B47=E6=9C=8813=E6=97=A5 23:27
=E6=94=B6=E4=BB=B6=E4=BA=BA: Kinney, Michael D <michael.d.kinney@int= el.com>
=E6=8A=84=E9=80=81: devel@edk2.groups.io; Rebecca Cran <rebecca@bsdio.com&= gt;; Gao, Liming <gaoliming@byosoft.com.cn>; Feng, Bob C <bob.c.fe= ng@intel.com>; Chen, Christine <yuwei.chen@intel.com>
=E4=B8=BB=E9=A2=98: Re: [= PATCH v1 1/1] BaseTools: BinToPcd: Resolve xdrlib deprecation

&nb= sp;

Thank you = for the review Michael. @Rebecca = Cran@Liming Gao&= nbsp;have you had time to take a look at this? It is a fairly simple change= , following the same logic as xdrlib with a few modifications to use some n= ewer python functionality.

<= span lang=3DEN-US> 

Thanks,

Joey

 

On Tue, Jun 27, 2023 at 10:21=E2=80=AFAM Kinney, Michael D <michael.d.kinney@intel.com> wrote:

Thank you for fi= xing this.

Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>=

> -----Original Message-----
> From: Joey Vagedes <joey.vagedes@gmail.= com>
> Sent: Tuesday, June 27, 2023 9:27 AM
> To: devel@edk2.groups.io
> Cc: Rebecca Cran <
rebecca@bsdio.com>; Gao, Liming
> <gaoliming@byosoft.com.cn<= /a>>; Feng, Bob C <bob.c.feng@intel.com>; Chen,
> Christine <yuwei.chen@intel.com= >; Kinney, Michael D
> <michael.d.kinney@intel.com>
> Subject= : [PATCH v1 1/1] BaseTools: BinToPcd: Resolve xdrlib deprecation
> > Removes the dependency on xdrlib and replaces it with custom logic t= o
> pack a per the xdr requirements. Necessary as xdrlib is being dep= recated
> in python 3.13.
>
> Cc: Rebecca Cran <rebecca@bsdio.com>=
> Cc: Liming Gao <gaoliming@byosoft.com.cn>
> Cc: Bob Feng <bob.c.feng@intel.co= m>
> Cc: Yuwei Chen <yuwei.chen@intel.com>
> Cc: Michael D Kinn= ey <mich= ael.d.kinney@intel.com>
> Signed-off-by: Joey Vagedes <joeyvagedes@gmail.co= m>
> ---
>  BaseTools/Scripts/BinToPcd.py | 19 ++++= +++++++++++----
>  1 file changed, 15 insertions(+), 4 deletions= (-)
>
> diff --git a/BaseTools/Scripts/BinToPcd.py b/BaseTools= /Scripts/BinToPcd.py
> index 3bc557b8412c..460c08b7f7cd 100644
>= ; --- a/BaseTools/Scripts/BinToPcd.py
> +++ b/BaseTools/Scripts/BinTo= Pcd.py
> @@ -14,6 +14,9 @@ import sys
>  import argparse>
>  import re
>
>  import xdrlib
>= ;
> +import io
>
> +import struct
>
> +imp= ort math
>
>
>
>  #
>
>  = # Globals for help information
>
> @@ -46,16 +49,24 @@ if __na= me__ =3D=3D '__main__':
>            &n= bsp; raise argparse.ArgumentTypeError (Message)
>
>  &nbs= p;       return Argument
>
>
>
> = +    def XdrPackBuffer (buffer):
>
> +    =     packed_bytes =3D io.BytesIO()
>
> +   =     for unpacked_bytes in buffer:
>
> +   = ;         n =3D len(unpacked_bytes)
>
> +&= nbsp;           packed_bytes.write(struct.pack('&g= t;L',n))
>
> +            data = =3D unpacked_bytes[:n]
>
> +         =   n =3D math.ceil(n/4)*4
>
> +       = ;     data =3D data + (n - len(data)) * b'\0'
>
> +&= nbsp;           packed_bytes.write(data)
> <= br>> +        return packed_bytes.getvalue()
>=
> +
>
>      def ByteArray (Buffer, Xdr= =3D False):
>
>          if Xdr:
= >
>              #
> >              # If Xdr flag is set = then encode data using the Variable-
> Length Opaque
>
>=               # Data format of RFC 4506 = External Data Representation
> Standard (XDR).
>
> =             #
>
> -   = ;         XdrEncoder =3D xdrlib.Packer ()
>
&= gt; -            for Item in Buffer:
> =
> -                XdrEncode= r.pack_bytes (Item)
>
> -          &n= bsp; Buffer =3D bytearray (XdrEncoder.get_buffer ())
>
> +&nbs= p;           Buffer =3D bytearray (XdrPackBuffer (= Buffer))
>
>          else:
> <= br>>              #
>
>&= nbsp;             # If Xdr flag is not set, t= hen concatenate all the data
>
> --
> 2.41.0.windows.1

_._,_._,_

Groups.io Links:

=20 You receive all messages sent to this group. =20 =20

View/Reply Online (#107439) | =20 | Mute= This Topic | New Topic
Your Subscriptio= n | Contact Group Owner | Unsubscribe [rebecca@openfw.io]

_._,_._,_
------=_NextPart_000_001D_01D9C531.D6252C10--