|
@@ -59,12 +59,14 @@ static const char *hooknames[]
|
59
|
59
|
#endif
|
60
|
60
|
};
|
61
|
61
|
|
|
62
|
+#if 0
|
62
|
63
|
/* Convenience structures */
|
63
|
64
|
struct ipt_error_target
|
64
|
65
|
{
|
65
|
66
|
STRUCT_ENTRY_TARGET t;
|
66
|
67
|
char error[TABLE_MAXNAMELEN];
|
67
|
68
|
};
|
|
69
|
+#endif
|
68
|
70
|
|
69
|
71
|
struct chain_head;
|
70
|
72
|
struct rule_head;
|
|
@@ -638,10 +640,10 @@ static int iptcc_compile_chain(TC_HANDLE_T h, STRUCT_REPLACE *repl, struct chain
|
638
|
640
|
head = (void *)repl->entries + c->head_offset;
|
639
|
641
|
head->e.target_offset = sizeof(STRUCT_ENTRY);
|
640
|
642
|
head->e.next_offset = IPTCB_CHAIN_START_SIZE;
|
641
|
|
- strcpy(head->name.t.u.user.name, ERROR_TARGET);
|
642
|
|
- head->name.t.u.target_size =
|
|
643
|
+ strcpy(head->name.target.u.user.name, ERROR_TARGET);
|
|
644
|
+ head->name.target.u.target_size =
|
643
|
645
|
ALIGN(sizeof(struct ipt_error_target));
|
644
|
|
- strcpy(head->name.error, c->name);
|
|
646
|
+ strcpy(head->name.errorname, c->name);
|
645
|
647
|
} else {
|
646
|
648
|
repl->hook_entry[c->hooknum-1] = c->head_offset;
|
647
|
649
|
repl->underflow[c->hooknum-1] = c->foot_offset;
|
|
@@ -747,10 +749,10 @@ static int iptcc_compile_table(TC_HANDLE_T h, STRUCT_REPLACE *repl)
|
747
|
749
|
error = (void *)repl->entries + repl->size - IPTCB_CHAIN_ERROR_SIZE;
|
748
|
750
|
error->entry.target_offset = sizeof(STRUCT_ENTRY);
|
749
|
751
|
error->entry.next_offset = IPTCB_CHAIN_ERROR_SIZE;
|
750
|
|
- error->target.t.u.user.target_size =
|
|
752
|
+ error->target.target.u.user.target_size =
|
751
|
753
|
ALIGN(sizeof(struct ipt_error_target));
|
752
|
|
- strcpy((char *)&error->target.t.u.user.name, ERROR_TARGET);
|
753
|
|
- strcpy((char *)&error->target.error, "ERROR");
|
|
754
|
+ strcpy((char *)&error->target.target.u.user.name, ERROR_TARGET);
|
|
755
|
+ strcpy((char *)&error->target.errorname, "ERROR");
|
754
|
756
|
|
755
|
757
|
return 1;
|
756
|
758
|
}
|