]>
Commit | Line | Data |
---|---|---|
618190b8 SL |
1 | From 0f7683aeaf1be4bcb09cd4002daf7d4071b06e2b Mon Sep 17 00:00:00 2001 |
2 | From: Florian Fainelli <f.fainelli@gmail.com> | |
3 | Date: Fri, 28 Sep 2018 16:18:53 -0700 | |
4 | Subject: sr9800: Check for supported Wake-on-LAN modes | |
5 | ||
6 | [ Upstream commit c5cb93e994ffb43b7b3b1ff10b9f928f54574a36 ] | |
7 | ||
8 | The driver currently silently accepts unsupported Wake-on-LAN modes | |
9 | (other than WAKE_PHY or WAKE_MAGIC) without reporting that to the user, | |
10 | which is confusing. | |
11 | ||
12 | Fixes: 19a38d8e0aa3 ("USB2NET : SR9800 : One chip USB2.0 USB2NET SR9800 Device Driver Support") | |
13 | Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> | |
14 | Signed-off-by: David S. Miller <davem@davemloft.net> | |
15 | Signed-off-by: Sasha Levin <sashal@kernel.org> | |
16 | --- | |
17 | drivers/net/usb/sr9800.c | 3 +++ | |
18 | 1 file changed, 3 insertions(+) | |
19 | ||
20 | diff --git a/drivers/net/usb/sr9800.c b/drivers/net/usb/sr9800.c | |
21 | index 953de13267df..0144fb19a099 100644 | |
22 | --- a/drivers/net/usb/sr9800.c | |
23 | +++ b/drivers/net/usb/sr9800.c | |
24 | @@ -421,6 +421,9 @@ sr_set_wol(struct net_device *net, struct ethtool_wolinfo *wolinfo) | |
25 | struct usbnet *dev = netdev_priv(net); | |
26 | u8 opt = 0; | |
27 | ||
28 | + if (wolinfo->wolopts & ~(WAKE_PHY | WAKE_MAGIC)) | |
29 | + return -EINVAL; | |
30 | + | |
31 | if (wolinfo->wolopts & WAKE_PHY) | |
32 | opt |= SR_MONITOR_LINK; | |
33 | if (wolinfo->wolopts & WAKE_MAGIC) | |
34 | -- | |
35 | 2.17.1 | |
36 |