From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0051.outbound.protection.outlook.com [104.47.2.51]) by dpdk.org (Postfix) with ESMTP id 6BE741BA5B for ; Fri, 22 Jun 2018 12:01:00 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hF0mTFdZ6glDOl2fGHz2J3Cui/B+t3EbMPlYdZLQoKk=; b=lbK/V3YovIqjpUgEOR4HqMeyCXc7nn0zYFv1dejiKCGnX3sDNZKUvVT9rPUALbQQKlipNdlvrlQYn6513/uKY7qce3DbWJRKaYikGoEU+w8rZZh4qMp7Fpg5PesLePoKr0asPJH2IY43I5MjtZWs3Q0aav0o1gu8gEAnuGggeVQ= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=akhil.goyal@nxp.com; Received: from [10.232.134.144] (14.142.187.166) by HE1PR04MB1388.eurprd04.prod.outlook.com (2a01:111:e400:535b::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.863.19; Fri, 22 Jun 2018 10:00:57 +0000 To: "Ananyev, Konstantin" , "dev@dpdk.org" Cc: "Nicolau, Radu" References: <1528208163-31560-1-git-send-email-konstantin.ananyev@intel.com> <1528208163-31560-2-git-send-email-konstantin.ananyev@intel.com> <36d2a552-e043-7451-ed66-70d13f0f6fe6@nxp.com> <2601191342CEEE43887BDE71AB977258C0C4009C@irsmsx105.ger.corp.intel.com> From: Akhil Goyal Message-ID: <2ff9fe7a-3965-ca79-e5e3-9890cc6ce49d@nxp.com> Date: Fri, 22 Jun 2018 15:30:45 +0530 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 MIME-Version: 1.0 In-Reply-To: <2601191342CEEE43887BDE71AB977258C0C4009C@irsmsx105.ger.corp.intel.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: PN1PR01CA0104.INDPRD01.PROD.OUTLOOK.COM (2603:1096:c00::20) To HE1PR04MB1388.eurprd04.prod.outlook.com (2a01:111:e400:535b::18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 05f8ccea-a8a1-4f31-532e-08d5d8270d9b X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(5600026)(711020)(48565401081)(2017052603328)(7153060)(7193020); SRVR:HE1PR04MB1388; X-Microsoft-Exchange-Diagnostics: 1; HE1PR04MB1388; 3:bYWVXbxhAn8XYA3EmOsiRt5F7oOtVQqUtr8mv+ZuqXsGtZdelUXyTG6mOQBMPY5Ki+qAtO1pSjAWpKgyfjFaOq203MsUUP9ZjkPShz0Z51fu5UwlNQZvquMhSd9lcjbKTxvsnqhxjsYcyfnKaYXjKDs76ZOdICcDmdjNlf0atlgRa2YoUAlrFMKGBoCMy3MZzUOdllJ9GpxyLjKkeJH6+Mg585GHXpIDs4dZaDEowoc/ApSFhmuouECMXMHVrkDZ; 25:4fE3RvvaL1mm0uPuGtxzCqhoeyUBZ2++tTaZHyHY3D6NLXOiAZWpUcAqQCliZ51YGFLFNRzJuSwN1Qo73v9wMixeHdPTLEQH5Iig1zT0RpWpp5mZAWg0DpNZ/OZDLqakKcYkYYdsV+9o8Zj9/Uy/xZjCDjXpBFqCeDzQjvikHxuA6AHe2ESofJhrhZZ+7thN9O2bHd4uLMbp/cHweB/GFFW3jyA2hpTGA0ixYnLwqBxpUpmzhyh7j9BytTXEDmKIZKt5pgN1c++4fjtoFhnsMfPNkaE2K3ggryL1eca7Wy9W0MqEBwQ9e/t8Fbc74d8xevSZLE/v5KeqFslF97Bj5kHjNRA+sWcrQJFVik7DM4c=; 31:1cP4Kr5px8+d1PhZf7qfXZoGn9xGLMyHSgSAe1pV+lxf8j5zrMC5zG0lZUrB2/W3PuzMFixSUDf7DST3V9y1qxZNBptXGCiqysXhb63cEwF1+LfnhYJQgb0mbjHwL0X2Db1zfSzpgCt1CDjl/3YOB/P/OpL2kGZuPybdCTiJko5CASHj9VKnzeO51IC1RTT1bDC9bx83894QZD4Q9ZVTnZ04qTI6hQTXL3jXJ0zx1Xs= X-MS-TrafficTypeDiagnostic: HE1PR04MB1388: X-Microsoft-Exchange-Diagnostics: 1; HE1PR04MB1388; 20:TBdfVLP/RPXMhm8XTokwd/Zz/YRp5lhX9CbYXXZ/YativXO7UXP8NDxZdCSH3EZQPdaQCo1ewJ79599HFCkTOmcKT9+06oqumJggpdRFE3iyRit9u+qgyJOywwT5hmC/MNMdctnZr3X7fG6F111hsudkgzG308ScXzrUDayiPjm65wPgyDTQVKuo/qPAZz5FqprgZCYmp43E0ukYWuWisqRpfpxEryfj3aYW6oNAcxUhTmxDbEXpC7nWffajow/UCqSIYJTpE/SkWpYsJUpBEkvri+swBVERjSrs8+HKg8T6ZXK5shAYLYAwi7Doa73xYqaUpbJ6jIcQHrxLO20cszECEkxumgJA3FGLOiAZjr9701NcqYc/MsTtGnAOJc6WhhEc2oy3oqI2RUTpuMfugeXoeti5Ju3VfW2/o+QQmvAxXjBA3tGYd4rsPLxvFhQ6BC46UQ7/hdVjBGrzs+Eis63tWsHzPAiI7NX4kJUSGjEHBl/a23e6NASqtL6gvNim; 4:5IwxCQ/buNwAKGeInzQCdXKxVC+qg2bi7To/XkPQsWFZCbU9yUBr60PJRcyRonMBbaMS5HvZxU6hHN4ZyUUcQ7kIlbsz5wCGcAmBjjF+SZC84Et+quPR46OvRRgzLH1khpFFVXyeXZfMc7Ua50Y3ah1vplr9VpVF0gTawe65bwZDS/M6Sb/aMNH/Q7FsTCP+ou28HO2l8RV6z66c+rgbOyvLcIrxqcAXE1S+3NvHz2pDfh4TC2VwR/YVWf66ymDhcncPvgCshKQAngkadQOz8tQoUfEPvhs/WQSq0FT4XUxFlZ+1xjH9RVQVYiZdP/fmx2Kgch0cBHQSsGQeSPUo6i8XIHeVX+TxyhYITAZ6Nd0= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(228905959029699); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(3231254)(944501410)(52105095)(3002001)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123562045)(20161123558120)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(6072148)(201708071742011)(7699016); SRVR:HE1PR04MB1388; BCL:0; PCL:0; RULEID:; SRVR:HE1PR04MB1388; X-Forefront-PRVS: 071156160B X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6049001)(366004)(396003)(39860400002)(346002)(39380400002)(376002)(199004)(189003)(13464003)(6246003)(16526019)(77096007)(59450400001)(26005)(16576012)(53546011)(186003)(316002)(110136005)(58126008)(97736004)(2616005)(66066001)(956004)(446003)(6486002)(486006)(11346002)(6116002)(50466002)(2906002)(44832011)(476003)(386003)(31686004)(55236004)(64126003)(93886005)(76176011)(68736007)(478600001)(229853002)(23676004)(47776003)(6666003)(105586002)(106356001)(52146003)(2486003)(86362001)(4326008)(25786009)(3260700006)(81156014)(65826007)(305945005)(53936002)(2501003)(230700001)(67846002)(36756003)(5009440100003)(8676002)(7736002)(3846002)(31696002)(81166006)(5660300001)(65806001)(8936002)(65956001)(52116002)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR04MB1388; H:[10.232.134.144]; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtIRTFQUjA0TUIxMzg4OzIzOldBbklOdVVacGcwU2Ywd25yYVRLbnhPcWg0?= =?utf-8?B?Y2I5c1VLOTd0M1Jic0FSbVlyektyVkJrTTlKQk1wVUVXVTNpLzVtRDJ5OHZH?= =?utf-8?B?dmdsckJpRjlXcEp4SmVrbmp4K281VUdmaHBaKzdWR2Y1TUo1MTE0NDQ1QVFQ?= =?utf-8?B?bjRyNjgvTkkrbFY0Kys3YklxTXdhOUhIVWx0MXByUk03bnFDSnRZZ2dndndn?= =?utf-8?B?SmNNR01sa1E1VW1pR3lxbVlBbFE1cWp0Z3ZHSnRPcVc0QWNyQzhHdTc4cVNB?= =?utf-8?B?VDMzTW5ZN0lrVlNiWFFkUHVhdnZXZ3RheEtxeVVwZ3RYNFI5STg3MjYrTW5C?= =?utf-8?B?dGxqdnJyTzNxQ3F5Y0JVVzZscUdnSFFTeVViV0N5Si8rUnZHMVJZQloyL2JI?= =?utf-8?B?cVBldXg4U0lDS3dZQXZkVTZ3c0pLU0EvSmxUeWZkTzliMlB4bHd6dVAwcHo2?= =?utf-8?B?VTNhbExxQVY4bTdYWXRlb0VkUFdKQVowZDFlVmtlR3FXTCt6NldSWGtqM09I?= =?utf-8?B?WXJJSWpET0dUZEMvVi9BUzVEZHV0VW44YVpPQUkrQUlndUJoV2JkZ1BzcDl3?= =?utf-8?B?U2luM0t2OG9pTis2QVBGUGlYUlh3VktmaStldHZQay9VRW5Mb20rZGFyU0dm?= =?utf-8?B?YnVaOVZSRjNpaWVRVDkxZk5MaWtaaWpYQ3NRK252cFc1ZVlIL0xUWk50TlF6?= =?utf-8?B?TUlLb0pqUkxzd2RYb3VpcEh6Y1ZTZUM5alA2aEVUOWdaM3BKb3VtZTNBQ2Vz?= =?utf-8?B?Q0NhSVhUY25icXFVSUFrc0U3WngwK1Izak90NzVkOXd3NHdVaERZeG1yYVV6?= =?utf-8?B?TUI3MjBPY3NPdVo1dmFydGlzNFNLQmRMb0pEd0dTaU00Mm9mbWpQU2l0Z2ZE?= =?utf-8?B?MjBKNUhINEhPcHh3a1Zvc29hcldrOEdzeVhLRGExNkVRemNRNUdpL2NyVERi?= =?utf-8?B?VGZzejdSdTVua1YxaTB0YnQrZHBBMEcxZ1poM0VIa2FMa3JjaFVvVDNRd0RT?= =?utf-8?B?TGIxVU90Z3pBaUxNOXVZK2pKWFpIZ1A3NWVzd3gxOHlEak5SbU9Cdkw4UGZU?= =?utf-8?B?RVJWQll2a2MrVGF3OEI2QnUxMlNNei9KL2xGUnBSTTc2cVo3R0Ira3FHODlX?= =?utf-8?B?LzA5NEtOenJpMDcvVmlDcXgzd3U5MWZPeWo2bVlWdGQrN1Yya3lldjNmK0NS?= =?utf-8?B?eTRKVHJleVlqZkk1bGNmZzlsaTN5QytYUm45amtCbUNHVTF6emdkRE5DYlJj?= =?utf-8?B?S3piWEtHRjlRamw0bUNMZXVITCs0MC9UT1ptaTJlWlFiQU13WnhoNnVZK2tp?= =?utf-8?B?bkRBeDhWODRmQ0NaamFWcGtrenVNSyt4RjQ2SEdQVXVWVEMvR3FTV2RxaS9l?= =?utf-8?B?d044Wnd5a0lmeTFVT0FhTXJmUzByTFJpajBIcGlWRWhHSlcveG1BMitSVTZz?= =?utf-8?B?dHR2cjAzNUZ4K3hqOEFJcm9wUDRtaWFHR08wcG5Wc0RLRTJrRzZSemtDaHph?= =?utf-8?B?bE5LamNnd1ExUy8xNXgxemNZWHp1L01iRFJMZHN3QU4yczBzeUtDNzNvTEs3?= =?utf-8?B?MnJmVHVsekd3cVVYYTR2SXorZFlwMnN4c1J3ZjF4V0RSNVNaQmp2ME5VMEVR?= =?utf-8?B?dWNUZXdlZ1pVR2FkeC9wamp1aUNDbXFyVFVhSHdXVk44NUozeStKOVRtcGlk?= =?utf-8?B?cWlwRFIwTUE3elI2RVdRWE5UTjdrN3czeC9kaDh4OTVBSE1lcVJOajlLczBl?= =?utf-8?B?TkRPWFplZ0FqUVpZOGNxekJFcm9BbmdJVGVLWGltZnRVbWJkNDhPVGJFVktt?= =?utf-8?B?Z21wRWsySjE0cERxbGQwQnpURGY0NnRLQnlnQnNOa2x2WjBCOVV6MFFiYUI3?= =?utf-8?B?N3ZtY2pmMURhT3VvMldiOFRZamFCcFd5VG9odXUvQUNvMW04K3ltWnpxbmhx?= =?utf-8?B?OERiRmFZaEhOblNIYWFGTGxmYUhteURZaXhpS01xTkNvQVVxdXZVMmFHbGo0?= =?utf-8?B?UTFSYS9sMGJrSDBrd0VWaUhWbFlTMXdoeTRlV3plWTdjbExzTjVDV3VaRE1B?= =?utf-8?B?eVVnRFhNSmlvdU9TYjZyTnQrSTJhckZQWVhROER3Zng0UzRmTHdyVWIrd09F?= =?utf-8?B?eWJRMElCellsMWdqd2IwbjhvZDJyWDNDWlNRTmU1aVVmQ3lIOThTTjZ3dFFr?= =?utf-8?Q?+M46uspiac1J2as5x2fL8tS7oZdxQT7uVi0sEGUugg=3D?= X-Microsoft-Antispam-Message-Info: k5aViVSGM4fj8vrnou9OqFyzw4DZI0x/HJ+y4F9dvdB/AHgFlg+HO6gwCBTIC8uPPLukeB8BVLZRwsCvt0r/jH8ye3LlVdoZz6406T90Z047UXFxUSsr8giv9h7LxiXw2it/MkMNRwC+WC1GDKip30I6MkwunyfLGKf9z8WRlNSFH4O/nx2z/8/lVbPUm/42HDDe2VbpNGipW4lywKUy+CIGA6qFL0jROYimOJQ6CKhtDmW040+Zj8Aq54EXDYPlUDuA6XT9l6xr4xGk7M3VpduxlkeS8aaKD3k6ZlEgIoqVXcvagDfwL1Ou5Qu1RWgHeGdLCj1pERvaU/2OgyGYAg== X-Microsoft-Exchange-Diagnostics: 1; HE1PR04MB1388; 6:v+kbU2YKzresjkoBn9lQMSlHf/cHCPjMa1RzSBEivD5Y8zWouvfoQeCazEQVAyZytr+p5jpNa+8jqhoW3J5NXRRLCPtxdxSY70vowumB80jro9d7bPnmFT+o37ePph4pY0AXc+eSBeLGbTMosVn9UWMlmEa63dTS46L7TaNDXJgm4Ofgw9cj/GajtKHs1tLF5tGW53RR7pdwpv8IV4R4P2huWRodd6sW+okFMeBDbrq0LdEBPX6X82+MNL8BapvoTl1eLMzqaM4IGZX3Lqp5zQ+BZI2nD+ajXWzVUOC/SykgHqLe4XDpuezT3ATUNZR6dvsd2WcFdQxoJFUqSZF7KdZ3yitWRRDFd/0+SSkY8XqwTQzx7leuq4ZZQsEzuyooomHolhZ3oqlZ0Y+GdzMV3WxPnEOFd0bZQnXUuU9qMTCKHrmwN7VRBVFx1HY9hx6vkZq42Iblgar6J7v2YyFL8g==; 5:NB8neZONN/iZmUIV0SLHZdPXEHGGWHuieoqP6yGiTCHZJ447mWVEwyobF6WbekdJmnAhRU+sbbE+m/DpKW//mL9capTsCp053oY4V5+bzqCp+3PQ4WRlgmxSzvDCtd1Gu5jA7QZKhKSl2huhCWpp0PCVC4ov2vWz1JBS8JciihE=; 24:21OWSfSippgCAkWP+AZsDOKBqLcfThTniWRH71Pti6+HxPBmcrG2j5igIZPLvvJI9sCdHMHh1RyabbqUiC68X4evSWqpGvyt/MZmuOUSybw= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR04MB1388; 7:SnnIH2jPdaj70xogzxWMmQ6tGISM+xjeMf1Y9bXb91v055ekW55w9Zn0FUHjO3oEufj7TRRJXTN/3RoBdbk641kIOa4UyBPjWXctAe9SA6ecQImXbvTEfYufRy/0OSZTQEpIUXQxZARvJHbc/M/wFobsRCHSGohLiaRleEwWdl0oZjAdldxY00w4cpYkRONzBT5uuAvmDjIcSevdpCRA4lDA3JY90LX3o2RW4jRMuNjQ/dDwKjIs9qgY7zTY98pk X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jun 2018 10:00:57.7683 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 05f8ccea-a8a1-4f31-532e-08d5d8270d9b X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR04MB1388 Subject: Re: [dpdk-dev] [PATCH 2/2] examples/ipsec-secgw: fix portmask option parsing X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Jun 2018 10:01:00 -0000 Hi Konstantin, On 6/21/2018 8:32 PM, Ananyev, Konstantin wrote: > Hi Akhil, > >> -----Original Message----- >> From: Akhil Goyal [mailto:akhil.goyal@nxp.com] >> Sent: Thursday, June 21, 2018 2:49 PM >> To: Ananyev, Konstantin ; dev@dpdk.org >> Cc: Nicolau, Radu >> Subject: Re: [dpdk-dev] [PATCH 2/2] examples/ipsec-secgw: fix portmask option parsing >> >> Hi Konstantin, >> >> On 6/5/2018 7:46 PM, Konstantin Ananyev wrote: >>> parse_portmask() returns both portmask value and possible error code >>> as 32-bit integer. That causes some confusion for callers. >>> Split error code and portmask value into two distinct variables. >>> Also allows to run the app with unprotected_port_mask == 0. >> This would also allow cryptodev_mask == 0 to work well which should not be the case. >> >>> Fixes: d299106e8e31 ("examples/ipsec-secgw: add IPsec sample application") >>> >>> Signed-off-by: Konstantin Ananyev >>> --- >>> examples/ipsec-secgw/ipsec-secgw.c | 29 +++++++++++++++-------------- >>> 1 file changed, 15 insertions(+), 14 deletions(-) >>> >>> diff --git a/examples/ipsec-secgw/ipsec-secgw.c b/examples/ipsec-secgw/ipsec-secgw.c >>> index fafb41161..5d7071657 100644 >>> --- a/examples/ipsec-secgw/ipsec-secgw.c >>> +++ b/examples/ipsec-secgw/ipsec-secgw.c >>> @@ -972,20 +972,19 @@ print_usage(const char *prgname) >>> } >>> >>> static int32_t >>> -parse_portmask(const char *portmask) >>> +parse_portmask(const char *portmask, uint32_t *pmv) >>> { >>> - char *end = NULL; >>> + char *end; >>> unsigned long pm; >>> >>> /* parse hexadecimal string */ >>> + errno = 0; >>> pm = strtoul(portmask, &end, 16); >>> - if ((portmask[0] == '\0') || (end == NULL) || (*end != '\0')) >>> + if (errno != 0 || *end != '\0' || pm > UINT32_MAX) >>> return -1; >>> >>> - if ((pm == 0) && errno) >>> - return -1; >>> - >>> - return pm; >>> + *pmv = pm; >>> + return 0; >>> } >>> >>> static int32_t >>> @@ -1063,6 +1062,7 @@ parse_args(int32_t argc, char **argv) >>> int32_t opt, ret; >>> char **argvopt; >>> int32_t option_index; >>> + uint32_t v; >>> char *prgname = argv[0]; >>> int32_t f_present = 0; >>> >>> @@ -1073,8 +1073,8 @@ parse_args(int32_t argc, char **argv) >>> >>> switch (opt) { >>> case 'p': >>> - enabled_port_mask = parse_portmask(optarg); >>> - if (enabled_port_mask == 0) { >>> + ret = parse_portmask(optarg, &enabled_port_mask); >>> + if (ret < 0 || enabled_port_mask == 0) { >>> printf("invalid portmask\n"); >>> print_usage(prgname); >>> return -1; >>> @@ -1085,8 +1085,8 @@ parse_args(int32_t argc, char **argv) >>> promiscuous_on = 1; >>> break; >>> case 'u': >>> - unprotected_port_mask = parse_portmask(optarg); >>> - if (unprotected_port_mask == 0) { >>> + ret = parse_portmask(optarg, &unprotected_port_mask); >>> + if (ret < 0) { >>> printf("invalid unprotected portmask\n"); >>> print_usage(prgname); >>> return -1; >>> @@ -1147,15 +1147,16 @@ parse_args(int32_t argc, char **argv) >>> single_sa_idx); >>> break; >>> case CMD_LINE_OPT_CRYPTODEV_MASK_NUM: >>> - ret = parse_portmask(optarg); >>> + ret = parse_portmask(optarg, &v); >> I think there is no need for v, enabled_cryptodev_mask can be used instead. > Right now - it can't as enabled_cryptodevmask is uint64_t. > To do what you suggesting we have either downgrade enabled_cryptodevmask 32-bits, > or upgrade enabled_port_mask to 64-bit and change parse_portmask() to accept 64-bit parameter. I am ok with any of the case. > >>> if (ret == -1) { >> enabled_cryptodev_mask should not be 0 and should be checked here. > Could you explain a bit more why enabled_cryptodevmask==0 is not allowed? By default, the value of enabled_cryptodevmask is UINT64_MAX, which means all crypto devices are enabled, and if it is marked as 0, then all get disabled which is not correct as we need atleast 1 crypto device in ipsec application. So if the user doesn't want to give the cryptodev_mask then he may skip that parameter, but if it is giving, then it cannot be 0. > > Konstantin > > -Akhil