From: Ralph Boehme Date: Mon, 4 Nov 2019 10:23:18 +0000 (+0100) Subject: smbdotconf: mark "postexec" with substitution="1" X-Git-Tag: ldb-2.1.0~576 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=4f2ee224ce8a518ae0328e152addd2a1cdcca298;p=thirdparty%2Fsamba.git smbdotconf: mark "postexec" with substitution="1" Signed-off-by: Ralph Boehme Reviewed-by: Stefan Metzmacher --- diff --git a/docs-xml/smbdotconf/misc/postexec.xml b/docs-xml/smbdotconf/misc/postexec.xml index c65ee1b2bca..ca1522123ce 100644 --- a/docs-xml/smbdotconf/misc/postexec.xml +++ b/docs-xml/smbdotconf/misc/postexec.xml @@ -1,6 +1,7 @@ This option specifies a command to be run diff --git a/source3/smbd/service.c b/source3/smbd/service.c index 0d220903dec..10a215e999e 100644 --- a/source3/smbd/service.c +++ b/source3/smbd/service.c @@ -1151,6 +1151,8 @@ void close_cnum(connection_struct *conn, uint64_t vuid) { char rootpath[2] = { '/', '\0'}; struct smb_filename root_fname = { .base_name = rootpath }; + const struct loadparm_substitution *lp_sub = + loadparm_s3_global_substitution(); file_close_conn(conn); @@ -1169,7 +1171,7 @@ void close_cnum(connection_struct *conn, uint64_t vuid) SMB_VFS_DISCONNECT(conn); /* execute any "postexec = " line */ - if (*lp_postexec(talloc_tos(), SNUM(conn)) && + if (*lp_postexec(talloc_tos(), lp_sub, SNUM(conn)) && change_to_user_and_service(conn, vuid)) { char *cmd = talloc_sub_full(talloc_tos(), lp_const_servicename(SNUM(conn)), @@ -1178,7 +1180,7 @@ void close_cnum(connection_struct *conn, uint64_t vuid) conn->session_info->unix_token->gid, conn->session_info->unix_info->sanitized_username, conn->session_info->info->domain_name, - lp_postexec(talloc_tos(), SNUM(conn))); + lp_postexec(talloc_tos(), lp_sub, SNUM(conn))); smbrun(cmd, NULL, NULL); TALLOC_FREE(cmd); change_to_root_user();