The Samba-Bugzilla – Attachment 5371 Details for
Bug 6557
Do not work VFS full_audit
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
git-am fix for 3.3.11.
0001-Fix-bug-6557-Do-not-work-VFS-full_audit.patch (text/plain), 3.43 KB, created by
Jeremy Allison
on 2010-02-17 12:49:12 UTC
(
hide
)
Description:
git-am fix for 3.3.11.
Filename:
MIME Type:
Creator:
Jeremy Allison
Created:
2010-02-17 12:49:12 UTC
Size:
3.43 KB
patch
obsolete
>From edcd03b9c5f3b3c126c7ba5cfcb070573343fca7 Mon Sep 17 00:00:00 2001 >From: Jeremy Allison <jra@samba.org> >Date: Wed, 17 Feb 2010 10:46:21 -0800 >Subject: [PATCH] Fix bug #6557 - Do not work VFS full_audit > >Re-arrange the operations order so SMB_VFS_CONNECT is done >first as root (to allow modules to correctly initialize themselves). > >Reviewed modules to check if they needed CONNECT invoked as >a user (which we previously did) and it turns out any of them >that cared needed root permissions anyway. > >Jeremy. >--- > source/smbd/service.c | 34 ++++++++++++++++------------------ > 1 files changed, 16 insertions(+), 18 deletions(-) > >diff --git a/source/smbd/service.c b/source/smbd/service.c >index 52fa54e..2db3f47 100644 >--- a/source/smbd/service.c >+++ b/source/smbd/service.c >@@ -720,7 +720,6 @@ static connection_struct *make_connection_snum(int snum, user_struct *vuser, > fstring dev; > int ret; > char addr[INET6_ADDRSTRLEN]; >- bool on_err_call_dis_hook = false; > NTSTATUS status; > > fstrcpy(dev, pdev); >@@ -958,6 +957,18 @@ static connection_struct *make_connection_snum(int snum, user_struct *vuser, > return NULL; > } > >+ /* Invoke VFS make connection hook - must be the first >+ VFS operation we do. */ >+ >+ if (SMB_VFS_CONNECT(conn, lp_servicename(snum), >+ conn->server_info->unix_name) < 0) { >+ DEBUG(0,("make_connection: VFS make connection failed!\n")); >+ yield_connection(conn, lp_servicename(snum)); >+ conn_free(conn); >+ *pstatus = NT_STATUS_UNSUCCESSFUL; >+ return NULL; >+ } >+ > /* > * Fix compatibility issue pointed out by Volker. > * We pass the conn->connectpath to the preexec >@@ -988,6 +999,7 @@ static connection_struct *make_connection_snum(int snum, user_struct *vuser, > if (ret != 0 && lp_rootpreexec_close(snum)) { > DEBUG(1,("root preexec gave %d - failing " > "connection\n", ret)); >+ SMB_VFS_DISCONNECT(conn); > yield_connection(conn, lp_servicename(snum)); > conn_free(conn); > *pstatus = NT_STATUS_ACCESS_DENIED; >@@ -999,6 +1011,7 @@ static connection_struct *make_connection_snum(int snum, user_struct *vuser, > if (!change_to_user(conn, conn->vuid)) { > /* No point continuing if they fail the basic checks */ > DEBUG(0,("Can't become connected user!\n")); >+ SMB_VFS_DISCONNECT(conn); > yield_connection(conn, lp_servicename(snum)); > conn_free(conn); > *pstatus = NT_STATUS_LOGON_FAILURE; >@@ -1064,19 +1077,6 @@ static connection_struct *make_connection_snum(int snum, user_struct *vuser, > lp_aio_write_behind(snum)); > } > >- /* Invoke VFS make connection hook - do this before the VFS_STAT call >- to allow any filesystems needing user credentials to initialize >- themselves. */ >- >- if (SMB_VFS_CONNECT(conn, lp_servicename(snum), >- conn->server_info->unix_name) < 0) { >- DEBUG(0,("make_connection: VFS make connection failed!\n")); >- *pstatus = NT_STATUS_UNSUCCESSFUL; >- goto err_root_exit; >- } >- >- /* Any error exit after here needs to call the disconnect hook. */ >- on_err_call_dis_hook = true; > > /* win2000 does not check the permissions on the directory > during the tree connect, instead relying on permission >@@ -1154,10 +1154,8 @@ static connection_struct *make_connection_snum(int snum, user_struct *vuser, > err_root_exit: > > change_to_root_user(); >- if (on_err_call_dis_hook) { >- /* Call VFS disconnect hook */ >- SMB_VFS_DISCONNECT(conn); >- } >+ /* Call VFS disconnect hook */ >+ SMB_VFS_DISCONNECT(conn); > yield_connection(conn, lp_servicename(snum)); > conn_free(conn); > return NULL; >-- >1.6.6.2 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Flags:
vl
:
review+
Actions:
View
Attachments on
bug 6557
:
5354
|
5369
|
5370
| 5371