aboutsummaryrefslogtreecommitdiffstats
path: root/src/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'src/drivers')
-rw-r--r--src/drivers/driver_nl80211.c44
1 files changed, 33 insertions, 11 deletions
diff --git a/src/drivers/driver_nl80211.c b/src/drivers/driver_nl80211.c
index bf67aba..59d278e 100644
--- a/src/drivers/driver_nl80211.c
+++ b/src/drivers/driver_nl80211.c
@@ -8952,6 +8952,7 @@ nl80211_self_filter_get_pattern_handler(u8 *buf, int buflen, void *arg)
}
static struct rx_filter rx_filters[] = {
+ /* ID 0 */
{.name = "self",
.pattern = {},
.pattern_len = 6,
@@ -8960,6 +8961,7 @@ static struct rx_filter rx_filters[] = {
.get_pattern_handler = nl80211_self_filter_get_pattern_handler,
},
+ /* ID 1 */
{.name = "bcast",
.pattern = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},
.pattern_len = 6,
@@ -8967,6 +8969,7 @@ static struct rx_filter rx_filters[] = {
.mask_len = 1,
},
+ /* ID 2 */
{.name = "ipv4mc",
.pattern = {0x01,0x00,0x5E},
.pattern_len = 3,
@@ -8974,6 +8977,7 @@ static struct rx_filter rx_filters[] = {
.mask_len = 1,
},
+ /* ID 3 */
{.name = "ipv6mc",
.pattern = {0x33,0x33},
.pattern_len = 2,
@@ -8981,27 +8985,45 @@ static struct rx_filter rx_filters[] = {
.mask_len = 1,
},
+ /* ID 4 */
+ {.name = "dhcp",
+ .pattern = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0 , 0 ,
+ 0 , 0 , 0 , 0 , 0 , 0 , 0x45, 0 ,
+ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0x11,
+ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ,
+ 0 , 0 , 0 , 0 , 0x00, 0x44},
+ .pattern_len = 38,
+ .mask = { BIT(0) | BIT(1) | BIT(2) | BIT(3) | BIT(4) | BIT(5),
+ BIT(6), /* OCTET 2 */
+ BIT(7), /* OCTET 3 */
+ 0, /* OCTET 4 */
+ BIT(4) | BIT(5) }, /* OCTET 5 */
+ .mask_len = 5,
+ },
+
+ /* ID 5 */
{.name = "arp",
.pattern = {0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ,
0 , 0 , 0 , 0 , 0x08, 0x06},
.pattern_len = 14,
- .mask = { 0, /* OCTET 1 */
- BIT(4) | BIT(5) }, /* OCTET 2 */
+ .mask = { 0, /* OCTET 1 */
+ BIT(4) | BIT(5) }, /* OCTET 2 */
.mask_len = 2,
},
- {.name = "dhcp",
- .pattern = {0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ,
+ /* ID 6 */
+ {.name = "ssdp",
+ .pattern = {0x01, 0x00, 0x5E, 0 , 0 , 0 , 0 , 0 ,
0 , 0 , 0 , 0 , 0 , 0 , 0x45, 0 ,
0 , 0 , 0 , 0 , 0 , 0 , 0 , 0x11,
- 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ,
- 0 , 0 , 0 , 0 , 0x00, 0x44},
+ 0 , 0 , 0 , 0 , 0 , 0 , 0xEF, 0xFF,
+ 0xFF, 0xFA, 0 , 0 , 0x07, 0x6C},
.pattern_len = 38,
- .mask = { 0, /* OCTET 1 */
- BIT(6), /* OCTET 2 */
- BIT(7), /* OCTET 3 */
- 0, /* OCTET 4 */
- BIT(4) | BIT(5) }, /* OCTET 5 */
+ .mask = { BIT(0) | BIT(1) | BIT(2), /* OCTET 1 */
+ BIT(6), /* OCTET 2 */
+ BIT(7), /* OCTET 3 */
+ BIT(6) | BIT(7), /* OCTET 4 */
+ BIT(0) | BIT(1) | BIT(4) | BIT(5) }, /* OCTET 5 */
.mask_len = 5,
},
};