iptables-1.3.2-20050720
[iptables.git] / extensions / libipt_XOR.c
index 3b05a30..2397916 100644 (file)
@@ -47,6 +47,7 @@ static int parse(int c, char **argv, int invert, unsigned int *flags,
        switch (c) {    
                case '1':
                        strncpy(info->key, optarg, 30);
+                       info->key[29] = '\0';
                        *flags |= IPT_KEY_SET;
                        break;
                case '2':
@@ -92,18 +93,19 @@ static struct option opts[] = {
        { 0 }
 };
 
-static struct iptables_target XOR = { NULL, 
-       "XOR",
-       IPTABLES_VERSION,
-       IPT_ALIGN(sizeof(struct ipt_XOR_info)),
-       IPT_ALIGN(sizeof(struct ipt_XOR_info)),
-       &help,
-       &init,
-       &parse,
-       &final_check,
-       &print,
-       &save,
-       opts 
+static struct iptables_target XOR = {
+       .next           = NULL, 
+       .name           = "XOR",
+       .version        = IPTABLES_VERSION,
+       .size           = IPT_ALIGN(sizeof(struct ipt_XOR_info)),
+       .userspacesize  = IPT_ALIGN(sizeof(struct ipt_XOR_info)),
+       .help           = &help,
+       .init           = &init,
+       .parse          = &parse,
+       .final_check    = &final_check,
+       .print          = &print,
+       .save           = &save,
+       .extra_opts     = opts 
 };
 
 void _init(void)