Message ID | bqKL4XKDGLWNih2jsEzZYpBSHG6Ux5mLZfDBIgHckEUxDq4l4pPgQPEXEqKRE7pUwMrXZBVeko9aYr1w_E5h5r_R_YFA46G8dGhV1id7zy4=@ethancedwards.com (mailing list archive) |
---|---|
State | Changes Requested |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | hamradio: baycom: replace strcpy() with strscpy() | expand |
Context | Check | Description |
---|---|---|
netdev/tree_selection | success | Guessing tree name failed - patch did not apply |
On Mon, 23 Dec 2024 15:13:42 +0000 Ethan Carter Edwards wrote: > The strcpy() function has been deprecated and replaced with strscpy(). > There is an effort to make this change treewide: > https://github.com/KSPP/linux/issues/88. Please rebase on net-next/main and repost.
On Mon, Dec 23, 2024 at 03:13:42PM +0000, Ethan Carter Edwards wrote: > The strcpy() function has been deprecated and replaced with strscpy(). > There is an effort to make this change treewide: > https://github.com/KSPP/linux/issues/88. > > Signed-off-by: Ethan Carter Edwards <ethan@ethancedwards.com> > --- > drivers/net/hamradio/baycom_par.c | 4 ++-- > drivers/net/hamradio/baycom_ser_fdx.c | 2 +- > drivers/net/hamradio/baycom_ser_hdx.c | 4 ++-- > 3 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/drivers/net/hamradio/baycom_par.c b/drivers/net/hamradio/baycom_par.c > index 00ebc25d0b22..47bc74d3ad8c 100644 > --- a/drivers/net/hamradio/baycom_par.c > +++ b/drivers/net/hamradio/baycom_par.c > @@ -427,7 +427,7 @@ static int baycom_ioctl(struct net_device *dev, void __user *data, > break; > > case HDLCDRVCTL_GETMODE: > - strcpy(hi->data.modename, bc->options ? "par96" : "picpar"); > + strscpy(hi->data.modename, bc->options ? "par96" : "picpar", sizeof(hi->data.modename)); strscpy() has macro magic so you can just write this as: strscpy(hi->data.modename, bc->options ? "par96" : "picpar"); Looks nicer and it's easier to review. regards, dan carpenter
diff --git a/drivers/net/hamradio/baycom_par.c b/drivers/net/hamradio/baycom_par.c index 00ebc25d0b22..47bc74d3ad8c 100644 --- a/drivers/net/hamradio/baycom_par.c +++ b/drivers/net/hamradio/baycom_par.c @@ -427,7 +427,7 @@ static int baycom_ioctl(struct net_device *dev, void __user *data, break; case HDLCDRVCTL_GETMODE: - strcpy(hi->data.modename, bc->options ? "par96" : "picpar"); + strscpy(hi->data.modename, bc->options ? "par96" : "picpar", sizeof(hi->data.modename)); if (copy_to_user(data, hi, sizeof(struct hdlcdrv_ioctl))) return -EFAULT; return 0; @@ -439,7 +439,7 @@ static int baycom_ioctl(struct net_device *dev, void __user *data, return baycom_setmode(bc, hi->data.modename); case HDLCDRVCTL_MODELIST: - strcpy(hi->data.modename, "par96,picpar"); + strscpy(hi->data.modename, "par96,picpar", sizeof(hi->data.modename)); if (copy_to_user(data, hi, sizeof(struct hdlcdrv_ioctl))) return -EFAULT; return 0; diff --git a/drivers/net/hamradio/baycom_ser_fdx.c b/drivers/net/hamradio/baycom_ser_fdx.c index 799f8ece7824..3dda6b215fe3 100644 --- a/drivers/net/hamradio/baycom_ser_fdx.c +++ b/drivers/net/hamradio/baycom_ser_fdx.c @@ -531,7 +531,7 @@ static int baycom_ioctl(struct net_device *dev, void __user *data, return baycom_setmode(bc, hi->data.modename); case HDLCDRVCTL_MODELIST: - strcpy(hi->data.modename, "ser12,ser3,ser24"); + strscpy(hi->data.modename, "ser12,ser3,ser24", sizeof(hi->data.modename)); if (copy_to_user(data, hi, sizeof(struct hdlcdrv_ioctl))) return -EFAULT; return 0; diff --git a/drivers/net/hamradio/baycom_ser_hdx.c b/drivers/net/hamradio/baycom_ser_hdx.c index 5d1ab4840753..4f058f61659e 100644 --- a/drivers/net/hamradio/baycom_ser_hdx.c +++ b/drivers/net/hamradio/baycom_ser_hdx.c @@ -570,7 +570,7 @@ static int baycom_ioctl(struct net_device *dev, void __user *data, break; case HDLCDRVCTL_GETMODE: - strcpy(hi->data.modename, "ser12"); + strscpy(hi->data.modename, "ser12", sizeof(hi->data.modename)); if (bc->opt_dcd <= 0) strcat(hi->data.modename, (!bc->opt_dcd) ? "*" : (bc->opt_dcd == -2) ? "@" : "+"); if (copy_to_user(data, hi, sizeof(struct hdlcdrv_ioctl))) @@ -584,7 +584,7 @@ static int baycom_ioctl(struct net_device *dev, void __user *data, return baycom_setmode(bc, hi->data.modename); case HDLCDRVCTL_MODELIST: - strcpy(hi->data.modename, "ser12"); + strscpy(hi->data.modename, "ser12", sizeof(hi->data.modename)); if (copy_to_user(data, hi, sizeof(struct hdlcdrv_ioctl))) return -EFAULT; return 0;
The strcpy() function has been deprecated and replaced with strscpy(). There is an effort to make this change treewide: https://github.com/KSPP/linux/issues/88. Signed-off-by: Ethan Carter Edwards <ethan@ethancedwards.com> --- drivers/net/hamradio/baycom_par.c | 4 ++-- drivers/net/hamradio/baycom_ser_fdx.c | 2 +- drivers/net/hamradio/baycom_ser_hdx.c | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) -- 2.47.1