From dce17ab4526920f1930f1fee4245ea66c33093ec Mon Sep 17 00:00:00 2001 From: "/C=EU/ST=EU/CN=Patrick McHardy/emailAddress=kaber@trash.net" Date: Wed, 19 Sep 2007 12:47:45 +0000 Subject: [Patch] ulogd, fix snprintf return The attached patch fixes the treatment of snprintf return. Eric Leblond --- ulogd/extensions/ulogd_BASE.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ulogd/extensions/ulogd_BASE.c b/ulogd/extensions/ulogd_BASE.c index 412dc89..61bad21 100644 --- a/ulogd/extensions/ulogd_BASE.c +++ b/ulogd/extensions/ulogd_BASE.c @@ -82,8 +82,12 @@ static ulog_iret_t *_interp_raw(ulog_interpreter_t *ip, for (i = 0; i < pkt->mac_len; i++, p++) { tmp = snprintf(ptr+len, siz-len, "%02x%s", *p, i==pkt->mac_len-1 ? "":":"); - if (tmp > siz-len) + if (tmp < 0) break; + if (tmp >= siz-len) { + buf[siz] = '\0'; + break; + } len += tmp; } ret[0].value.ptr = buf; -- cgit v1.2.3