s3-util: Compare the maximum allowed length of a NetBIOS name
authorRoel van Meer <roel@1afa.com>
Tue, 4 Aug 2015 14:50:43 +0000 (16:50 +0200)
committerStefan Metzmacher <metze@samba.org>
Mon, 31 Aug 2015 12:39:49 +0000 (14:39 +0200)
This fixes a problem where is_myname() returns true if one of our names
is a substring of the specified name.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=11427

Reviewed-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
(cherry picked from commit 4e178ed498c594ffcd5592d0b792d47b064b9586)

Autobuild-User(v4-1-test): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(v4-1-test): Mon Aug 31 14:39:49 CEST 2015 on sn-devel-104

source3/lib/util.c

index 641a67eae25cf394a1d56464445de4edb2bb847a..0905ca2ad55ebb44ca9851a6753ce8ec412ef87d 100644 (file)
@@ -1194,7 +1194,7 @@ bool is_myname(const char *s)
        for (n=0; my_netbios_names(n); n++) {
                const char *nbt_name = my_netbios_names(n);
 
-               if (strncasecmp_m(nbt_name, s, strlen(nbt_name)) == 0) {
+               if (strncasecmp_m(nbt_name, s, MAX_NETBIOSNAME_LEN-1) == 0) {
                        ret=True;
                        break;
                }