[netfilter-cvslog] r6864 - trunk/libnetfilter_conntrack/src/expect
pablo at netfilter.org
pablo at netfilter.org
Thu Jun 7 19:05:46 CEST 2007
Author: pablo at netfilter.org
Date: 2007-06-07 19:05:46 +0200 (Thu, 07 Jun 2007)
New Revision: 6864
Modified:
trunk/libnetfilter_conntrack/src/expect/snprintf.c
trunk/libnetfilter_conntrack/src/expect/snprintf_default.c
Log:
nfexp_snprintf behaves as snprintf C99
Modified: trunk/libnetfilter_conntrack/src/expect/snprintf.c
===================================================================
--- trunk/libnetfilter_conntrack/src/expect/snprintf.c 2007-06-07 16:53:56 UTC (rev 6863)
+++ trunk/libnetfilter_conntrack/src/expect/snprintf.c 2007-06-07 17:05:46 UTC (rev 6864)
@@ -26,8 +26,7 @@
}
/* NULL terminated string */
- if (snprintf(buf+size, len-size, "\0") == -1)
- return -1;
+ buf[size+1 > len ? len-1 : size] = '\0';
return size;
}
Modified: trunk/libnetfilter_conntrack/src/expect/snprintf_default.c
===================================================================
--- trunk/libnetfilter_conntrack/src/expect/snprintf_default.c 2007-06-07 16:53:56 UTC (rev 6863)
+++ trunk/libnetfilter_conntrack/src/expect/snprintf_default.c 2007-06-07 17:05:46 UTC (rev 6864)
@@ -17,43 +17,31 @@
}
int __snprintf_expect_default(char *buf,
- unsigned int remain,
+ unsigned int len,
const struct nf_expect *exp,
unsigned int msg_type,
unsigned int flags)
{
- int ret = 0, size = 0;
+ int ret = 0, size = 0, offset = 0;
switch(msg_type) {
case NFCT_T_NEW:
- ret = snprintf(buf, remain, "%9s ", "[NEW]");
+ ret = snprintf(buf, len, "%9s ", "[NEW]");
break;
default:
break;
}
- if (ret == -1)
- return -1;
- size += ret;
- remain -= ret;
+ BUFFER_SIZE(ret, size, len, offset);
- ret = __snprintf_expect_proto(buf+size, remain, exp);
- if (ret == -1)
- return -1;
- size += ret;
- remain -= ret;
+ ret = __snprintf_expect_proto(buf+offset, len, exp);
+ BUFFER_SIZE(ret, size, len, offset);
- ret = __snprintf_address(buf+size, remain, &exp->expected.tuple[__DIR_ORIG]);
- if (ret == -1)
- return -1;
- size += ret;
- remain -= ret;
+ ret = __snprintf_address(buf+offset, len, &exp->expected.tuple[__DIR_ORIG]);
+ BUFFER_SIZE(ret, size, len, offset);
- ret = __snprintf_proto(buf+size, remain, &exp->expected.tuple[__DIR_ORIG]);
- if (ret == -1)
- return -1;
- size += ret;
- remain -= ret;
+ ret = __snprintf_proto(buf+offset, len, &exp->expected.tuple[__DIR_ORIG]);
+ BUFFER_SIZE(ret, size, len, offset);
/* Delete the last blank space */
size--;
More information about the netfilter-cvslog
mailing list