[netfilter-cvslog] r3245 - trunk/iptables/extensions

/C=DE/ST=Berlin/L=Berlin/O=Netfilter /C=DE/ST=Berlin/L=Berlin/O=Netfilter
Thu Oct 21 00:02:47 CEST 2004


Author: /C=DE/ST=Berlin/L=Berlin/O=Netfilter Project/OU=Development/CN=laforge/emailAddress=laforge at netfilter.org
Date: 2004-10-21 00:02:47 +0200 (Thu, 21 Oct 2004)
New Revision: 3245

Modified:
   trunk/iptables/extensions/libipt_hashlimit.c
Log:
minor syntax fixes


Modified: trunk/iptables/extensions/libipt_hashlimit.c
===================================================================
--- trunk/iptables/extensions/libipt_hashlimit.c	2004-10-20 16:24:29 UTC (rev 3244)
+++ trunk/iptables/extensions/libipt_hashlimit.c	2004-10-20 22:02:47 UTC (rev 3245)
@@ -116,21 +116,26 @@
 	if (!arg)
 		return -1;
 
+	r->cfg.mode = 0;
+
 	for (tok = strtok(arg, ",|");
 	     tok;
 	     tok = strtok(NULL, ",|")) {
 		if (!strcmp(tok, "dstip"))
 			r->cfg.mode |= IPT_HASHLIMIT_HASH_DIP;
-		else if (!strcmp(optarg, "srcip"))
+		else if (!strcmp(tok, "srcip"))
 			r->cfg.mode |= IPT_HASHLIMIT_HASH_SIP;
-		else if (!strcmp(optarg, "srcport"))
+		else if (!strcmp(tok, "srcport"))
 			r->cfg.mode |= IPT_HASHLIMIT_HASH_SPT;
-		else if (!strcmp(optarg, "dstport"))
+		else if (!strcmp(tok, "dstport"))
 			r->cfg.mode |= IPT_HASHLIMIT_HASH_DPT;
-		else
+		else {
+			free(arg);
 			return -1;
+		}
 	}
-	return 1;
+	free(arg);
+	return 0;
 }
 
 #define PARAM_LIMIT		0x00000001
@@ -274,25 +279,25 @@
 	if (r->cfg.mode & IPT_HASHLIMIT_HASH_SIP) {
 		if (prevmode)
 			putchar(separator);
-		puts("srcip");
+		fputs("srcip", stdout);
 		prevmode = 1;
 	}
 	if (r->cfg.mode & IPT_HASHLIMIT_HASH_SPT) {
 		if (prevmode)
 			putchar(separator);
-		puts("srcport");
+		fputs("srcport", stdout);
 		prevmode = 1;
 	}
 	if (r->cfg.mode & IPT_HASHLIMIT_HASH_DIP) {
 		if (prevmode)
 			putchar(separator);
-		puts("dstip");
+		fputs("dstip", stdout);
 		prevmode = 1;
 	}
 	if (r->cfg.mode & IPT_HASHLIMIT_HASH_SPT) {
 		if (prevmode)
 			putchar(separator);
-		puts("dstport");
+		fputs("dstport", stdout);
 	}
 	putchar(' ');
 }
@@ -305,9 +310,9 @@
 {
 	struct ipt_hashlimit_info *r = 
 		(struct ipt_hashlimit_info *)match->data;
-	puts("limit: avg "); print_rate(r->cfg.avg);
+	fputs("limit: avg ", stdout); print_rate(r->cfg.avg);
 	printf("burst %u ", r->cfg.burst);
-	puts("mode ");
+	fputs("mode ", stdout);
 	print_mode(r, '-');
 	if (r->cfg.size)
 		printf("htable-size %u ", r->cfg.size);
@@ -325,11 +330,11 @@
 	struct ipt_hashlimit_info *r = 
 		(struct ipt_hashlimit_info *)match->data;
 
-	puts("--hashlimit "); print_rate(r->cfg.avg);
+	fputs("--hashlimit ", stdout); print_rate(r->cfg.avg);
 	if (r->cfg.burst != IPT_HASHLIMIT_BURST)
 		printf("--hashlimit-burst %u ", r->cfg.burst);
 
-	puts("--mode ");
+	fputs("--mode ", stdout);
 	print_mode(r, ',');
 
 	if (r->cfg.size)




More information about the netfilter-cvslog mailing list