Modules#

MAC Address Filtering

MAC Address Filtering#

API and Callbacks for the MAC Address Filtering Component.

This plugin artificially limits what the stack hears by filtering the packets just above the lower MAC. The plugin can be configured on the fly via CLI with the short or long address of devices whose packets will be dropped or allowed. There are two lists, a short address list (2-byte node ID) and a long address list (8-byte IEEE address). Each list may be configured as either an allow list or block list. The default is a block list with no addresses configured (accept all packets normally). A separate option allows or drops packets with no address information (e.g., Beacon Requests). NOTE: The radio will still generate and process MAC ACKs for packets. This plugin cannot be used to effect the behavior of MAC ACKs, which are handled by the RAIL library and radio hardware.

API#

void

Print configuration command.

void

Filter out the no address command.

void

Add the short address command.

void

Set the short address list type.

void

Set the long address list type.

void

Add long address.

void

Clear the short address list.

void

Clear the long address list.

void
emberAfPluginMacAddressFilteringAddPanIdCommand(sl_cli_command_arg_t *arguments)

Add panID.

void
emberAfPluginMacAddressFilteringPanIdDeleteEntry(sl_cli_command_arg_t *arguments)

Delete a panID entry.

void
emberAfPluginMacAddressFilteringClearPanIdList(sl_cli_command_arg_t *arguments)

Clear the panID list.

void
emberAfPluginMacAddressFilteringSetPanIdListType(sl_cli_command_arg_t *arguments)

Set the list type for panID list.

void
emberAfPluginMacAddressFilteringReset(sl_cli_command_arg_t *arguments)

MAC address filtering reset.

void

Clear all lists for MAC address filtering.

void

Delete an entry from short address list.

void

Delete an entry from long address list.

EmberStatus
emberAfPluginMacAddressFilteringGetStatsForShortAddress(uint8_t index, uint32_t *matchCountForIndexPtr)

Get stats for a short address.

void
emberAfPluginMacAddressFilteringGetStats(bool shortMode, uint32_t *allowedPacketCountPtr, uint32_t *droppedPacketCountPtr, uint32_t *totalPacketCountPtr)

Get MAC address filtering stats. Get the allowed, dropped and total packet counts.

API Documentation#

emberAfPluginMacAddressFilteringPrintConfigCommand#

void emberAfPluginMacAddressFilteringPrintConfigCommand (sl_cli_command_arg_t * arguments)

Print configuration command.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 53 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringFilterNoAddressCommand#

void emberAfPluginMacAddressFilteringFilterNoAddressCommand (sl_cli_command_arg_t * arguments)

Filter out the no address command.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 60 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringAddShortAddressCommand#

void emberAfPluginMacAddressFilteringAddShortAddressCommand (sl_cli_command_arg_t * arguments)

Add the short address command.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 67 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringSetShortAddressListType#

void emberAfPluginMacAddressFilteringSetShortAddressListType (sl_cli_command_arg_t * arguments)

Set the short address list type.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 74 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringSetLongAddressListType#

void emberAfPluginMacAddressFilteringSetLongAddressListType (sl_cli_command_arg_t * arguments)

Set the long address list type.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 81 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringAddLongAddressCommand#

void emberAfPluginMacAddressFilteringAddLongAddressCommand (sl_cli_command_arg_t * arguments)

Add long address.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 88 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringClearShortAddressList#

void emberAfPluginMacAddressFilteringClearShortAddressList (sl_cli_command_arg_t * arguments)

Clear the short address list.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 95 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringClearLongAddressList#

void emberAfPluginMacAddressFilteringClearLongAddressList (sl_cli_command_arg_t * arguments)

Clear the long address list.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 102 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringAddPanIdCommand#

void emberAfPluginMacAddressFilteringAddPanIdCommand (sl_cli_command_arg_t * arguments)

Add panID.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 109 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringPanIdDeleteEntry#

void emberAfPluginMacAddressFilteringPanIdDeleteEntry (sl_cli_command_arg_t * arguments)

Delete a panID entry.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 116 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringClearPanIdList#

void emberAfPluginMacAddressFilteringClearPanIdList (sl_cli_command_arg_t * arguments)

Clear the panID list.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 123 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringSetPanIdListType#

void emberAfPluginMacAddressFilteringSetPanIdListType (sl_cli_command_arg_t * arguments)

Set the list type for panID list.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 130 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringReset#

void emberAfPluginMacAddressFilteringReset (sl_cli_command_arg_t * arguments)

MAC address filtering reset.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 137 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringClearAll#

void emberAfPluginMacAddressFilteringClearAll (void )

Clear all lists for MAC address filtering.

Parameters
N/A

* arguments Ver.: always


Definition at line 144 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringShortAddressDeleteEntry#

void emberAfPluginMacAddressFilteringShortAddressDeleteEntry (sl_cli_command_arg_t * arguments)

Delete an entry from short address list.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 151 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringLongAddressDeleteEntry#

void emberAfPluginMacAddressFilteringLongAddressDeleteEntry (sl_cli_command_arg_t * arguments)

Delete an entry from long address list.

Parameters
N/Aarguments

* arguments Ver.: always


Definition at line 158 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringGetStatsForShortAddress#

EmberStatus emberAfPluginMacAddressFilteringGetStatsForShortAddress (uint8_t index, uint32_t * matchCountForIndexPtr)

Get stats for a short address.

Parameters
N/Aindex

Ver.: always

N/AmatchCountForIndexPtr

Ver.: always

Returns

  • EmberStatus status code


Definition at line 168 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h

emberAfPluginMacAddressFilteringGetStats#

void emberAfPluginMacAddressFilteringGetStats (bool shortMode, uint32_t * allowedPacketCountPtr, uint32_t * droppedPacketCountPtr, uint32_t * totalPacketCountPtr)

Get MAC address filtering stats. Get the allowed, dropped and total packet counts.

Parameters
N/AshortMode

Ver.: always

N/AallowedPacketCountPtr

Ver.: always

N/AdroppedPacketCountPtr

Ver.: always

N/AtotalPacketCountPtr

Ver.: always


Definition at line 178 of file app/framework/plugin-soc/mac-address-filtering/mac-address-filtering.h