From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id B9D3545BB6; Wed, 23 Oct 2024 22:29:43 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 566C740261; Wed, 23 Oct 2024 22:29:43 +0200 (CEST) Received: from mx0a-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by mails.dpdk.org (Postfix) with ESMTP id 0B7F440144 for ; Wed, 23 Oct 2024 22:29:41 +0200 (CEST) Received: from pps.filterd (m0431384.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 49NASkRx002073; Wed, 23 Oct 2024 13:29:41 -0700 Received: from nam12-dm6-obe.outbound.protection.outlook.com (mail-dm6nam12lp2170.outbound.protection.outlook.com [104.47.59.170]) by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 42eydy9dph-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 23 Oct 2024 13:29:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=sYVeqPcJD7o0G9sQ6ZjE/HBZlrv3ZSmnJOdgTJLjJUmP5XoVTbmiRf5v2tLGdfpoZFGkzcKFoW83NaT+a2M7EF470D/T/6/SolIrnoAnbbG2klJ9TlSA//vjDImunUl7xJfdBo895s8wUDA9wDnrbh8jWOfB857mi31q1gTOnfxiXRpgFQpc2CRAv7av3DzaFA9aBQAGob/axt3wcxttxxORtOfLgyY0SucDFQFqTR90+uSki8oHfTEXdBITZVVt41Fy/NBI+p4cQEBNJwUjZ2QJG8QdnLJ/sZ2lIO6vYw+OVHLl1UVtsB/0ikjTWkTSqawVp2fwFB9Ke8GnTQ+vFg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=UJvGeL6i4x5UgPZRA6vKbvOnTSlJb9XN665qIsJyQkE=; b=hbobdW4EOHKfgWblBGJ21tUb+78Dz4r0WKTdWSIqgpgMA02qnlV0vQzYqJSOLdyCeTfKgtSa2prOVHrFcJ7lcMaz+u8cpIuWW5rPopG9CE2fo0SJTvgRsfvpf8f0O1MpmcIiN6U7OOTcWpHWDXTHUlXjX4JuWW5McAXt+W4FOKSGbsTY8y6iLzRpGxawQ87UGSfKpYUDhYUpqvH4BXFFhA2GRRkWSqQPCi8CbcaXiCe0dGWGlOTb0v2ErKkkzItMN2JYexfaWSRDJRz0toQnu/ejtU7c77kmmAyQ+kS6nMbaWTyf8w9u/nMWLt83DAzC0KKII9IqmCyyqtp2ERD15w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UJvGeL6i4x5UgPZRA6vKbvOnTSlJb9XN665qIsJyQkE=; b=i3+EztQgtgPOffT6CRTtx+r+iwFaSSJ4KscGRmFAxEK2idrLa0MTZgT9YrTrd7j5UrqpS86jFVJ18fNyJDDhvZnuUgwLfzXVmyEYo3Qg6IqiKJKlrTUtgy5MfIH/pGS96W9XMy1HFxbyItrhKpqEfHOcCvBSKgnRhQqD92CcqbY= Received: from PH0PR18MB4750.namprd18.prod.outlook.com (2603:10b6:510:cd::11) by BY1PR18MB6043.namprd18.prod.outlook.com (2603:10b6:a03:4ad::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8093.16; Wed, 23 Oct 2024 20:29:32 +0000 Received: from PH0PR18MB4750.namprd18.prod.outlook.com ([fe80::e358:a044:26b4:4405]) by PH0PR18MB4750.namprd18.prod.outlook.com ([fe80::e358:a044:26b4:4405%5]) with mapi id 15.20.8069.024; Wed, 23 Oct 2024 20:29:32 +0000 From: Hanumanth Reddy Pothula To: Stephen Hemminger CC: Jerin Jacob , "dev@dpdk.org" , Harman Kalra Subject: RE: [EXTERNAL] Re: [PATCH v2 1/1] event/octeontx: resolve possible integer overflow Thread-Topic: [EXTERNAL] Re: [PATCH v2 1/1] event/octeontx: resolve possible integer overflow Thread-Index: AQHbJRtqjjpr+dcXTUOO9A2mDAOs57KUg4uAgABGkGA= Date: Wed, 23 Oct 2024 20:29:32 +0000 Message-ID: References: <20241018075903.53757-1-hpothula@marvell.com> <20241023071546.865609-1-hpothula@marvell.com> <20241023091613.545d03d7@hermes.local> In-Reply-To: <20241023091613.545d03d7@hermes.local> Accept-Language: en-IN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PH0PR18MB4750:EE_|BY1PR18MB6043:EE_ x-ms-office365-filtering-correlation-id: 80904060-923f-4977-cc81-08dcf3a16704 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|366016|1800799024|376014|8096899003|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?Y0RsWUdpWWpiUnB5OTZXa1h0OTB2Qk9ZTUJGQWlldVZuRUdpNjhSS0RuZ05N?= =?utf-8?B?TmpWQTYxbXBieWN6dEs1TG8rRFNWNmt6OHlka0Z3dE5SbkZCVjJyT0FvT0dn?= =?utf-8?B?ZGV2cDhHMGorOVZHZXhZRkFCNjY1NTB2NUw5TnZkVWhkalVHNEUzNDU4RW1x?= =?utf-8?B?dVd3U0wxYVBLV0RXVzZsQ0oyeFBJbVRBdXlyVnJzQkdzNEU2clg1QjBGR1Fo?= =?utf-8?B?Sm8wWk5uY2pMRHZmVnlib3l4U1RELzRUcGk2Wm12ektwQUg5Qkd1QWFySTVE?= =?utf-8?B?QnpWalhoRUJGbDZJdE1wV0kvbWEzS2QyUFc2SHhUZ0gzUGd2M1lhcTFxTDR6?= =?utf-8?B?RDhETU5GeGZnMWdjbzJwQnhleDBUdFBZdi9HV2J5dnN1WWM4V0tIUFg4allV?= =?utf-8?B?aHV0V3BQelV2dDRqWm5JMDVBTWFudlFpRDczT29tN01KT2RvZjJ0YjExZVpM?= =?utf-8?B?TzNvYk4rMHNNZjJNV21HT0ZoRVFRM0hRNHpDVHVsZ05CeWJUNHZiVndiNk42?= =?utf-8?B?YUNlT1B0UmRvcHZFaE9CUk91b0ZPbmhlNXpxWXo4cUx6aG1hcGQvWGphMFpH?= =?utf-8?B?T0RpVFFYeUlKWmRyaEJEeEo4UkJDcWJpWTJraGgrbFhwK2hDbDdYT01ENHNO?= =?utf-8?B?eXBIb2drVGd0NjJta1hHcHpzd3hnckRKdy8rUU9UMko5bGtQcmxZWVE4SVYy?= =?utf-8?B?WGNVRkdZOWNMdnJmVnRvUTdpQmsvN2pNem5YS1FNUHRTSUFIaE1EQWRvcW9u?= =?utf-8?B?N2psOStsSTdGN2sySnJDUXJ3MG1teThWMXR1amswYW1IR0x5S1hscnU4bUZt?= =?utf-8?B?bURvck1zQVp6V01JL215MFg5UXNkZDBtcVBZRDR1bjkzMUpCd1pvMUZKYnJa?= =?utf-8?B?R3M4c3RGaFdnNFRCNTZCUnFIWkJlem4rNC9Uc2N0WGxyYXdrUUM5ZXBkSXlF?= =?utf-8?B?ZC94cEkxaTNKOTNvbkswZFZ3TGhNS25JUTRFVklia3FUSUFFenRoS1ZvTURw?= =?utf-8?B?NGtDaVhUWjNyb2Q2NzlscVJzRm1NUzEzWFdpYXVzM0UzTGZ5NDNXcTFBcjhZ?= =?utf-8?B?eU9RMi9HWDMwYS9zbWdLL0gyb1VTZFFsQ2dPNnhvK0Q1QWdROTNxbDRXc1V1?= =?utf-8?B?YVRnSlVlSUdWSDNOYmF2eWJ0RktJbXQ2dWtML0dRUU5IU2xvSzlpTmI5RUxK?= =?utf-8?B?eUhoVzNOU2hhb3BWNDI2TzVlSG1aUDZNN1RaMlJtWGV0Zm1FVTV1dWFYWmlq?= =?utf-8?B?ZjVKckFWVDlKODh0bFNVbzNIQ3FFVEpWazM3SE5ZR1pWejZ6SUlGL0RHOG1y?= =?utf-8?B?RGt1UVZHaHRwS1phZnp5dXJuem1lbUwzUzVueGkxR1RWZ1NxR1BYdFdjWGZ1?= =?utf-8?B?cmxlVzBRYlppZkhaYWdDdEswSEtmWVJRNFI4RGFrK2dGRkVVK3ZsOGdUTGs5?= =?utf-8?B?WmtTOXB4Syt2Ukh1Qyt0dm9RTmxoWit3enpwZnVnSVVWb2dIYmlJcGppa2xT?= =?utf-8?B?aTErK3hUNlJwWlNqU0FWbzVuZ0hqOTVPSjBGYWFQdXRWeTA0bjB0aDh5dCs5?= =?utf-8?B?OTFxZTNlRUpaVnB3OFdrSnBCUHNIWEZpcnVPVGplWkYxMk44MkR5YTllbXRH?= =?utf-8?B?cFBiQUpnOEw5ZEo2ekNEWEZURU1yWWRRT2tDUXVjU011dllZaDNIY0g5bDdV?= =?utf-8?B?eVRoL0QzVFRrSUNOMUN6UGI1S05CTnlRN1hGUE9tS05HWVowYnUxTEI2Q0pP?= =?utf-8?B?OFN0cGtsUUNiQ3Bnd0U5U2MwTEVvWFhLdkY5ZHY0WmxXV0VuUmZzQVlsaWtR?= =?utf-8?Q?mypV/IykfeVdiQiG3Q+4p43oAghYv0mYqrxLA=3D?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PH0PR18MB4750.namprd18.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(1800799024)(376014)(8096899003)(38070700018); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?R1FzRGZHdWFMT1ZIRUtmMmgwakdVY3NrbUp6TlpEdFdHNHZzNXlTaWJHdTdY?= =?utf-8?B?eGNlYXpJMDRCTUIySlljVG9ZV205QTlsWHI3RVUvQ1NtZElGR1grQTluZG1y?= =?utf-8?B?VDJNZSs5NCtlKzRDbmxJaTRkR0dOUGRyK2krSVhham03OHlKVVRaVjNnV0xm?= =?utf-8?B?WEpMa3djZUdwMEs5ZWFTL2dxUjJRV3l5eHA0NmYrbGNWcndyQnpFRXlrUXov?= =?utf-8?B?T2s2bUVJMkhKWkdlV1ltSythTU8wZG9Fem83TkE1dDR2SWV6b3FLSFVHVE4w?= =?utf-8?B?dEVKUnZkYmdYQ3ZtbzUvQXJ5T1hSVTVjcXk5aHFGQnRKQTFoRUVhWERPeVVL?= =?utf-8?B?c1ozUjFOUTFlR3ZMSzlNd1N2cjVuOVRnN0FiZXdydkZRMnFkOE5hdGc1R3Fm?= =?utf-8?B?WGNCRU96dkRyaXRVNFo5ejZOMlJmUGIxSk00ZTh0eFc5bE9KdHpRV3poSFdj?= =?utf-8?B?THZzenpyRjlXQkwrUUwzaTdpdjN2ZVd6TXlUb0d6TXRXRzlkdDBXcWErNzE1?= =?utf-8?B?RHh3RkJIQkc1VDlYMWh5alI1alhudmI4ZU1LdjRzeGxEKzkzdHRkNzFTbTMz?= =?utf-8?B?OEU0L1FtUGJIc0hIbUxSdVhaZ29MbUhqSXhMODBqWElYb1h1Mm1TMzU0WTRw?= =?utf-8?B?RzdJT1pWMzF3YTh1bjRrc3hjRTB1dHd6UkYrVzZjaE5jbEhFUWRIZDE4bXBR?= =?utf-8?B?T3F2aWpvakMveUl3bmRxRmduVFIvU2s4eUViN1lkbllqdGgvM3VlaG9nYmd0?= =?utf-8?B?RVFOL0VLNjZiNDlYMUhXWG9aREJ0SFZkWCs0VEdHY1o4bjJSTnppemxMRWdJ?= =?utf-8?B?d0gzaWRQMEhZaG91YmYxdFBUQm00U2JKb2grNEhOQm0yMEI5d3NkZDFBVUVw?= =?utf-8?B?cytkS0dXczVCUUFhVHozZnNGRERMTmxtZXhvdGlqL21hRStRL0NHWXdKQkpT?= =?utf-8?B?TmhGWDZLWDRzZGxOK3c1WCtUeFkzN3MrenByMFJ3K210aTlUai9RdVMrUmFV?= =?utf-8?B?NGUxaW81UDZZcGJVWW4rNVNuZTUvUEZOMjU3Wm5aY3Btakt1aFNCQkt6YkNh?= =?utf-8?B?amM1Z3BVdDAzcGZBbkxjSDR3K3NBS1RGUTJiRlloWjJRY2poYnVzbEJBOXI2?= =?utf-8?B?c3F5WURERVhaR1NvL3htY2VvVWcyallhM2xMQTczRm9LQk5rNzM2ZWZNK2pV?= =?utf-8?B?Qnh0MXRWRm11VFhrWWFkQ0dMVDZhY1ozV1VIOS96TEJLVU9VcVowRm56KzJm?= =?utf-8?B?eFpJcTEzVFdITzJFcHpLbTBHM1o2dFpzUnF2aGVFeXhSZXhNeE5yV3U4RVNj?= =?utf-8?B?Nkp4ZzhYODhSK2l6SEhkVS9OWUZZM0s1S0xOZXRlZldVU21sVkRRejlIM1Qr?= =?utf-8?B?ZnFYTitmNjFGTEdYbTkrRkhtS3RxK3ZpUzc2TnorTUFRU3BIMlRid0VWeFI3?= =?utf-8?B?TUlhQXpDOC9ob0Mzc1BJUnA0TThHRzNVZlJRZElGQVFxMnZENSszMXlodjBU?= =?utf-8?B?VERPWnFDd0NNSjBEQ0RTdVZLSzJkeGY5QlpUT0pLOHdOOUxsaG5EdzdsWVBr?= =?utf-8?B?eEZ4ME5iZVdITzFMQUtUK1VwS3llQWJqdk56WGZFK2VYUWk0bjYyd3d4NkVD?= =?utf-8?B?UTVVdm5IcmhUV3ZyY2pYT2Nvejg4MkFrOEZ2aWp3cHRFZDNOeEZxeTlaMEVI?= =?utf-8?B?S0RCei8xVGhLMml6TlQvK2FrOGMrcS9BRk11NjNKVDBrcDRUQ2VJOUFJRjcv?= =?utf-8?B?Zjk0OGRPNEh3bkg5elFFWDRjY3dSWTFaS1V2VGVrZDdrbHdIK0laZnVrVFBU?= =?utf-8?B?aE40b1g4NVF6UndBYmthUU5jUFdNaDdHZWNwS2prR09nZnlOQ1FTN3JlQ29C?= =?utf-8?B?VUJMdDRjd1JIM2tiNkMxWU5aa0w3L2c2VnJnQ0hQTjVSSWZuY2hOYVhwTlZn?= =?utf-8?B?SDkrWExJZm5pVVNyV09DUHlPWkN6RG5ZeVhkVWZlZmhKUnBlQ241L2xvUWdQ?= =?utf-8?B?WHVydko4MnE5Q2lBOHpSVk8zUExIYXdVK1BOdHNTR29OYWNmVFA4SGdCQVJP?= =?utf-8?B?anRET3JSbEdrb3lGb05QenJlS3pBM0NNdlZ5NTZ5RWlVNTdyTFoxdFlSa0lR?= =?utf-8?Q?4ojwFT9eROinZocFk74BTkLWw?= Content-Type: multipart/alternative; boundary="_000_PH0PR18MB475099C23E19F0C79090AC4ACB4D2PH0PR18MB4750namp_" MIME-Version: 1.0 X-OriginatorOrg: marvell.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH0PR18MB4750.namprd18.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 80904060-923f-4977-cc81-08dcf3a16704 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Oct 2024 20:29:32.3053 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: wWDyDvwi7oJbcsJktYoFLxO0S/Per+JmZAb9nNZyJEF3pMKujNNCaRFQ++xBcJ88CSsrmJb8ArR5+RzFyOtTkw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR18MB6043 X-Proofpoint-GUID: 5XGQnnvMSc7b8xkpryxoSphdMPeAAR_y X-Proofpoint-ORIG-GUID: 5XGQnnvMSc7b8xkpryxoSphdMPeAAR_y X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.687,Hydra:6.0.235,FMLib:17.0.607.475 definitions=2020-10-13_15,2020-10-13_02,2020-04-07_01 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org --_000_PH0PR18MB475099C23E19F0C79090AC4ACB4D2PH0PR18MB4750namp_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable From: Stephen Hemminger Sent: Wednesday, October 23, 2024 9:46 PM To: Hanumanth Reddy Pothula Cc: Jerin Jacob ; dev@dpdk.org; Harman Kalra Subject: [EXTERNAL] Re: [PATCH v2 1/1] event/octeontx: resolve possible int= eger overflow On Wed, 23 Oct 2024 12:=E2=80=8A45:=E2=80=8A46 +0530 Hanumanth Pothula wrote: > static int > -ssovf_parsekv(c= onst char *key __rte_unused, const char *value, void *opaque) > +ssovf_pars= ekv(const char *key, const char *value, On Wed, 23 Oct 2024 12:45:46 +0530 Hanumanth Pothula > wrote: > static int > -ssovf_parsekv(const char *key __rte_unused, const char *value, void *opa= que) > +ssovf_parsekv(const char *key, const char *value, void *opaque) > { > - int *flag =3D opaque; > - *flag =3D !!atoi(value); > + uint8_t *flag =3D opaque; > + uint64_t v; > + char *end; > + > + errno =3D 0; > + v =3D (uint8_t)strtoul(value, &end, 0); Cast will cause truncation of large values. Maybe: v =3D strtoul(value, &end, 0); if (errno !=3D 0 || value =3D=3D end || *end !=3D '\0' || v >= UINT8_MAX) { ... Thanks for the review/comment. Here, the value can only be =E2=80=980=E2=80=99 or =E2=80=981=E2=80=99, so = truncation won=E2=80=99t be an issue. > + if ((errno !=3D 0) || (value =3D=3D end) || *end !=3D '\0') { > + ssovf_log_err("invalid %s value %s", key, value); > + return -EINVAL; > + } > + > + *flag =3D !!v; > return 0; > } --_000_PH0PR18MB475099C23E19F0C79090AC4ACB4D2PH0PR18MB4750namp_ Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable

 

 

From:= Stephen Hemminger <stephen@networkplum= ber.org>
Sent: Wednesday, October 23, 2024 9:46 PM
To: Hanumanth Reddy Pothula <hpothula@marvell.com>
Cc: Jerin Jacob <jerinj@marvell.com>; dev@dpdk.org; Harman Kal= ra <hkalra@marvell.com>
Subject: [EXTERNAL] Re: [PATCH v2 1/1] event/octeontx: resolve possi= ble integer overflow

 

On Wed, 23 Oct 2024 12:=E2=80=8A45:=E2=80=8A46 = +0530 Hanumanth Pothula <hpothula@=E2=80=8Amarvell.=E2=80=8Acom> wrot= e: > static int > -ssovf_parsekv(const char *key __rte_unused, const = char *value, void *opaque) > +ssovf_parsekv(const char *key, const char *value,=

On Wed, 23 Oct 2024 12:45:46 +0530<=
/o:p>
Hanumanth Pothula <hpothula@=
marvell.com> wrote:
 
>  static int
> -ssovf_parsekv(const char *key __rte_unused, const char *value, vo=
id *opaque)
> +ssovf_parsekv(const char *key, const char *value, void *opaque)
>  {
> -         int *flag =3D op=
aque;
> -         *flag =3D !!atoi=
(value);
> +        uint8_t *flag =3D opaq=
ue;
> +        uint64_t v;=
> +        char *end;<=
/span>
> +
> +        errno =3D 0;
> +        v =3D (uint8_t)strtoul=
(value, &end, 0);
 
Cast will cause truncation of large values.
 
Maybe:
            =
;  v =3D strtoul(value, &end, 0);
            =
;  if (errno !=3D 0 || value =3D=3D end || *end !=3D '\0' || v > UI=
NT8_MAX) {
...
 
Thanks for the review/comment.
Here, the value can only be =E2=80=98= 0=E2=80=99 or =E2=80=981=E2=80=99, so truncation won=E2=80=99t be an issue.=
 
 
> +        if ((errno !=3D 0) || =
(value =3D=3D end) || *end !=3D '\0') {
> +           =
;            ssovf_l=
og_err("invalid %s value %s", key, value);
> +           =
;            return =
-EINVAL;
> +        }
> +
> +        *flag =3D !!v;
>           return 0;
>  }
--_000_PH0PR18MB475099C23E19F0C79090AC4ACB4D2PH0PR18MB4750namp_--