- fw3_pr("-A mssfix");
- fw3_format_in_out(NULL, dev);
- fw3_format_src_dest(NULL, sub);
- fw3_pr(" -p tcp --tcp-flags SYN,RST SYN");
- fw3_format_limit(&zone->log_limit);
- fw3_format_comment(zone->name, " (mtu_fix logging)");
- fw3_pr(" -j LOG --log-prefix \"MSSFIX(%s): \"\n", zone->name);
+ snprintf(buf, sizeof(buf) - 1, "MSSFIX(%s): ", zone->name);
+
+ r = fw3_ipt_rule_create(handle, &tcp, NULL, dev, NULL, sub);
+ fw3_ipt_rule_addarg(r, false, "--tcp-flags", "SYN,RST");
+ fw3_ipt_rule_addarg(r, false, "SYN", NULL);
+ fw3_ipt_rule_limit(r, &zone->log_limit);
+ fw3_ipt_rule_comment(r, "%s (mtu_fix logging)", zone->name);
+ fw3_ipt_rule_target(r, "LOG");
+ fw3_ipt_rule_addarg(r, false, "--log-prefix", buf);
+ fw3_ipt_rule_append(r, "mssfix");