summaryrefslogtreecommitdiff
path: root/source3/smbd
diff options
context:
space:
mode:
authorLuke Leighton <lkcl@samba.org>1998-12-14 20:21:39 +0000
committerLuke Leighton <lkcl@samba.org>1998-12-14 20:21:39 +0000
commitd4385df3e80d63dbc7a1c90cc903d8343dfba652 (patch)
treeb4aef7c2430f1e362d6896f61760678a3510f4d4 /source3/smbd
parent41daca8ceb7e7597ae9804c1b7f07fb95debb51c (diff)
downloadsamba-d4385df3e80d63dbc7a1c90cc903d8343dfba652.tar.gz
samba-d4385df3e80d63dbc7a1c90cc903d8343dfba652.tar.bz2
samba-d4385df3e80d63dbc7a1c90cc903d8343dfba652.zip
trying to track down issues in get_home_dir().
(This used to be commit 2cce78aa00f31b79d51aaf46da72019b926e8226)
Diffstat (limited to 'source3/smbd')
-rw-r--r--source3/smbd/reply.c6
-rw-r--r--source3/smbd/service.c6
2 files changed, 9 insertions, 3 deletions
diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c
index d706976714..694cf3cdd5 100644
--- a/source3/smbd/reply.c
+++ b/source3/smbd/reply.c
@@ -750,7 +750,11 @@ int reply_sesssetup_and_X(connection_struct *conn, char *inbuf,char *outbuf,int
int homes = lp_servicenumber(HOMES_NAME);
char *home = get_home_dir(user);
if (homes >= 0 && home)
- lp_add_home(user,homes,home);
+ {
+ pstring home_dir;
+ fstrcpy(home_dir, home);
+ lp_add_home(user,homes,home_dir);
+ }
}
diff --git a/source3/smbd/service.c b/source3/smbd/service.c
index bc7fb88387..4dd3cb4d97 100644
--- a/source3/smbd/service.c
+++ b/source3/smbd/service.c
@@ -92,8 +92,9 @@ int find_service(char *service)
if (iService < 0)
{
char *phome_dir = get_home_dir(service);
+ pstring home_dir;
- if(!phome_dir)
+ if(phome_dir == NULL)
{
/*
* Try mapping the servicename, it may
@@ -109,9 +110,10 @@ int find_service(char *service)
if (phome_dir)
{
int iHomeService;
+ pstrcpy(home_dir, phome_dir);
if ((iHomeService = lp_servicenumber(HOMES_NAME)) >= 0)
{
- lp_add_home(service,iHomeService,phome_dir);
+ lp_add_home(service,iHomeService,home_dir);
iService = lp_servicenumber(service);
}
}