From: Andy Green <andy@warmcat.com> To: "Shaikh, Shahed" <Shahed.Shaikh@cavium.com>, Bruce Richardson <bruce.richardson@intel.com>, "dev-bounces@dpdk.org" <dev-bounces@dpdk.org> Cc: "dev@dpdk.org" <dev@dpdk.org> Subject: Re: [dpdk-dev] [PATCH 09/18] drivers: net: qede: fix strncpy constant and NUL Date: Wed, 9 May 2018 06:07:09 +0800 Message-ID: <a02e7b38-dfee-1c0d-46bc-65adca288e36@warmcat.com> (raw) In-Reply-To: <DM2PR07MB1547AADC77E5E7C72B4F71BB9D9A0@DM2PR07MB1547.namprd07.prod.outlook.com> On 05/09/2018 04:02 AM, Shaikh, Shahed wrote: >> -----Original Message----- >> From: dev <dev-bounces@dpdk.org> On Behalf Of Bruce Richardson >> Sent: Tuesday, May 8, 2018 2:53 PM >> To: dev-bounces@dpdk.org >> Cc: Andy Green <andy@warmcat.com>; dev@dpdk.org >> Subject: Re: [dpdk-dev] [PATCH 09/18] drivers: net: qede: fix strncpy constant >> and NUL >> >> On Tue, May 08, 2018 at 05:59:47PM +0000, dev-bounces@dpdk.org wrote: >>> >>> >>>> -----Original Message----- >>>> From: dev <dev-bounces@dpdk.org> On Behalf Of Andy Green >>>> Sent: Monday, May 7, 2018 11:30 PM >>>> To: dev@dpdk.org >>>> Subject: [dpdk-dev] [PATCH 09/18] drivers: net: qede: fix strncpy >>>> constant and NUL >>>> >>>> >>>> --- >>>> drivers/net/qede/base/ecore_int.c | 10 ++++++---- >>>> 1 file changed, 6 insertions(+), 4 deletions(-) >>>> >>>> diff --git a/drivers/net/qede/base/ecore_int.c >>>> b/drivers/net/qede/base/ecore_int.c >>>> index f43781ba4..c809d84ef 100644 >>>> --- a/drivers/net/qede/base/ecore_int.c >>>> +++ b/drivers/net/qede/base/ecore_int.c >>>> @@ -1103,10 +1103,12 @@ static enum _ecore_status_t >>>> ecore_int_deassertion(struct ecore_hwfn *p_hwfn, >>>> OSAL_SNPRINTF(bit_name, 30, >>>> p_aeu->bit_name, >>>> num); >>>> - else >>>> - OSAL_STRNCPY(bit_name, >>>> - p_aeu->bit_name, >>>> - 30); >>>> + else { >>>> + strncpy(bit_name, >>>> + p_aeu->bit_name, >>>> + sizeof(bit_name) - 1); >>>> + bit_name[sizeof(bit_name) - 1] >>>> = '\0'; >>>> + } >>> >>> I think you can retain OSAL_STRNCPY and just replace 30 with >> 'bit_name[sizeof(bit_name) - 1' and then set last byte with '\0' just like you did. >> >> Can that actually be fixed inside OSAL_STRNCPY itself, rather than having each >> use needing to explicitly null-terminate? > > Although there is only instance of OSAL_STRNCPY, it makes sense to modify it. Doesn't it make more sense to get rid of OSAL_* that bring nothing at all to the party? #define OSAL_SPRINTF(name, pattern, ...) \ sprintf(name, pattern, ##__VA_ARGS__) #define OSAL_SNPRINTF(buf, size, format, ...) \ snprintf(buf, size, format, ##__VA_ARGS__) #define OSAL_STRLEN(string) strlen(string) #define OSAL_STRCPY(dst, string) strcpy(dst, string) #define OSAL_STRNCPY(dst, string, len) strncpy(dst, string, len) #define OSAL_STRCMP(str1, str2) strcmp(str1, str2) Do I miss the point or these are just cruft? -Andy > Thanks, > Shahed >
next prev parent reply other threads:[~2018-05-08 22:08 UTC|newest] Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-05-08 4:29 [dpdk-dev] [PATCH 00/18] Fix build on gcc8 and various bugs Andy Green 2018-05-08 4:29 ` [dpdk-dev] [PATCH 01/18] lib: ret_table: workaround hash function cast error Andy Green 2018-05-08 4:29 ` [dpdk-dev] [PATCH 02/18] drivers: bus: pci: fix strncpy dangerous code Andy Green 2018-05-08 8:57 ` Bruce Richardson 2018-05-08 4:29 ` [dpdk-dev] [PATCH 03/18] drivers: bus: dpaa: fix inconsistent struct alignment Andy Green 2018-05-08 4:29 ` [dpdk-dev] [PATCH 04/18] drivers: net: axgbe: fix broken eeprom string comp Andy Green 2018-05-08 4:29 ` [dpdk-dev] [PATCH 05/18] drivers: net: nfp: nfpcore: fix strncpy misuse Andy Green 2018-05-08 8:58 ` Bruce Richardson 2018-05-08 9:00 ` Andy Green 2018-05-08 9:03 ` Bruce Richardson 2018-05-08 4:29 ` [dpdk-dev] [PATCH 06/18] drivers: net: nfp: nfpcore fix off-by-one and no NUL on strncpy use Andy Green 2018-05-08 4:30 ` [dpdk-dev] [PATCH 07/18] drivers: net: nfp: don't memcpy out of source range Andy Green 2018-05-08 4:30 ` [dpdk-dev] [PATCH 08/18] drivers: net: nfp: fix buffer overflow in fw_name Andy Green 2018-05-08 4:30 ` [dpdk-dev] [PATCH 09/18] drivers: net: qede: fix strncpy constant and NUL Andy Green 2018-05-08 17:59 ` Shaikh, Shahed 2018-05-08 19:53 ` Bruce Richardson 2018-05-08 20:02 ` Shaikh, Shahed 2018-05-08 22:07 ` Andy Green [this message] 2018-05-08 23:33 ` Shaikh, Shahed 2018-05-08 4:30 ` [dpdk-dev] [PATCH 10/18] drivers: net: qede: fix broken strncpy Andy Green 2018-05-08 4:30 ` [dpdk-dev] [PATCH 11/18] drivers:net:sfc: fix strncpy length Andy Green 2018-05-08 4:30 ` [dpdk-dev] [PATCH 12/18] drivers: net: sfc: fix another strncpy size and NUL Andy Green 2018-05-08 7:36 ` Andrew Rybchenko 2018-05-08 8:18 ` Andy Green 2018-05-08 9:02 ` Bruce Richardson 2018-05-08 9:08 ` Andrew Rybchenko 2018-05-08 4:30 ` [dpdk-dev] [PATCH 13/18] drivers: net: vdev: readlink inputs cannot be aliased Andy Green 2018-05-08 4:30 ` [dpdk-dev] [PATCH 14/18] drivers: net: vdev: fix 3 x strncpy misuse Andy Green 2018-05-08 4:30 ` [dpdk-dev] [PATCH 15/18] test-pmd: can't find include Andy Green 2018-05-08 4:30 ` [dpdk-dev] [PATCH 16/18] app: fix sprintf overrun bug Andy Green 2018-05-08 4:30 ` [dpdk-dev] [PATCH 17/18] app: test-bbdev: strcpy ok for allocated string Andy Green 2018-05-08 4:30 ` [dpdk-dev] [PATCH 18/18] app: test-bbdev: strcpy ok for allocated string 2 Andy Green
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=a02e7b38-dfee-1c0d-46bc-65adca288e36@warmcat.com \ --to=andy@warmcat.com \ --cc=Shahed.Shaikh@cavium.com \ --cc=bruce.richardson@intel.com \ --cc=dev-bounces@dpdk.org \ --cc=dev@dpdk.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
DPDK patches and discussions This inbox may be cloned and mirrored by anyone: git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \ dev@dpdk.org public-inbox-index dev Example config snippet for mirrors. Newsgroup available over NNTP: nntp://inbox.dpdk.org/inbox.dpdk.dev AGPL code for this site: git clone https://public-inbox.org/public-inbox.git