The pseudocode translates into the following packet filter:
Name
"IP XNS ticker bcast filter"
pushField.w
12
pushLiteral.w
0x0600
eq
pushLiteral.w
0x76c
pushField.w
30
ge
pushLiteral.w
0x0898
pushField.w
30
lt
and
and
pushField.w
12
pushLiteral.w
0x0800
eq
pushLiteral.w
0x76c
pushField.w
24
ge
pushLiteral.w
0x0898
pushField.w
24
lt
and
and
or
not
Creating Packet Filters
# Assign this filter in the multicast path
# of a port only--this is very important
#
# XNS FILTERING SECTION
#
# get the type field of the packet and
# place it on top of the stack.
# put the type value for XNS on top of
# the stack.
# if the two values on the top of the
# stack are equal, then return a non-zero
# value.
# put the lowest socket value on top of
# the stack.
# put the value of the socket from the
# packet on top of the stack.
# compare if the value of the socket is
# greater than or equal to lower bound.
# put the highest socket value on top of
# the stack.
# put the value of the socket from the
# packet on top of the stack.
# compare if the value of the socket is
# less than the upper bound
# "and" together with "ge" and "lt" test
# to determine if the socket value is
# "within" the range. If it is, a "one"
# will be placed on the stack.
# compare if XNS & in range
#
# IP FILTERING SECTION
#
# get the type field of the packet and
# place it on top of the stack.
# put the type value for IP on top of
# the stack.
# if the two values on the top of the
# stack are equal, then return a non-zero
# value.
# put the lowest socket value on top of
# the stack (1900).
# put the value of the socket from the
# packet on top of the stack.
# compare if the value of the socket is
# greater than or equal to lower bound.
# put the highest socket value on top of
# the stack (2200).
# put the value of the socket from the
# packet on top of the stack.
# compare if the value of the socket is
# less than the upper bound
# "and" together with "ge" and "lt".
# test to determine if the socket value is
# "within" the range. If it is in range, a
# "one" will be placed on the stack.
# compare if IP and in range.
# determine if the type field is either
# XNS or IP.
# discard if (IP & in range) and (XNS & in
# range).
12-13
Need help?
Do you have a question about the SUPERSTACK 2200 and is the answer not in the manual?
Questions and answers