[SCM] Samba Shared Repository - branch master updated

Matthieu Patou mat at samba.org
Sat Oct 30 10:44:36 MDT 2010


On 30/10/2010 20:13, Jelmer Vernooij wrote:
> Hi Matthieu,
>
> On Sat, 2010-10-30 at 16:27 +0200, Matthieu Patou wrote:
>> - Log -----------------------------------------------------------------
>> commit dc0000e1a8f5233608d5bf59730200af3e041ce5
>> Author: Matthieu Patou<mat at matws.net>
>> Date:   Thu Oct 28 13:09:51 2010 +0400
>>
>>      provision: when deriving netbiosname from hostname force the netbiosname to be compliant
>>
>>      It means no space/_/-/@.... and less than 16 chars.
>>
>> diff --git a/source4/scripting/python/samba/provision.py b/source4/scripting/python/samba/provision.py
>> index 5205ba5..49ad5d7 100644
>> --- a/source4/scripting/python/samba/provision.py
>> +++ b/source4/scripting/python/samba/provision.py
>> @@ -443,6 +443,11 @@ def guess_names(lp=None, hostname=None, domain=None, dnsdomain=None,
>>       netbiosname = lp.get("netbios name")
>>       if netbiosname is None:
>>           netbiosname = hostname
>> +        # remove forbidden chars
>> +        for char in  " !#$%&'()-.@^_{}~":
>> +            netbiosname = "".join(netbiosname.split(char))
>> +        #force the length to be<16
>> +        netbiosname = netbiosname[0:15]
>>       assert netbiosname is not None
>>       netbiosname = netbiosname.upper()
>>       if not valid_netbios_name(netbiosname):
>> @@ -534,7 +539,14 @@ def make_smbconf(smbconf, setup_path, hostname, domain, realm, serverrole,
>>       assert smbconf is not None
>>       if hostname is None:
>>           hostname = socket.gethostname().split(".")[0]
>> -    netbiosname = hostname.upper()
>> +        netbiosname = hostname.upper()
>> +        # remove forbidden chars
>> +        for char in  " !#$%&'()-.@^_{}~":
>> +            netbiosname = "".join(netbiosname.split(char))
> This logic is flawed - those characters are the ones that are allowed
> (in addition to alphanumeric characters). Any other characters should be
> stripped out.
>
Yeah I got it latetly
> It would also be nice if we could share the list of acceptable NetBIOS
> name characters between these two functions.
Sure
>> +        #force the length to be<16
>> +        netbiosname = netbiosname[0:15]
> If we have to do this sort of mangling I wonder if we shouldn't better
> raise an error and let the user specify a name.
Because some hosts on the build farm have more than 16 chars in the name.

-- 
Matthieu Patou
Samba Team        http://samba.org
Private repo      http://git.samba.org/?p=mat/samba.git;a=summary




More information about the samba-technical mailing list