Declare state directory in smb.conf
authorNikolaus Rath <Nikolaus@rath.org>
Wed, 25 Apr 2012 13:57:19 +0000 (09:57 -0400)
committerJan Kiszka <jan.kiszka@siemens.com>
Tue, 1 May 2012 22:08:44 +0000 (19:08 -0300)
The smb.conf generated by the userspace networking does not include a state directory
directive. Samba therefore falls back to the default value. Since the user generally
does not have write access to this path, smbd immediately crashes.

The "state directory" option was added in Samba 3.4.0 (commit
http://gitweb.samba.org/?p=samba.git;a=commit;h=7b02e05eb64f3ffd7aa1cf027d10a7343c0da757).

This patch adds the missing option.

Signed-off-by: Nikolaus Rath <Nikolaus@rath.org>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
net/slirp.c

index f49043b5ae878ddb86f9462e7a4990aa93a3a961..96f5032c4c2e960b28785f5fa5cd621293eb9ca1 100644 (file)
@@ -510,6 +510,7 @@ static int slirp_smb(SlirpState* s, const char *exported_dir,
             "socket address=127.0.0.1\n"
             "pid directory=%s\n"
             "lock directory=%s\n"
+            "state directory=%s\n"
             "log file=%s/log.smbd\n"
             "smb passwd file=%s/smbpasswd\n"
             "security = share\n"
@@ -522,6 +523,7 @@ static int slirp_smb(SlirpState* s, const char *exported_dir,
             s->smb_dir,
             s->smb_dir,
             s->smb_dir,
+            s->smb_dir,
             exported_dir
             );
     fclose(f);