diff options
Diffstat (limited to 'net/ieee802154/af_ieee802154.c')
-rw-r--r-- | net/ieee802154/af_ieee802154.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/net/ieee802154/af_ieee802154.c b/net/ieee802154/af_ieee802154.c index a8db341581ac..973cb11da42b 100644 --- a/net/ieee802154/af_ieee802154.c +++ b/net/ieee802154/af_ieee802154.c | |||
@@ -48,7 +48,7 @@ struct net_device *ieee802154_get_dev(struct net *net, | |||
48 | { | 48 | { |
49 | struct net_device *dev = NULL; | 49 | struct net_device *dev = NULL; |
50 | struct net_device *tmp; | 50 | struct net_device *tmp; |
51 | u16 pan_id, short_addr; | 51 | __le16 pan_id, short_addr; |
52 | 52 | ||
53 | switch (addr->addr_type) { | 53 | switch (addr->addr_type) { |
54 | case IEEE802154_ADDR_LONG: | 54 | case IEEE802154_ADDR_LONG: |
@@ -59,9 +59,9 @@ struct net_device *ieee802154_get_dev(struct net *net, | |||
59 | rcu_read_unlock(); | 59 | rcu_read_unlock(); |
60 | break; | 60 | break; |
61 | case IEEE802154_ADDR_SHORT: | 61 | case IEEE802154_ADDR_SHORT: |
62 | if (addr->pan_id == 0xffff || | 62 | if (addr->pan_id == IEEE802154_PANID_BROADCAST || |
63 | addr->short_addr == IEEE802154_ADDR_UNDEF || | 63 | addr->short_addr == IEEE802154_ADDR_UNDEF || |
64 | addr->short_addr == 0xffff) | 64 | addr->short_addr == IEEE802154_ADDR_UNDEF) |
65 | break; | 65 | break; |
66 | 66 | ||
67 | rtnl_lock(); | 67 | rtnl_lock(); |
@@ -74,8 +74,8 @@ struct net_device *ieee802154_get_dev(struct net *net, | |||
74 | short_addr = | 74 | short_addr = |
75 | ieee802154_mlme_ops(tmp)->get_short_addr(tmp); | 75 | ieee802154_mlme_ops(tmp)->get_short_addr(tmp); |
76 | 76 | ||
77 | if (pan_id == addr->pan_id && | 77 | if (le16_to_cpu(pan_id) == addr->pan_id && |
78 | short_addr == addr->short_addr) { | 78 | le16_to_cpu(short_addr) == addr->short_addr) { |
79 | dev = tmp; | 79 | dev = tmp; |
80 | dev_hold(dev); | 80 | dev_hold(dev); |
81 | break; | 81 | break; |