Re: [PATCH 3/3] usb: gadgetfs: protect descriptor delegation with Kconfig

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Binyamin Sharet <bsharet@xxxxxxxxx> writes:

> Added USB_GADGETFS_ALLOW_DELEGATE_DESCRIPTORS to Kconfig, this
> option is available under USB_GADGETFS and requires EXPERT.
> Enabling this option will not change the default behavior of
> GadgetFS, but will allow a user to enable descriptor delegation
> using ioctls.
> ---
>  drivers/usb/gadget/legacy/Kconfig | 12 ++++++++++++
>  drivers/usb/gadget/legacy/inode.c | 12 ++++++++++--
>  2 files changed, 22 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/usb/gadget/legacy/Kconfig
> b/drivers/usb/gadget/legacy/Kconfig
> index 0b36878..c062384 100644
> --- a/drivers/usb/gadget/legacy/Kconfig
> +++ b/drivers/usb/gadget/legacy/Kconfig
> @@ -184,6 +184,18 @@ config USB_GADGETFS
>        Say "y" to link the driver statically, or "m" to build a
>        dynamically linked module called "gadgetfs".
>  
> +config USB_GADGETFS_ALLOW_DELEGATE_DESCRIPTORS
> +    bool "Delegate get descriptor requests to user" if EXPERT
> +    depends on USB_GADGETFS

why not:

	bool " Delegate all requests to user"
        depends on USB_GADGETFS && EXPERT

?

> diff --git a/drivers/usb/gadget/legacy/inode.c
> b/drivers/usb/gadget/legacy/inode.c
> index f8a3e75..9a62584 100644
> --- a/drivers/usb/gadget/legacy/inode.c
> +++ b/drivers/usb/gadget/legacy/inode.c
> @@ -178,9 +178,13 @@ static struct dev_data *dev_new (void)
>      spin_lock_init (&dev->lock);
>      INIT_LIST_HEAD (&dev->epfiles);
>      init_waitqueue_head (&dev->wait);
> +
> +#ifdef CONFIG_USB_GADGETFS_ALLOW_DELEGATE_DESCRIPTORS
>      feature_set(&dev->supported_features,
>              GADGETFS_FEATURE_DELEGATE_DESCRIPTORS);
> -    return dev;
> +#endif

feature_set shouldn't be here until $subject is merged.

> @@ -1414,10 +1418,14 @@ gadgetfs_setup (struct usb_gadget *gadget, const
> struct usb_ctrlrequest *ctrl)
>      case USB_REQ_GET_DESCRIPTOR:
>          if (ctrl->bRequestType != USB_DIR_IN)
>              goto unrecognized;
> +
> +#ifdef CONFIG_USB_GADGETFS_ALLOW_DELEGATE_DESCRIPTORS
>          if (is_feature_set(&dev->enabled_features,
>                      GADGETFS_FEATURE_DELEGATE_DESCRIPTORS))

this shouldn't be here until $subject.

-- 
balbi

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux