From b012ab557b8f8a2f58dfbbe8b7818f3e6d8cf38f Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Sat, 6 Nov 2004 21:51:22 +0000 Subject: r3585: check sscanf return code metze (This used to be commit 9701abfa3a5f6351c8c7bced6adb751be9f5ff31) --- source4/libcli/ldap/ldap.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/source4/libcli/ldap/ldap.c b/source4/libcli/ldap/ldap.c index 2eea7b035a..dd689027f9 100644 --- a/source4/libcli/ldap/ldap.c +++ b/source4/libcli/ldap/ldap.c @@ -1227,6 +1227,7 @@ BOOL ldap_parse_basic_url(TALLOC_CTX *mem_ctx, const char *url, char protocol[11]; char tmp_host[255]; const char *p = url; + int ret; /* skip leading "URL:" (if any) */ if (strncasecmp( p, "URL:", 4) == 0) { @@ -1236,7 +1237,10 @@ BOOL ldap_parse_basic_url(TALLOC_CTX *mem_ctx, const char *url, /* Paranoia check */ SMB_ASSERT(sizeof(protocol)>10 && sizeof(tmp_host)>254); - sscanf(p, "%10[^:]://%254[^:/]:%d", protocol, tmp_host, &tmp_port); + ret = sscanf(p, "%10[^:]://%254[^:/]:%d", protocol, tmp_host, &tmp_port); + if (ret < 2) { + return False; + } if (strequal(protocol, "ldap")) { *port = 389; -- cgit