Message ID | 20241113092058.189142-1-danielyangkang@gmail.com (mailing list archive) |
---|---|
State | Awaiting Upstream |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net] xfrm: replace deprecated strncpy with strscpy_pad | expand |
On 11/13/24 10:20, Daniel Yang wrote: > The function strncpy is deprecated since it does not guarantee the > destination buffer is NULL terminated. Recommended replacement is > strscpy. The padded version was used to remain consistent with the other > strscpy_pad usage in the modified function. > > Signed-off-by: Daniel Yang <danielyangkang@gmail.com> > --- > net/xfrm/xfrm_user.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/net/xfrm/xfrm_user.c b/net/xfrm/xfrm_user.c > index e3b8ce898..085f68e35 100644 > --- a/net/xfrm/xfrm_user.c > +++ b/net/xfrm/xfrm_user.c > @@ -1089,7 +1089,7 @@ static int copy_to_user_auth(struct xfrm_algo_auth *auth, struct sk_buff *skb) > if (!nla) > return -EMSGSIZE; > algo = nla_data(nla); > - strncpy(algo->alg_name, auth->alg_name, sizeof(algo->alg_name)); > + strscpy_pad(algo->alg_name, auth->alg_name, sizeof(algo->alg_name)); > > if (redact_secret && auth->alg_key_len) > memset(algo->alg_key, 0, (auth->alg_key_len + 7) / 8); @Steffen, @Herbert: I think this should go via your tree despite the prefix tag. Please LMK otherwise! Thanks, Paolo
On Thu, Nov 14, 2024 at 11:34:25AM +0100, Paolo Abeni wrote: > On 11/13/24 10:20, Daniel Yang wrote: > > The function strncpy is deprecated since it does not guarantee the > > destination buffer is NULL terminated. Recommended replacement is > > strscpy. The padded version was used to remain consistent with the other > > strscpy_pad usage in the modified function. > > > > Signed-off-by: Daniel Yang <danielyangkang@gmail.com> > > --- > > net/xfrm/xfrm_user.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/net/xfrm/xfrm_user.c b/net/xfrm/xfrm_user.c > > index e3b8ce898..085f68e35 100644 > > --- a/net/xfrm/xfrm_user.c > > +++ b/net/xfrm/xfrm_user.c > > @@ -1089,7 +1089,7 @@ static int copy_to_user_auth(struct xfrm_algo_auth *auth, struct sk_buff *skb) > > if (!nla) > > return -EMSGSIZE; > > algo = nla_data(nla); > > - strncpy(algo->alg_name, auth->alg_name, sizeof(algo->alg_name)); > > + strscpy_pad(algo->alg_name, auth->alg_name, sizeof(algo->alg_name)); > > > > if (redact_secret && auth->alg_key_len) > > memset(algo->alg_key, 0, (auth->alg_key_len + 7) / 8); > > @Steffen, @Herbert: I think this should go via your tree despite the > prefix tag. I'll take it into ipsec-next. Thanks!
On Wed, Nov 13, 2024 at 01:20:58AM -0800, Daniel Yang wrote: > The function strncpy is deprecated since it does not guarantee the > destination buffer is NULL terminated. Recommended replacement is > strscpy. The padded version was used to remain consistent with the other > strscpy_pad usage in the modified function. > > Signed-off-by: Daniel Yang <danielyangkang@gmail.com> Applied to ipsec-next, thanks!
diff --git a/net/xfrm/xfrm_user.c b/net/xfrm/xfrm_user.c index e3b8ce898..085f68e35 100644 --- a/net/xfrm/xfrm_user.c +++ b/net/xfrm/xfrm_user.c @@ -1089,7 +1089,7 @@ static int copy_to_user_auth(struct xfrm_algo_auth *auth, struct sk_buff *skb) if (!nla) return -EMSGSIZE; algo = nla_data(nla); - strncpy(algo->alg_name, auth->alg_name, sizeof(algo->alg_name)); + strscpy_pad(algo->alg_name, auth->alg_name, sizeof(algo->alg_name)); if (redact_secret && auth->alg_key_len) memset(algo->alg_key, 0, (auth->alg_key_len + 7) / 8);
The function strncpy is deprecated since it does not guarantee the destination buffer is NULL terminated. Recommended replacement is strscpy. The padded version was used to remain consistent with the other strscpy_pad usage in the modified function. Signed-off-by: Daniel Yang <danielyangkang@gmail.com> --- net/xfrm/xfrm_user.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)