--- libaitio/src/Attic/patricia.c 2011/06/07 11:49:39 1.2 +++ libaitio/src/Attic/patricia.c 2011/08/29 12:00:57 1.3 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: patricia.c,v 1.2 2011/06/07 11:49:39 misho Exp $ +* $Id: patricia.c,v 1.3 2011/08/29 12:00:57 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -151,9 +151,10 @@ static char *prefix_toa2x(prefix_t *prefix, char *buff assert (prefix->bitlen <= 32); a = prefix_touchar(prefix); if (with_len) - sprintf(buff, "%d.%d.%d.%d/%d", a[0], a[1], a[2], a[3], prefix->bitlen); + snprintf(buff, with_len, "%d.%d.%d.%d/%d", a[0], a[1], a[2], + a[3], prefix->bitlen); else - sprintf(buff, "%d.%d.%d.%d", a[0], a[1], a[2], a[3]); + snprintf(buff, 16, "%d.%d.%d.%d", a[0], a[1], a[2], a[3]); return buff; } #ifdef HAVE_IPV6 @@ -162,7 +163,8 @@ static char *prefix_toa2x(prefix_t *prefix, char *buff a = (char*) inet_ntop(AF_INET6, &prefix->add.sin6, buff, 48 /* a guess value */); if (a && with_len) { assert(prefix->bitlen <= 128); - sprintf(buff + strlen(buff), "/%d", prefix->bitlen); + snprintf(buff + strlen(buff), with_len - strlen(buff), + "/%d", prefix->bitlen); } return buff; }