summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimo Sorce <idra@samba.org>2001-07-03 00:23:38 +0000
committerSimo Sorce <idra@samba.org>2001-07-03 00:23:38 +0000
commit1aef52245229741bc24c3e8147fa86eaa20fe9b2 (patch)
tree1f016b57f12910f87053c32f30678ebb73f10cec
parent1ab31e5db53bc839d2785cce4d3c739c8004bbf6 (diff)
downloadsamba-1aef52245229741bc24c3e8147fa86eaa20fe9b2.tar.gz
samba-1aef52245229741bc24c3e8147fa86eaa20fe9b2.tar.xz
samba-1aef52245229741bc24c3e8147fa86eaa20fe9b2.zip
- sorry, forgot to test a pointer
-rw-r--r--source/nmbd/nmbd.c47
1 files changed, 26 insertions, 21 deletions
diff --git a/source/nmbd/nmbd.c b/source/nmbd/nmbd.c
index 2969c332d57..8a6bf383d18 100644
--- a/source/nmbd/nmbd.c
+++ b/source/nmbd/nmbd.c
@@ -569,8 +569,10 @@ static BOOL init_structs(void)
*/
/* Work out the max number of netbios aliases that we have */
ptr = lp_netbios_aliases();
- for( namecount=0; *ptr; namecount++,ptr++ )
- ;
+ namecount = 0;
+ if (ptr)
+ for( ; *ptr; namecount++,ptr++ )
+ ;
if ( *global_myname )
namecount++;
@@ -588,28 +590,31 @@ static BOOL init_structs(void)
my_netbios_names[namecount++] = global_myname;
ptr = lp_netbios_aliases();
- while ( *ptr )
+ if (ptr)
{
- nbname = strdup(*ptr);
- if (nbname == NULL)
+ while ( *ptr )
{
- DEBUG(0,("init_structs: malloc fail when allocating names.\n"));
- return False;
+ nbname = strdup(*ptr);
+ if (nbname == NULL)
+ {
+ DEBUG(0,("init_structs: malloc fail when allocating names.\n"));
+ return False;
+ }
+ strupper( nbname );
+ /* Look for duplicates */
+ nodup=1;
+ for( n=0; n<namecount; n++ )
+ {
+ if( 0 == strcmp( nbname, my_netbios_names[n] ) )
+ nodup=0;
+ }
+ if (nodup)
+ my_netbios_names[namecount++] = nbname;
+ else
+ free(nbname);
+
+ ptr++;
}
- strupper( nbname );
- /* Look for duplicates */
- nodup=1;
- for( n=0; n<namecount; n++ )
- {
- if( 0 == strcmp( nbname, my_netbios_names[n] ) )
- nodup=0;
- }
- if (nodup)
- my_netbios_names[namecount++] = nbname;
- else
- free(nbname);
-
- ptr++;
}
/* Terminate name list */