The branch, master has been updated via 853ae7a913e smbd: add inode marshalling in smb3_file_posix_information_init() via 3aedefccbac smbd: add nlinks marshalling in smb3_file_posix_information_init() via 788dafccd15 s3/libsmb: reuse smbXcli_conn_have_posix() via 45643c703b6 smbd: fix group marshalling in smb3_file_posix_information_init from d57f3bdcd33 s4:kdc: Simplify principal_comp_strcmp_int() to handle only equality
https://git.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 853ae7a913e1051bebbabf07a2280904835b8bef Author: Ralph Boehme <s...@samba.org> Date: Thu Oct 26 15:24:07 2023 +0200 smbd: add inode marshalling in smb3_file_posix_information_init() Signed-off-by: Ralph Boehme <s...@samba.org> Reviewed-by: Volker Lendecke <v...@samba.org> Autobuild-User(master): Volker Lendecke <v...@samba.org> Autobuild-Date(master): Thu Oct 26 16:32:30 UTC 2023 on atb-devel-224 commit 3aedefccbac8b3b31831c9c27b1d1cde04c9d41f Author: Ralph Boehme <s...@samba.org> Date: Thu Oct 26 15:24:27 2023 +0200 smbd: add nlinks marshalling in smb3_file_posix_information_init() Signed-off-by: Ralph Boehme <s...@samba.org> Reviewed-by: Volker Lendecke <v...@samba.org> commit 788dafccd15b72a076413423764a2a1703ef6249 Author: Ralph Boehme <s...@samba.org> Date: Fri Oct 13 10:26:46 2023 +0200 s3/libsmb: reuse smbXcli_conn_have_posix() We already store the negotiated POSIX state in smbXcli_connection and there we only store it if the server actually supports the version we requested. Signed-off-by: Ralph Boehme <s...@samba.org> Reviewed-by: Stefan Metzmacher <me...@samba.org> Reviewed-by: Volker Lendecke <v...@samba.org> commit 45643c703b636db22514548e59ac13be9e80f524 Author: Ralph Boehme <s...@samba.org> Date: Tue Oct 24 19:06:23 2023 +0200 smbd: fix group marshalling in smb3_file_posix_information_init Signed-off-by: Ralph Boehme <s...@samba.org> Reviewed-by: Volker Lendecke <v...@samba.org> ----------------------------------------------------------------------- Summary of changes: source3/client/client.c | 2 +- source3/include/client.h | 1 - source3/libsmb/clidfs.c | 6 ------ source3/smbd/smb2_posix.c | 4 +++- 4 files changed, 4 insertions(+), 9 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/client/client.c b/source3/client/client.c index ad9d157db18..267e3ebeb99 100644 --- a/source3/client/client.c +++ b/source3/client/client.c @@ -3164,7 +3164,7 @@ static int cmd_posix(void) char *caps; NTSTATUS status; - if (!(SERVER_HAS_UNIX_CIFS(cli) || cli->smb2.server_smb311_posix)) { + if (!smbXcli_conn_have_posix(cli->conn)) { d_printf("Server doesn't support UNIX CIFS extensions.\n"); return 1; } diff --git a/source3/include/client.h b/source3/include/client.h index 3644e40ca50..9634166428c 100644 --- a/source3/include/client.h +++ b/source3/include/client.h @@ -91,7 +91,6 @@ struct cli_state { struct smbXcli_session *session; struct smbXcli_tcon *tcon; struct idr_context *open_handles; - bool server_smb311_posix; bool client_smb311_posix; } smb2; }; diff --git a/source3/libsmb/clidfs.c b/source3/libsmb/clidfs.c index 7bc733492ce..939b3b0da09 100644 --- a/source3/libsmb/clidfs.c +++ b/source3/libsmb/clidfs.c @@ -245,12 +245,6 @@ static NTSTATUS do_connect(TALLOC_CTX *ctx, smb2cli_conn_set_max_credits(c->conn, DEFAULT_SMB2_MAX_CREDITS); } - if ((protocol >= PROTOCOL_SMB3_11) && (out_contexts != NULL)) { - c->smb2.server_smb311_posix = smb2_negotiate_context_find( - out_contexts, - SMB2_POSIX_EXTENSIONS_AVAILABLE); - } - status = cli_session_setup_creds(c, creds); if (!NT_STATUS_IS_OK(status)) { /* If a password was not supplied then diff --git a/source3/smbd/smb2_posix.c b/source3/smbd/smb2_posix.c index 1cd76e22222..9623e59e43a 100644 --- a/source3/smbd/smb2_posix.c +++ b/source3/smbd/smb2_posix.c @@ -34,11 +34,13 @@ void smb3_file_posix_information_init( *dst = (struct smb3_file_posix_information) { .end_of_file = get_file_size_stat(st), .allocation_size = SMB_VFS_GET_ALLOC_SIZE(conn,NULL,st), + .inode = SMB_VFS_FS_FILE_ID(conn, st), .device = st->st_ex_dev, .creation_time = unix_timespec_to_nt_time(st->st_ex_btime), .last_access_time = unix_timespec_to_nt_time(st->st_ex_atime), .last_write_time = unix_timespec_to_nt_time(st->st_ex_mtime), .change_time = unix_timespec_to_nt_time(st->st_ex_ctime), + .cc.nlinks = st->st_ex_nlink, .cc.reparse_tag = reparse_tag, .cc.posix_perms = unix_perms_to_wire(st->st_ex_mode & ~S_IFMT), .cc.owner = global_sid_NULL, @@ -49,7 +51,7 @@ void smb3_file_posix_information_init( uid_to_sid(&dst->cc.owner, st->st_ex_uid); } if (st->st_ex_gid != (uid_t)-1) { - uid_to_sid(&dst->cc.owner, st->st_ex_gid); + gid_to_sid(&dst->cc.group, st->st_ex_gid); } switch (st->st_ex_mode & S_IFMT) { -- Samba Shared Repository