From f84476cf87b1740ddbd7b3d829f417c51c7bd039 Mon Sep 17 00:00:00 2001 From: Diogo Sousa Date: Sat, 8 Jun 2013 02:56:36 +0100 Subject: [PATCH] Fixed possible overflow in create_mask(). --- src/common/outbound.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/common/outbound.c b/src/common/outbound.c index 1e90016e..84240a47 100644 --- a/src/common/outbound.c +++ b/src/common/outbound.c @@ -487,19 +487,19 @@ create_mask (session * sess, char *mask, char *mode, char *typestr, int deop) switch (type) { case 0: - snprintf (tbuf, TBUFSIZE, "%s%s *!*@%s.*", mode, p2, domain); + snprintf (tbuf, sizeof (tbuf), "%s%s *!*@%s.*", mode, p2, domain); break; case 1: - snprintf (tbuf, TBUFSIZE, "%s%s *!*@%s", mode, p2, fullhost); + snprintf (tbuf, sizeof (tbuf), "%s%s *!*@%s", mode, p2, fullhost); break; case 2: - snprintf (tbuf, TBUFSIZE, "%s%s *!%s@%s.*", mode, p2, username, domain); + snprintf (tbuf, sizeof (tbuf), "%s%s *!%s@%s.*", mode, p2, username, domain); break; case 3: - snprintf (tbuf, TBUFSIZE, "%s%s *!%s@%s", mode, p2, username, fullhost); + snprintf (tbuf, sizeof (tbuf), "%s%s *!%s@%s", mode, p2, username, fullhost); break; } } else @@ -507,26 +507,26 @@ create_mask (session * sess, char *mask, char *mode, char *typestr, int deop) switch (type) { case 0: - snprintf (tbuf, TBUFSIZE, "%s%s *!*@*%s", mode, p2, domain); + snprintf (tbuf, sizeof (tbuf), "%s%s *!*@*%s", mode, p2, domain); break; case 1: - snprintf (tbuf, TBUFSIZE, "%s%s *!*@%s", mode, p2, fullhost); + snprintf (tbuf, sizeof (tbuf), "%s%s *!*@%s", mode, p2, fullhost); break; case 2: - snprintf (tbuf, TBUFSIZE, "%s%s *!%s@*%s", mode, p2, username, domain); + snprintf (tbuf, sizeof (tbuf), "%s%s *!%s@*%s", mode, p2, username, domain); break; case 3: - snprintf (tbuf, TBUFSIZE, "%s%s *!%s@%s", mode, p2, username, fullhost); + snprintf (tbuf, sizeof (tbuf), "%s%s *!%s@%s", mode, p2, username, fullhost); break; } } } else { - snprintf (tbuf, TBUFSIZE, "%s %s", mode, mask); + snprintf (tbuf, sizeof (tbuf), "%s %s", mode, mask); } return g_strdup (tbuf);