SHA256
1
0
forked from pool/iptables
OBS User unknown
2009-01-19 01:02:09 +00:00
committed by Git OBS Bridge
parent aa818808b5
commit e63923fee1
6 changed files with 51 additions and 25 deletions

View File

@@ -18,8 +18,8 @@
+ip6tables_batch_SOURCES = iptables-batch.c ip6tables.c xtables.c
+ip6tables_batch_CFLAGS = ${AM_CFLAGS} -DIP6T
+ip6tables_batch_LDFLAGS = ${iptables_LDFLAGS}
+ip6tables_batch_LDADD = ${iptables_LDADD}
+ip6tables_batch_LDFLAGS = ${ip6tables_LDFLAGS}
+ip6tables_batch_LDADD = ${ip6tables_LDADD}
+
# iptables-multi, semi-static
ip6tables_static_SOURCES = ${ip6tables_multi_SOURCES}
@@ -77,12 +77,12 @@
+#include <errno.h>
+#include <string.h>
+
+#include <xtables.h>
+#ifdef IP6T
+#include <ip6tables.h>
+#else
+#include <iptables.h>
+#endif
+#include <xtables.h>
+
+static char* errstr = NULL;
+
@@ -174,9 +174,9 @@
+
+// destructive
+static int
+tokenize(int* argc, char* argv[], size_t nargvsize, char* line)
+tokenize(int* argc, char* argv[], size_t nargvsize, char* iline)
+{
+ char* ptr = skipspace(line);
+ char* ptr = skipspace(iline);
+ int ret = 0;
+ char* word;
+
@@ -377,7 +377,7 @@
+ int ret = 1;
+ int numtok;
+ size_t llen = 0;
+ char* line = NULL;
+ char* iline = NULL;
+ ssize_t r = -1;
+ int nargc = 0;
+ char* nargv[256];
@@ -425,17 +425,17 @@
+ tables[3].handle = NULL;
+ current_table = &tables[0];
+
+ while((r = getline(&line, &llen, fp)) != -1)
+ while((r = getline(&iline, &llen, fp)) != -1)
+ {
+ if(llen < 1 || !*line)
+ if(llen < 1 || !*iline)
+ continue;
+ if(line[strlen(line)-1] == '\n')
+ line[strlen(line) -1 ] = '\0';
+ if(iline[strlen(iline)-1] == '\n')
+ iline[strlen(iline) -1 ] = '\0';
+
+ ++current_line;
+ nargc = 0;
+ errstr = NULL;
+ numtok = tokenize(&nargc, nargv, (sizeof(nargv)/sizeof(nargv[0])), line);
+ numtok = tokenize(&nargc, nargv, (sizeof(nargv)/sizeof(nargv[0])), iline);
+ if(numtok == -1)
+ {
+ }