On 11/28/2013 12:48 PM, Rafał Miłecki wrote:
> This is just a RFC, so be nice to this "patch", please ;)
>
> My goal is to add support for buttons on bcm47xx arch. However after
> analyzing existing database of devices I realized I don't know what code
> I should assign to some buttons.
>
> First of all, older routers often have a "SES" button. SES stands for
> SecureEasySetup and is Broadcom's proprietary protocol which was later
> replaced with WPS (Wi-Fi Protected Setup).
> Btw. WPS appeared to be broken because it's easy to attack it with
> brutal-force method.
Only a badly implemented WPS pin authentication is vulnerable to the
brute force attack, as far as I know.
> I'm not sure if any distribution have any interest
> in using that buttons, but it still would be nice to have support for
> them in kernel. One option is to add KEY_SES for this purpose.
> Is this the right way? It's similar to the KEY_WPS_BUTTON, but I wanted
> to somehow distinct them. Is there any other option? Should I use
> KEY_UNKNOWN or BTN_MISC or BTN_n?
I do not think you or someone else plans to implement SecureEasySetup on
a device running current Linux kernel, why not use the WPS button key
for for these button. If someone wants to implement this just use the
WPS button key for that.
> Another thing is WWAN key. Some routers support mobile networks (for
> example Linksys 54G3G) and they may have button for enabling/disabling
> such connection. We already have KEY_BLUETOOTH, KEY_WLAN and KEY_UWB,
> but nothing for WWAN device control. I guess in future KEY_WWAN could
> be also supported in rfkill by mapping it to the RFKILL_TYPE_WWAN.
>
> What do you think about this?
> ---
> include/uapi/linux/input.h | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/include/uapi/linux/input.h b/include/uapi/linux/input.h
> index 4649ee3..a06c8bf 100644
> --- a/include/uapi/linux/input.h
> +++ b/include/uapi/linux/input.h
> @@ -749,6 +749,9 @@ struct input_keymap_entry {
> #define BTN_TRIGGER_HAPPY39 0x2e6
> #define BTN_TRIGGER_HAPPY40 0x2e7
>
> +#define KEY_WWAN 0x2e8 /* Wireless WAN (LTE, UMTS,
> GSM, etc.) */
> +#define KEY_SES 0x2e9 /* SecureEasySetup */
> +
> /* We avoid low common keys in module aliases so they don't get huge. */
> #define KEY_MIN_INTERESTING KEY_MUTE
> #define KEY_MAX 0x2ff
>
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html