1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-04 17:47:26 +03:00

r1506: Fix inspired by patches from Michael Collin Nielsen <michael@hum.aau.dk> - ensure

home directory service number is correctly reused.
Jeremy.
(This used to be commit 9d6347be8580d092cda0357b5d1a81fc6876ac1f)
This commit is contained in:
Jeremy Allison 2004-07-15 00:58:35 +00:00 committed by Gerald (Jerry) Carter
parent 645d67c377
commit f7463e1bcd

View File

@ -253,19 +253,23 @@ int register_vuid(auth_serversupplied_info *server_info, DATA_BLOB session_key,
/* Register a home dir service for this user iff
(a) This is not a guest connection,
(b) we have a home directory defined, and
(c) there s not an existing static share by that name */
(b) we have a home directory defined
If a share exists by this name (autoloaded or not) reuse it so
long as the home directory is the same as the share directory. */
if ( (!vuser->guest)
&& vuser->unix_homedir
&& *(vuser->unix_homedir)
&& (lp_servicenumber(vuser->user.unix_name) == -1) )
{
DEBUG(3, ("Adding/updating homes service for user '%s' using home directory: '%s'\n",
if ( (!vuser->guest) && vuser->unix_homedir && *(vuser->unix_homedir)) {
int servicenumber = lp_servicenumber(vuser->user.unix_name);
if ( servicenumber == -1 ) {
DEBUG(3, ("Adding homes service for user '%s' using home directory: '%s'\n",
vuser->user.unix_name, vuser->unix_homedir));
vuser->homes_snum = add_home_service(vuser->user.unix_name,
vuser->user.unix_name, vuser->unix_homedir);
} else if (strcmp(lp_pathname(servicenumber),vuser->unix_homedir) == 0) {
DEBUG(3, ("Reusing homes service for user '%s' using home directory: '%s'\n",
vuser->user.unix_name, vuser->unix_homedir));
vuser->homes_snum = add_home_service(vuser->user.unix_name,
vuser->user.unix_name, vuser->unix_homedir);
vuser->homes_snum = servicenumber;
}
} else {
vuser->homes_snum = -1;
}