diff options
-rw-r--r-- | source3/include/smb.h | 1 | ||||
-rw-r--r-- | source3/lib/substitute.c | 2 | ||||
-rw-r--r-- | source3/modules/vfs_expand_msdfs.c | 2 | ||||
-rw-r--r-- | source3/modules/vfs_full_audit.c | 3 | ||||
-rw-r--r-- | source3/modules/vfs_recycle.c | 2 | ||||
-rw-r--r-- | source3/smbd/close.c | 2 | ||||
-rw-r--r-- | source3/smbd/conn.c | 2 | ||||
-rw-r--r-- | source3/smbd/fake_file.c | 3 | ||||
-rw-r--r-- | source3/smbd/lanman.c | 8 | ||||
-rw-r--r-- | source3/smbd/nttrans.c | 10 | ||||
-rw-r--r-- | source3/smbd/open.c | 5 | ||||
-rw-r--r-- | source3/smbd/service.c | 25 | ||||
-rw-r--r-- | source3/smbd/trans2.c | 9 | ||||
-rw-r--r-- | source3/torture/vfstest.c | 1 |
14 files changed, 42 insertions, 33 deletions
diff --git a/source3/include/smb.h b/source3/include/smb.h index 6ef45070aa..1d6aba9b69 100644 --- a/source3/include/smb.h +++ b/source3/include/smb.h @@ -630,7 +630,6 @@ typedef struct connection_struct { */ struct auth_serversupplied_info *server_info; - char *user; /* name of user who *opened* this connection */ char client_address[INET6_ADDRSTRLEN]; /* String version of client IP address. */ uint16 vuid; /* vuid of user who *opened* this connection, or UID_FIELD_INVALID */ diff --git a/source3/lib/substitute.c b/source3/lib/substitute.c index 5be5af6637..17bcbcac9d 100644 --- a/source3/lib/substitute.c +++ b/source3/lib/substitute.c @@ -905,7 +905,7 @@ char *standard_sub_conn(TALLOC_CTX *ctx, connection_struct *conn, const char *st { return talloc_sub_advanced(ctx, lp_servicename(SNUM(conn)), - conn->user, + conn->server_info->unix_name, conn->connectpath, conn->server_info->gid, get_smb_user_name(), diff --git a/source3/modules/vfs_expand_msdfs.c b/source3/modules/vfs_expand_msdfs.c index 62222c48ff..133c5eb28b 100644 --- a/source3/modules/vfs_expand_msdfs.c +++ b/source3/modules/vfs_expand_msdfs.c @@ -145,7 +145,7 @@ static char *expand_msdfs_target(TALLOC_CTX *ctx, targethost = talloc_sub_advanced(ctx, lp_servicename(SNUM(conn)), - conn->user, + conn->server_info->unix_name, conn->connectpath, conn->server_info->gid, get_current_username(), diff --git a/source3/modules/vfs_full_audit.c b/source3/modules/vfs_full_audit.c index 1b44e02375..31069c1669 100644 --- a/source3/modules/vfs_full_audit.c +++ b/source3/modules/vfs_full_audit.c @@ -693,7 +693,8 @@ static char *audit_prefix(TALLOC_CTX *ctx, connection_struct *conn) return NULL; } return talloc_sub_advanced(ctx, - lp_servicename(SNUM(conn)), conn->user, + lp_servicename(SNUM(conn)), + conn->server_info->unix_name, conn->connectpath, conn->server_info->gid, get_current_username(), diff --git a/source3/modules/vfs_recycle.c b/source3/modules/vfs_recycle.c index 27700367e6..abfae78b72 100644 --- a/source3/modules/vfs_recycle.c +++ b/source3/modules/vfs_recycle.c @@ -432,7 +432,7 @@ static int recycle_unlink(vfs_handle_struct *handle, const char *file_name) int rc = -1; repository = talloc_sub_advanced(NULL, lp_servicename(SNUM(conn)), - conn->user, + conn->server_info->unix_name, conn->connectpath, conn->server_info->gid, get_current_username(), diff --git a/source3/smbd/close.c b/source3/smbd/close.c index e27d5c44fa..df188bafe1 100644 --- a/source3/smbd/close.c +++ b/source3/smbd/close.c @@ -581,7 +581,7 @@ static NTSTATUS close_normal_file(files_struct *fsp, enum file_close_type close_ } DEBUG(2,("%s closed file %s (numopen=%d) %s\n", - conn->user,fsp->fsp_name, + conn->server_info->unix_name,fsp->fsp_name, conn->num_files_open, nt_errstr(status) )); diff --git a/source3/smbd/conn.c b/source3/smbd/conn.c index ce3512c4ec..e899af1319 100644 --- a/source3/smbd/conn.c +++ b/source3/smbd/conn.c @@ -151,7 +151,6 @@ find_again: num_open++; - string_set(&conn->user,""); string_set(&conn->dirpath,""); string_set(&conn->connectpath,""); string_set(&conn->origpath,""); @@ -283,7 +282,6 @@ void conn_free_internal(connection_struct *conn) free_namearray(conn->veto_oplock_list); free_namearray(conn->aio_write_behind_list); - string_free(&conn->user); string_free(&conn->dirpath); string_free(&conn->connectpath); string_free(&conn->origpath); diff --git a/source3/smbd/fake_file.c b/source3/smbd/fake_file.c index 31fe030f46..0a54c85cd0 100644 --- a/source3/smbd/fake_file.c +++ b/source3/smbd/fake_file.c @@ -113,7 +113,8 @@ NTSTATUS open_fake_file(connection_struct *conn, if (current_user.ut.uid != 0) { DEBUG(3, ("open_fake_file_shared: access_denied to " "service[%s] file[%s] user[%s]\n", - lp_servicename(SNUM(conn)),fname,conn->user)); + lp_servicename(SNUM(conn)), fname, + conn->server_info->unix_name)); return NT_STATUS_ACCESS_DENIED; } diff --git a/source3/smbd/lanman.c b/source3/smbd/lanman.c index 4309622b26..413b916f7b 100644 --- a/source3/smbd/lanman.c +++ b/source3/smbd/lanman.c @@ -101,7 +101,7 @@ static int CopyExpanded(connection_struct *conn, } buf = talloc_sub_advanced(ctx, lp_servicename(SNUM(conn)), - conn->user, + conn->server_info->unix_name, conn->connectpath, conn->server_info->gid, get_current_username(), @@ -152,7 +152,7 @@ static int StrlenExpanded(connection_struct *conn, int snum, char *s) } buf = talloc_sub_advanced(ctx, lp_servicename(SNUM(conn)), - conn->user, + conn->server_info->unix_name, conn->connectpath, conn->server_info->gid, get_current_username(), @@ -182,7 +182,7 @@ static char *Expand(connection_struct *conn, int snum, char *s) } return talloc_sub_advanced(ctx, lp_servicename(SNUM(conn)), - conn->user, + conn->server_info->unix_name, conn->connectpath, conn->server_info->gid, get_current_username(), @@ -3000,7 +3000,7 @@ static bool api_RNetServerGetInfo(connection_struct *conn,uint16 vuid, SIVAL(p,6,PTR_DIFF(p2,*rdata)); comment = talloc_sub_advanced(ctx, lp_servicename(SNUM(conn)), - conn->user, + conn->server_info->unix_name, conn->connectpath, conn->server_info->gid, get_current_username(), diff --git a/source3/smbd/nttrans.c b/source3/smbd/nttrans.c index bd34b5a361..b5546ea1e1 100644 --- a/source3/smbd/nttrans.c +++ b/source3/smbd/nttrans.c @@ -2037,8 +2037,9 @@ static void call_nt_transact_get_user_quota(connection_struct *conn, /* access check */ if (current_user.ut.uid != 0) { - DEBUG(1,("get_user_quota: access_denied service [%s] user [%s]\n", - lp_servicename(SNUM(conn)),conn->user)); + DEBUG(1,("get_user_quota: access_denied service [%s] user " + "[%s]\n", lp_servicename(SNUM(conn)), + conn->server_info->unix_name)); reply_doserror(req, ERRDOS, ERRnoaccess); return; } @@ -2303,8 +2304,9 @@ static void call_nt_transact_set_user_quota(connection_struct *conn, /* access check */ if (current_user.ut.uid != 0) { - DEBUG(1,("set_user_quota: access_denied service [%s] user [%s]\n", - lp_servicename(SNUM(conn)),conn->user)); + DEBUG(1,("set_user_quota: access_denied service [%s] user " + "[%s]\n", lp_servicename(SNUM(conn)), + conn->server_info->unix_name)); reply_doserror(req, ERRDOS, ERRnoaccess); return; } diff --git a/source3/smbd/open.c b/source3/smbd/open.c index 5c860f891d..546128c0e5 100644 --- a/source3/smbd/open.c +++ b/source3/smbd/open.c @@ -400,8 +400,9 @@ static NTSTATUS open_file(files_struct *fsp, fsp->wcp = NULL; /* Write cache pointer. */ DEBUG(2,("%s opened file %s read=%s write=%s (numopen=%d)\n", - *current_user_info.smb_name ? - current_user_info.smb_name : conn->user,fsp->fsp_name, + *current_user_info.smb_name + ? current_user_info.smb_name : conn->server_info->unix_name, + fsp->fsp_name, BOOLSTR(fsp->can_read), BOOLSTR(fsp->can_write), conn->num_files_open + 1)); diff --git a/source3/smbd/service.c b/source3/smbd/service.c index fd072135e8..c90d4d16bc 100644 --- a/source3/smbd/service.c +++ b/source3/smbd/service.c @@ -820,7 +820,7 @@ static connection_struct *make_connection_snum(int snum, user_struct *vuser, if (*lp_force_group(snum)) { status = find_forced_group( - conn->force_user, snum, conn->user, + conn->force_user, snum, conn->server_info->unix_name, &conn->server_info->ptok->user_sids[1], &conn->server_info->gid); @@ -833,11 +833,10 @@ static connection_struct *make_connection_snum(int snum, user_struct *vuser, conn->vuid = (vuser != NULL) ? vuser->vuid : UID_FIELD_INVALID; - string_set(&conn->user, conn->server_info->unix_name); - { char *s = talloc_sub_advanced(talloc_tos(), - lp_servicename(SNUM(conn)), conn->user, + lp_servicename(SNUM(conn)), + conn->server_info->unix_name, conn->connectpath, conn->server_info->gid, get_current_username(), @@ -958,7 +957,8 @@ static connection_struct *make_connection_snum(int snum, user_struct *vuser, /* execute any "root preexec = " line */ if (*lp_rootpreexec(snum)) { char *cmd = talloc_sub_advanced(talloc_tos(), - lp_servicename(SNUM(conn)), conn->user, + lp_servicename(SNUM(conn)), + conn->server_info->unix_name, conn->connectpath, conn->server_info->gid, get_current_username(), @@ -996,7 +996,8 @@ static connection_struct *make_connection_snum(int snum, user_struct *vuser, /* execute any "preexec = " line */ if (*lp_preexec(snum)) { char *cmd = talloc_sub_advanced(talloc_tos(), - lp_servicename(SNUM(conn)), conn->user, + lp_servicename(SNUM(conn)), + conn->server_info->unix_name, conn->connectpath, conn->server_info->gid, get_current_username(), @@ -1029,7 +1030,8 @@ static connection_struct *make_connection_snum(int snum, user_struct *vuser, to allow any filesystems needing user credentials to initialize themselves. */ - if (SMB_VFS_CONNECT(conn, lp_servicename(snum), conn->user) < 0) { + 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; @@ -1096,7 +1098,8 @@ static connection_struct *make_connection_snum(int snum, user_struct *vuser, conn->client_address ); dbgtext( "%s", srv_is_signing_active() ? "signed " : ""); dbgtext( "connect to service %s ", lp_servicename(snum) ); - dbgtext( "initially as user %s ", conn->user ); + dbgtext( "initially as user %s ", + conn->server_info->unix_name ); dbgtext( "(uid=%d, gid=%d) ", (int)geteuid(), (int)getegid() ); dbgtext( "(pid %d)\n", (int)sys_getpid() ); } @@ -1316,7 +1319,8 @@ void close_cnum(connection_struct *conn, uint16 vuid) if (*lp_postexec(SNUM(conn)) && change_to_user(conn, vuid)) { char *cmd = talloc_sub_advanced(talloc_tos(), - lp_servicename(SNUM(conn)), conn->user, + lp_servicename(SNUM(conn)), + conn->server_info->unix_name, conn->connectpath, conn->server_info->gid, get_current_username(), @@ -1331,7 +1335,8 @@ void close_cnum(connection_struct *conn, uint16 vuid) /* execute any "root postexec = " line */ if (*lp_rootpostexec(SNUM(conn))) { char *cmd = talloc_sub_advanced(talloc_tos(), - lp_servicename(SNUM(conn)), conn->user, + lp_servicename(SNUM(conn)), + conn->server_info->unix_name, conn->connectpath, conn->server_info->gid, get_current_username(), diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c index 4d60eecda9..d5435533f9 100644 --- a/source3/smbd/trans2.c +++ b/source3/smbd/trans2.c @@ -2826,8 +2826,10 @@ cBytesSector=%u, cUnitTotal=%u, cUnitAvail=%d\n", (unsigned int)bsize, (unsigned /* access check */ if (current_user.ut.uid != 0) { - DEBUG(0,("set_user_quota: access_denied service [%s] user [%s]\n", - lp_servicename(SNUM(conn)),conn->user)); + DEBUG(0,("set_user_quota: access_denied " + "service [%s] user [%s]\n", + lp_servicename(SNUM(conn)), + conn->server_info->unix_name)); reply_doserror(req, ERRDOS, ERRnoaccess); return; } @@ -3267,7 +3269,8 @@ cap_low = 0x%x, cap_high = 0x%x\n", /* access check */ if ((current_user.ut.uid != 0)||!CAN_WRITE(conn)) { DEBUG(0,("set_user_quota: access_denied service [%s] user [%s]\n", - lp_servicename(SNUM(conn)),conn->user)); + lp_servicename(SNUM(conn)), + conn->server_info->unix_name)); reply_doserror(req, ERRSRV, ERRaccess); return; } diff --git a/source3/torture/vfstest.c b/source3/torture/vfstest.c index 7e4ee624a1..56e27eec1d 100644 --- a/source3/torture/vfstest.c +++ b/source3/torture/vfstest.c @@ -563,7 +563,6 @@ int main(int argc, char *argv[]) sec_init(); conn_init(); vfs.conn = conn_new(); - string_set(&vfs.conn->user,"vfstest"); for (i=0; i < 1024; i++) vfs.files[i] = NULL; |