急!一个关于libdnet操作防火墙规则的问题
最近正在学习libdnet开发包控制防火墙,用的防火墙是pktfilter,libdnet版本1.11。在使用fw_add函数添加规则时发现不能添加规则并未实现。分步检查时发现fw_open()函数的返回值一直是固定值,我怀疑自己使用该函数时有错误,但是无从下手,请高手指点:1为什么fw_open()返回值固定?
2为何无法加入规则,如何解决?
最好详细一些,谢谢!!!QQ:228708788 除睡觉时间在线等候
关键代码如下:
void main()
{
struct fw_rule *firewall_rule;
fw_t *firewall_handle;
if (fw_open()==NULL)
printf("111111111111111111");
else
{
printf("22222222222222222 !\n"); /*无论是否打开防火墙,此处一直显示22222222222,问题在此
firewall_handle=fw_open();
fw_loop(firewall_handle,show_firewall_fules,0);
firewall_rule=(struct fw_rule*)malloc(sizeof(struct fw_rule));
firewall_rule->fw_op=FW_OP_BLOCK;
firewall_rule->fw_dir=FW_DIR_IN;
strcpy(firewall_rule->fw_device,"eth0");
firewall_rule->fw_proto=6;
addr_aton("172.29.6.57",&firewall_rule->fw_src);
addr_aton("172.29.6.49",&firewall_rule->fw_dst);
fw_add(firewall_handle,firewall_rule);
fw_close(firewall_handle);}
}
--------------------编程问答-------------------- if (fw_open()==NULL)
这里已经open了
下面还open什么呢?
--------------------编程问答-------------------- 好像没那么简单,呵呵. --------------------编程问答-------------------- 我也想了解,谢谢LZ.
补充:云计算 , 云安全