This section specifies the syntax and semantics for the delete command.
The syntax for deletion is shown below.
<DeleteAction> ::= 'Delete' '=' (<NtplId> | 'All' | <IPAddrType> '==' <IPAddrList> | <Identifier> '==' <KeyDataSpec> | 'Tag' '==' <Identifier> )
The 'Delete' command reverts the effect of a specific Assign, HashMode, HashMask, IPFMode, IPMatchList, KeyType, KeyDef, KeyList command, identified by an Ntpl ID or tag. If 'All' is specified, all filters and ip addresses and macros will be deleted.
If the 'Tag' form of 'Delete' is used, all Ntpl commands with the tag specified will be deleted. This is especially useful in a multi-application scenario where each application configures its own subset of filters. Normally an application would start with a "Delete = All" statement to ensure no residual filters are configured before initiating the rest of its Ntpl statements. However in a multi-application scenario this would cause the deletion of all filters (including those used by the other applications). By using a unique tag for each application, an application can ensure that only its own filters are deleted.
You can also delete a list of IP addresses or keys, previously added with the IPMatchList Command or KeyList Command by listing them explicitly. Ranges and mask values cannot be deleted in this way, but must be deleted by use of the Ntpl ID.
This section describes an example where all used filters and macros are deleted.
The NTPL example of deletion of filters and macros is shown below.
Delete = All
This section describes how to delete a hash mode configuration.
Assume that the command "HashMode = Hash5Tuple" resulted in 42 as Ntpl ID. To delete the expression, issue the following command:
Delete = 42
This section shows how to delete two IPv4 addresses from the ip match list.
Delete = IPv4Addr == [10.10.10.1], [10.10.10.2]
This section shows how to delete two keys from the key database.
Delete = kt1 == ([10.240.10.128], [10.240.1.66], 5000, 80), ([10.240.10.128], [10.240.1.66], 5000, 81)