RE: [PATCH v3 2/4] tty: n_gsm: add keep alive support

From: Starke, Daniel
Date: Mon Feb 06 2023 - 01:41:00 EST


> > +struct gsm_config_ext {
> > + __u32 keep_alive; /* Control channel keep-alive in 1/100th of a
> > + * second (0 to disable)
> > + */
> > + __u32 reserved[7]; /* For future use */
>
> You are not checking these fields, so this means any future use of them
> will not be allowed (like the problem you have which required this new
> structure.)
>
> Please, always verify that the values here are 0, and if not, error out
> with -EINVAL. That's the only way you can properly reserve this for
> future use. The kernel documentation about "how to write an ioctl"
> should describe all of this, right?

gsmld_ioctl() calls for GSMIOC_SETCONF_EXT the function gsm_config_ext()
which returns -EINVAL if any of the reserved fields is non-zero. Should
this also happen for GSMIOC_GETCONF_EXT?

Best regards,
Daniel Starke