]> git.ipfire.org Git - thirdparty/iptables.git/commitdiff
fixes '_' in interface names bug (iptables)
authorHarald Welte <laforge@gnumonks.org>
Sat, 12 May 2001 04:38:31 +0000 (04:38 +0000)
committerHarald Welte <laforge@gnumonks.org>
Sat, 12 May 2001 04:38:31 +0000 (04:38 +0000)
fixes '+' in interface names bug (iptables-save)

ip6tables-save.c
ip6tables.c
iptables-save.c
iptables.c

index 8957e137df0a70e5e7ceb84bb379b808eea8ca4e..4af811a0aa473362a1a39c32e9194a07b0dbd56c 100644 (file)
@@ -51,7 +51,7 @@ print_iface(char letter, const char *iface, const unsigned char *mask,
                        if (iface[i] != '\0')
                                printf("%c", iface[i]);
                } else {
-                       if (iface[i] != '\0')
+                       if (iface[i] == '\0')
                                printf("+");
                        break;
                }
index ad2fc80c8c3c57d7e9d0b86fc9cff2bede7c8218..123d6a44367ce6d2dc89835c4c805b8e9b55db66 100644 (file)
@@ -745,7 +745,7 @@ parse_interface(const char *arg, char *vianame, unsigned char *mask)
                memset(mask + vialen + 1, 0, IFNAMSIZ - vialen - 1);
        }
        for (i = 0; vianame[i]; i++) {
-               if (!isalnum(vianame[i])) {
+               if (!isalnum(vianame[i]) && vianame[i] != '_') {
                        printf("Warning: wierd character in interface"
                               " `%s' (No aliases, :, ! or *).\n",
                               vianame);
index 282ca7f8890b721270f7ea80e07b5545db3a15b1..4dd60a40735f5e1f59f9c2d6deb1862192652e01 100644 (file)
@@ -48,7 +48,7 @@ print_iface(char letter, const char *iface, const unsigned char *mask,
                        if (iface[i] != '\0')
                                printf("%c", iface[i]);
                } else {
-                       if (iface[i] != '\0')
+                       if (iface[i] == '\0')
                                printf("+");
                        break;
                }
index bc76f8c7f2003cc1c09842643f29696cc3883db2..51aadddb17a63d24b5b6a2d908a972fea592ac55 100644 (file)
@@ -744,7 +744,7 @@ parse_interface(const char *arg, char *vianame, unsigned char *mask)
                memset(mask + vialen + 1, 0, IFNAMSIZ - vialen - 1);
        }
        for (i = 0; vianame[i]; i++) {
-               if (!isalnum(vianame[i])) {
+               if (!isalnum(vianame[i]) && vianame[i] != '_') {
                        printf("Warning: wierd character in interface"
                               " `%s' (No aliases, :, ! or *).\n",
                               vianame);