[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <DB9PR10MB5881B173B65CF0895A185B22E0DA9@DB9PR10MB5881.EURPRD10.PROD.OUTLOOK.COM>
Date: Mon, 6 Feb 2023 06:40:51 +0000
From: "Starke, Daniel" <daniel.starke@...mens.com>
To: Greg KH <gregkh@...uxfoundation.org>
CC: "linux-serial@...r.kernel.org" <linux-serial@...r.kernel.org>,
"jirislaby@...nel.org" <jirislaby@...nel.org>,
"ilpo.jarvinen@...ux.intel.com" <ilpo.jarvinen@...ux.intel.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH v3 2/4] tty: n_gsm: add keep alive support
> > +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
Powered by blists - more mailing lists