# esp spi 100
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 0 => reg 1 ]
[ cmp eq reg 1 0x64000000 ]
# esp spi != 100
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 0 => reg 1 ]
[ cmp neq reg 1 0x64000000 ]
# esp spi 111-222
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 0 => reg 1 ]
[ cmp gte reg 1 0x6f000000 ]
[ cmp lte reg 1 0xde000000 ]
# esp spi != 111-222
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 0 => reg 1 ]
[ range neq reg 1 0x6f000000 0xde000000 ]
# esp spi { 100, 102}
__set%d test-inet 3
__set%d test-inet 0
element 64000000 : 0 [end] element 66000000 : 0 [end]
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# esp spi != { 100, 102}
__set%d test-inet 3
__set%d test-inet 0
element 64000000 : 0 [end] element 66000000 : 0 [end]
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# esp spi { 100-102}
__set%d test-inet 7
__set%d test-inet 0
element 00000000 : 1 [end] element 64000000 : 0 [end] element 67000000 : 1 [end]
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 0 => reg 1 ]
[ lookup reg 1 set __set%d ]
# esp spi != { 100-102}
__set%d test-inet 7
__set%d test-inet 0
element 00000000 : 1 [end] element 64000000 : 0 [end] element 67000000 : 1 [end]
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 0 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# esp sequence 22
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 4 => reg 1 ]
[ cmp eq reg 1 0x16000000 ]
# esp sequence 22-24
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 4 => reg 1 ]
[ cmp gte reg 1 0x16000000 ]
[ cmp lte reg 1 0x18000000 ]
# esp sequence != 22-24
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 4 => reg 1 ]
[ range neq reg 1 0x16000000 0x18000000 ]
# esp sequence { 22, 24}
__set%d test-inet 3
__set%d test-inet 0
element 16000000 : 0 [end] element 18000000 : 0 [end]
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 4 => reg 1 ]
[ lookup reg 1 set __set%d ]
# esp sequence != { 22, 24}
__set%d test-inet 3
__set%d test-inet 0
element 16000000 : 0 [end] element 18000000 : 0 [end]
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 4 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]
# esp sequence { 22-25}
__set%d test-inet 7
__set%d test-inet 0
element 00000000 : 1 [end] element 16000000 : 0 [end] element 1a000000 : 1 [end]
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 4 => reg 1 ]
[ lookup reg 1 set __set%d ]
# esp sequence != { 22-25}
__set%d test-inet 7
__set%d test-inet 0
element 00000000 : 1 [end] element 16000000 : 0 [end] element 1a000000 : 1 [end]
inet test-inet input
[ meta load l4proto => reg 1 ]
[ cmp eq reg 1 0x00000032 ]
[ payload load 4b @ transport header + 4 => reg 1 ]
[ lookup reg 1 set __set%d 0x1 ]