mirror of
https://github.com/nxp-imx/mwifiex.git
synced 2024-11-20 09:01:44 +00:00
168 lines
6.5 KiB
Text
168 lines
6.5 KiB
Text
|
# File : mef.conf
|
||
|
|
||
|
######################### MEF Configuration command ##################
|
||
|
mefcfg={
|
||
|
#Criteria: bit0-broadcast, bit1-unicast, bit3-multicast
|
||
|
Criteria=2 # Unicast frames are received during hostsleepmode
|
||
|
NumEntries=1 # Number of activated MEF entries
|
||
|
#mef_entry_0: example filters to match TCP destination port 80 send by 192.168.0.88 pkt or magic pkt.
|
||
|
mef_entry_0={
|
||
|
#mode: bit0--hostsleep mode, bit1--non hostsleep mode
|
||
|
mode=1 # HostSleep mode
|
||
|
#action: 0--discard and not wake host, 1--discard and wake host 3--allow and wake host
|
||
|
action=3 # Allow and Wake host
|
||
|
filter_num=3 # Number of filter
|
||
|
#RPN only support "&&" and "||" operator,space can not be removed between operator.
|
||
|
RPN=Filter_0 && Filter_1 || Filter_2
|
||
|
#Byte comparison filter's type is 0x41,Decimal comparison filter's type is 0x42,
|
||
|
#Bit comparison filter's type is 0x43
|
||
|
#Filter_0 is decimal comparison filter, it always with type=0x42
|
||
|
#Decimal filter always has type, pattern, offset, numbyte 4 field
|
||
|
#Filter_0 will match rx pkt with TCP destination port 80
|
||
|
Filter_0={
|
||
|
type=0x42 # decimal comparison filter
|
||
|
pattern=80 # 80 is the decimal constant to be compared
|
||
|
offset=44 # 44 is the byte offset of the field in RX pkt to be compare
|
||
|
numbyte=2 # 2 is the number of bytes of the field
|
||
|
}
|
||
|
#Filter_1 is Byte comparison filter, it always with type=0x41
|
||
|
#Byte filter always has type, byte, repeat, offset 4 filed
|
||
|
#Filter_1 will match rx pkt send by IP address 192.168.0.88
|
||
|
Filter_1={
|
||
|
type=0x41 # Byte comparison filter
|
||
|
repeat=1 # 1 copies of 'c0:a8:00:58'
|
||
|
byte=c0:a8:00:58 # 'c0:a8:00:58' is the byte sequence constant with each byte
|
||
|
# in hex format, with ':' as delimiter between two byte.
|
||
|
offset=34 # 34 is the byte offset of the equal length field of rx'd pkt.
|
||
|
}
|
||
|
#Filter_2 is Magic packet, it will looking for 16 contiguous copies of '00:50:43:20:01:02' from
|
||
|
# the rx pkt's offset 14
|
||
|
Filter_2={
|
||
|
type=0x41 # Byte comparison filter
|
||
|
repeat=16 # 16 copies of '00:50:43:20:01:02'
|
||
|
byte=00:50:43:20:01:02 # '00:50:43:20:01:02' is the byte sequence constant
|
||
|
offset=14 # 14 is the byte offset of the equal length field of rx'd pkt.
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
#--------------------------examples for MEF filters--------------------------------
|
||
|
# example: filters to match ARP packet with protocol addr 192.168.0.104
|
||
|
# mef_entry_0={
|
||
|
# mode=1 # HostSleep mode
|
||
|
# action=3 # Allow and Wake host
|
||
|
# filter_num=3 # Number of filter
|
||
|
# RPN=Filter_0 && Filter_1 && Filter_2
|
||
|
# #Filter_0 looking for rx pkt with DA is broadcast address
|
||
|
# Filter_0={
|
||
|
# type=0x41
|
||
|
# repeat=6
|
||
|
# byte=ff
|
||
|
# offset=0
|
||
|
# }
|
||
|
# #Filter_1 looking for rx pkt with EtherType is 0x0806(ARP)
|
||
|
# Filter_1={
|
||
|
# type=0x41
|
||
|
# repeat=1
|
||
|
# byte=08:06
|
||
|
# offset=20
|
||
|
# }
|
||
|
# #Filter_2 looking for rx pkt with ARP target protocol addr 192.168.0.104
|
||
|
# Filter_2={
|
||
|
# type=0x41
|
||
|
# repeat=1
|
||
|
# byte=c0:a8:00:68
|
||
|
# offset=46
|
||
|
# }
|
||
|
# }
|
||
|
#-------------------------------------------------------------------------------------
|
||
|
# example: filter to check if the destination MAC address is unicast pkt
|
||
|
# mef_entry_0={
|
||
|
# mode=1 # HostSleep mode
|
||
|
# action=3 # Allow and Wake host
|
||
|
# filter_num=3 # Number of filter
|
||
|
# RPN=Filter_0
|
||
|
# #Filter_0 is Bit comparison filter, it always with type=0x43
|
||
|
# #Byte filter always has type, byte, mask, offset 4 filed
|
||
|
# #"byte" is the byte sequence constant with each byte in hex format, with ':' as delimiter between two byte
|
||
|
# #"mask" is also with each byte in hex format, with ':' as delimiter between two byte
|
||
|
# #"byte" should has the same length as "mask"
|
||
|
# #Filter_0 will check if the destination MAC address is unicast pkt
|
||
|
# Filter_0={
|
||
|
# type=0x43 #Bit comparison filter
|
||
|
# byte=00 #00 is the 1-byte sequence constant
|
||
|
# offset=0 #0 is the byte offset of the rx pkt
|
||
|
# mask=01 #1 is the 1-byte mask
|
||
|
# }
|
||
|
# }
|
||
|
#--------------------------------------------------------------------------------------------------
|
||
|
# example: Disable MEF filters
|
||
|
# mefcfg={
|
||
|
# #Criteria: bit0-broadcast, bit1-unicast, bit3-multicast
|
||
|
# Criteria=2 # Unicast frames are received during hostsleepmode
|
||
|
# NumEntries=0 # Number of activated MEF entries
|
||
|
# }
|
||
|
#--------------------------------------------------------------------------------------------------
|
||
|
# example: Test MEF filters
|
||
|
# mefcfg={
|
||
|
# Criteria=1
|
||
|
# NumEntries=1
|
||
|
# mef_entry_0={
|
||
|
# mode=4 # Test Mode
|
||
|
# action=16 # Invoke Test
|
||
|
# filter_num=0
|
||
|
# }
|
||
|
# }
|
||
|
#-----------------------------------------------------------------------------------------------------
|
||
|
# example: Test MEF filters
|
||
|
# mefcfg={
|
||
|
# Criteria=1
|
||
|
# NumEntries=1
|
||
|
# mef_entry_0={
|
||
|
# mode=4
|
||
|
# action=0
|
||
|
# filter_num=1
|
||
|
# RPN=Filter_0
|
||
|
# Filter_0={
|
||
|
# type=0x44 # test filter
|
||
|
# repeat=2 # 2 copies of 'BE:EF'
|
||
|
# byte=BE:EF # 'BE:EF' is the byte sequence constant
|
||
|
# offset=18 # 18 is the byte offset of the equal length field of rx'd pkt.
|
||
|
# dest=00:50:43:20:5a:82 # '00:50:43:20:5a:82' is the byte sequence constant
|
||
|
# }
|
||
|
# }
|
||
|
# }
|
||
|
#----------------------------------------------------------------------------------------------------
|
||
|
#example: Filter broadcast/ipv4 multicast/ipv6 multicast packets in non hostsleep mode
|
||
|
#mefcfg={
|
||
|
# Criteria=9 # broadcast and multicast frames
|
||
|
# NumEntries=1 # Number of activated MEF entries
|
||
|
# mef_entry_0={
|
||
|
# mode=2 # non HostSleep mode
|
||
|
# action=0 # discard and not wake host
|
||
|
# filter_num=3 # Number of filter
|
||
|
# RPN=Filter_0 || Filter_1 || Filter_2
|
||
|
# Filter_0={ # IPV4 multicast
|
||
|
# type=0x41 # byte comparison filter
|
||
|
# byte=01:00:5e # 01:00:5e is the byte constant to be compared
|
||
|
# offset=0 # 0 is the byte offset of the equal length field of rx'd pkt.
|
||
|
# repeat=1 #
|
||
|
# }
|
||
|
# Filter_1={ # broadcast packet check
|
||
|
# type=0x41 # Byte comparison filter
|
||
|
# repeat=6 # 6 copies of 'ff', means broadcast
|
||
|
# byte=ff # 'ff'(0xff) is the byte sequence constant with each byte
|
||
|
# # in hex format, with ':' as delimiter between two byte.
|
||
|
# offset=0 # 0 is the byte offset of the equal length field of rx'd pkt.
|
||
|
# }
|
||
|
# Filter_2={ # IPV6 multicast
|
||
|
# type=0x41 # byte comparison filter
|
||
|
# byte=33:33 # 33:33 is the byte constant to be compared
|
||
|
# offset=0 # 0 is the byte offset of the equal length field of rx'd pkt.
|
||
|
# repeat=1 #
|
||
|
# }
|
||
|
# }
|
||
|
#}
|
||
|
#------------------------------------------------------------------------------------------------------
|