I have found in file /usr/share/perl5/EBox/Samba/User.pm code, that generates new user id:
# Method: lastUid
#
# Returns the last uid used.
#
# Parameters:
#
# system - boolean: if true, it returns the last uid for system users,
# otherwise the last uid for normal users
#
# Returns:
#
# string - last uid
#
sub lastUid
{
my ($class, $system) = @_;
my $lastUid = -1;
my $sambaModule = EBox::Global->modInstance('samba');
foreach my $user (@{$sambaModule->users($system)}) {
my $uid = $user->get('uidNumber');
if ($system) {
last if ($uid >= MINUID);
} else {
next if ($uid < MINUID);
}
if ($uid > $lastUid) {
$lastUid = $uid;
}
}
my $ret;
if ($system) {
$ret = ($lastUid < SYSMINUID ? SYSMINUID : $lastUid);
} else {
$ret = ($lastUid < MINUID ? MINUID : $lastUid);
}
return $ret;
}
So yes, seems it lookups current system maximum user id (that is 65534 for all default Ubuntu setups) and increase it.
What is easier way to add configurable range for LDAP users id - hardcode it to this function in file?