dovecot-2.2: Fixed sscanf() error handling.

dovecot at dovecot.org dovecot at dovecot.org
Sun Nov 24 22:20:03 EET 2013


details:   http://hg.dovecot.org/dovecot-2.2/rev/a9d4cdb09297
changeset: 17026:a9d4cdb09297
user:      Timo Sirainen <tss at iki.fi>
date:      Sun Nov 24 21:41:06 2013 +0200
description:
Fixed sscanf() error handling.
Patch by Jann Horn.

diffstat:

 src/lib-dns/dns-lookup.c    |  2 +-
 src/lib-settings/settings.c |  2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diffs (24 lines):

diff -r 89dd80dfb86e -r a9d4cdb09297 src/lib-dns/dns-lookup.c
--- a/src/lib-dns/dns-lookup.c	Sun Nov 24 19:58:45 2013 +0000
+++ b/src/lib-dns/dns-lookup.c	Sun Nov 24 21:41:06 2013 +0200
@@ -102,7 +102,7 @@
 		}
 		/* first line: <ret> <ip count> */
 		if (sscanf(line, "%d %u", &result->ret,
-			   &result->ips_count) == 0)
+			   &result->ips_count) != 2)
 			return -1;
 		if (result->ret != 0) {
 			result->error = net_gethosterror(result->ret);
diff -r 89dd80dfb86e -r a9d4cdb09297 src/lib-settings/settings.c
--- a/src/lib-settings/settings.c	Sun Nov 24 19:58:45 2013 +0000
+++ b/src/lib-settings/settings.c	Sun Nov 24 21:41:06 2013 +0200
@@ -44,7 +44,7 @@
 {
 	int num;
 
-	if (!sscanf(value, "%i", &num) || num < 0)
+	if (sscanf(value, "%i", &num) != 1 || num < 0)
 		return t_strconcat("Invalid number: ", value, NULL);
 	*result = num;
 	return NULL;


More information about the dovecot-cvs mailing list