- 论坛徽章:
- 2
|
本帖最后由 shaohui973 于 2013-07-23 10:59 编辑
回复 4# 卖萌犯法
可以。
BPF_STMT(BPF_LD+BPF_H+BPF_ABS,12), /*从packet起始地址偏移12字节处加载2字节的内容到“累加器A”中(会做字节序转换,参考sk_run_filter()的实现)*/
BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, 0X0800,0,5), /*如果累加器A中的值为0x0800,则PC+0,否则PC+5(即最后一条命令,drop packet)*/
BPF_STMT(BPF_LD+BPF_B+BPF_ABS,23), /*从packet起始地址偏移23字节处加载1字节的内容到“累加器A”中(会做字节序转换,参考sk_run_filter()的实现),源码中有一处错误*/
BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, 0X11,0,3), /*如果累加器A中的值为0x11,则PC+0,否则PC+3(即最后一条命令,drop packet)*/
BPF_STMT(BPF_LD+BPF_H+BPF_ABS,36),
BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, DHCP_SERVER_PORT,0,1),
BPF_STMT(BPF_RET+BPF_K,-1), /* keep packet */
BPF_STMT(BPF_RET+BPF_K,0) /* drop packet */
|
|