Commit 53048779 authored by Chuck Lever's avatar Chuck Lever

NFSD: Fix strncpy() fortify warning

In function ‘strncpy’,
    inlined from ‘nfsd4_ssc_setup_dul’ at /home/cel/src/linux/manet/fs/nfsd/nfs4proc.c:1392:3,
    inlined from ‘nfsd4_interssc_connect’ at /home/cel/src/linux/manet/fs/nfsd/nfs4proc.c:1489:11:
/home/cel/src/linux/manet/include/linux/fortify-string.h:52:33: warning: ‘__builtin_strncpy’ specified bound 63 equals destination size [-Wstringop-truncation]
   52 | #define __underlying_strncpy    __builtin_strncpy
      |                                 ^
/home/cel/src/linux/manet/include/linux/fortify-string.h:89:16: note: in expansion of macro ‘__underlying_strncpy’
   89 |         return __underlying_strncpy(p, q, size);
      |                ^~~~~~~~~~~~~~~~~~~~
Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
parent 99b002a1
...@@ -1389,7 +1389,7 @@ static __be32 nfsd4_ssc_setup_dul(struct nfsd_net *nn, char *ipaddr, ...@@ -1389,7 +1389,7 @@ static __be32 nfsd4_ssc_setup_dul(struct nfsd_net *nn, char *ipaddr,
return 0; return 0;
} }
if (work) { if (work) {
strncpy(work->nsui_ipaddr, ipaddr, sizeof(work->nsui_ipaddr)); strlcpy(work->nsui_ipaddr, ipaddr, sizeof(work->nsui_ipaddr) - 1);
refcount_set(&work->nsui_refcnt, 2); refcount_set(&work->nsui_refcnt, 2);
work->nsui_busy = true; work->nsui_busy = true;
list_add_tail(&work->nsui_list, &nn->nfsd_ssc_mount_list); list_add_tail(&work->nsui_list, &nn->nfsd_ssc_mount_list);
......
...@@ -64,7 +64,7 @@ struct nfsd4_ssc_umount_item { ...@@ -64,7 +64,7 @@ struct nfsd4_ssc_umount_item {
refcount_t nsui_refcnt; refcount_t nsui_refcnt;
unsigned long nsui_expire; unsigned long nsui_expire;
struct vfsmount *nsui_vfsmount; struct vfsmount *nsui_vfsmount;
char nsui_ipaddr[RPC_MAX_ADDRBUFLEN]; char nsui_ipaddr[RPC_MAX_ADDRBUFLEN + 1];
}; };
#endif #endif
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment