]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
smbd: Simplify synthetic_smb_fname_split()
authorVolker Lendecke <vl@samba.org>
Thu, 8 May 2025 13:11:17 +0000 (15:11 +0200)
committerStefan Metzmacher <metze@samba.org>
Fri, 9 May 2025 11:02:41 +0000 (11:02 +0000)
Remove the "posix_path" parameter, all callers just passed in "false".

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Fri May  9 11:02:41 UTC 2025 on atb-devel-224

source3/include/proto.h
source3/lib/filename_util.c
source3/smbd/filename.c
source3/smbd/pysmbd.c
source3/torture/cmd_vfs.c

index e8dfb533b442157b482befd669e359ea8a852f9d..da0d0cb7dfeeed32d111cfb09178489ffba2b4b8 100644 (file)
@@ -711,8 +711,7 @@ struct smb_filename *full_path_from_dirfsp_atname(
        const struct files_struct *dirfsp,
        const struct smb_filename *atname);
 struct smb_filename *synthetic_smb_fname_split(TALLOC_CTX *ctx,
-                                               const char *fname,
-                                               bool posix_path);
+                                              const char *fname);
 const char *smb_fname_str_dbg(const struct smb_filename *smb_fname);
 const char *fsp_str_dbg(const struct files_struct *fsp);
 const char *fsp_fnum_dbg(const struct files_struct *fsp);
index 3f8e9033ba5099188dd94332295f594b5c2b6cc7..0108ae6e6a0d8693ae6d58e343af0d60e2034f88 100644 (file)
@@ -94,24 +94,13 @@ struct smb_filename *cp_smb_filename_nostream(TALLOC_CTX *mem_ctx,
  * There are a few legitimate users of this.
  */
 struct smb_filename *synthetic_smb_fname_split(TALLOC_CTX *ctx,
-                                               const char *fname,
-                                               bool posix_path)
+                                              const char *fname)
 {
        char *stream_name = NULL;
        char *base_name = NULL;
        struct smb_filename *ret;
        bool ok;
 
-       if (posix_path) {
-               /* No stream name looked for. */
-               return synthetic_smb_fname(ctx,
-                               fname,
-                               NULL,
-                               NULL,
-                               0,
-                               SMB_FILENAME_POSIX_PATH);
-       }
-
        ok = split_stream_filename(ctx,
                                fname,
                                &base_name,
index dee3e2164d5f92575644111cac176a907197cff2..e4234178c0d8931b9094594937a48e94488a379a 100644 (file)
@@ -707,9 +707,7 @@ filename_convert_dirfsp_nosymlink(TALLOC_CTX *mem_ctx,
                                0,
                                SMB_FILENAME_POSIX_PATH);
                } else {
-                       smb_fname = synthetic_smb_fname_split(mem_ctx,
-                                                             name_in,
-                                                             false);
+                       smb_fname = synthetic_smb_fname_split(mem_ctx, name_in);
                }
                if (smb_fname == NULL) {
                        return NT_STATUS_NO_MEMORY;
index 2f0788351882ea6e7a8bb4b7619033c579f96426..fe439dfe2c241dcf88be7f6882f19e25c4ab0f6f 100644 (file)
@@ -166,7 +166,7 @@ static int set_sys_acl_conn(const char *fname,
        NTSTATUS status;
 
        smb_fname = synthetic_smb_fname_split(
-               frame, canonicalize_path(talloc_tos(), conn, fname), false);
+               frame, canonicalize_path(talloc_tos(), conn, fname));
        if (smb_fname == NULL) {
                TALLOC_FREE(frame);
                return -1;
@@ -218,7 +218,7 @@ static NTSTATUS init_files_struct(TALLOC_CTX *mem_ctx,
        fsp->conn = conn;
 
        smb_fname = synthetic_smb_fname_split(
-               fsp, canonicalize_path(talloc_tos(), conn, fname), false);
+               fsp, canonicalize_path(talloc_tos(), conn, fname));
        if (smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -333,7 +333,7 @@ static NTSTATUS get_nt_acl_conn(TALLOC_CTX *mem_ctx,
        struct smb_filename *smb_fname =  NULL;
 
        smb_fname = synthetic_smb_fname_split(
-               frame, canonicalize_path(talloc_tos(), conn, fname), false);
+               frame, canonicalize_path(talloc_tos(), conn, fname));
 
        if (smb_fname == NULL) {
                TALLOC_FREE(frame);
@@ -727,7 +727,7 @@ static PyObject *py_smbd_unlink(PyObject *self, PyObject *args, PyObject *kwargs
        }
 
        smb_fname = synthetic_smb_fname_split(
-               frame, canonicalize_path(talloc_tos(), conn, fname), false);
+               frame, canonicalize_path(talloc_tos(), conn, fname));
        if (smb_fname == NULL) {
                TALLOC_FREE(frame);
                return PyErr_NoMemory();
@@ -1069,7 +1069,7 @@ static PyObject *py_smbd_get_sys_acl(PyObject *self, PyObject *args, PyObject *k
        }
 
        smb_fname = synthetic_smb_fname_split(
-               frame, canonicalize_path(talloc_tos(), conn, fname), false);
+               frame, canonicalize_path(talloc_tos(), conn, fname));
        if (smb_fname == NULL) {
                TALLOC_FREE(frame);
                return NULL;
index ecf7c2bb3a777414cfdae65cf87ebea1d279d672..4ae1e4e1931fd751826b818ad0f04253f2134560 100644 (file)
@@ -401,7 +401,7 @@ static NTSTATUS cmd_open(struct vfs_state *vfs, TALLOC_CTX *mem_ctx, int argc, c
        }
        fsp->conn = vfs->conn;
 
-       smb_fname = synthetic_smb_fname_split(NULL, argv[1], false);
+       smb_fname = synthetic_smb_fname_split(NULL, argv[1]);
        if (smb_fname == NULL) {
                goto nomem;
        }
@@ -514,9 +514,7 @@ static NTSTATUS cmd_pathfunc(struct vfs_state *vfs, TALLOC_CTX *mem_ctx, int arg
        } else if (strcmp("unlink", argv[0]) == 0 ) {
                TALLOC_FREE(smb_fname);
                /* unlink can be a stream:name */
-               smb_fname = synthetic_smb_fname_split(talloc_tos(),
-                                                     argv[1],
-                                                     false);
+               smb_fname = synthetic_smb_fname_split(talloc_tos(), argv[1]);
                if (smb_fname == NULL) {
                        return NT_STATUS_NO_MEMORY;
                }
@@ -680,12 +678,12 @@ static NTSTATUS cmd_rename(struct vfs_state *vfs, TALLOC_CTX *mem_ctx, int argc,
                return NT_STATUS_OK;
        }
 
-       smb_fname_src = synthetic_smb_fname_split(mem_ctx, argv[1], false);
+       smb_fname_src = synthetic_smb_fname_split(mem_ctx, argv[1]);
        if (smb_fname_src == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
 
-       smb_fname_dst = synthetic_smb_fname_split(mem_ctx, argv[2], false);
+       smb_fname_dst = synthetic_smb_fname_split(mem_ctx, argv[2]);
        if (smb_fname_dst == NULL) {
                TALLOC_FREE(smb_fname_src);
                return NT_STATUS_NO_MEMORY;
@@ -745,7 +743,7 @@ static NTSTATUS cmd_stat(struct vfs_state *vfs, TALLOC_CTX *mem_ctx, int argc, c
                return NT_STATUS_OK;
        }
 
-       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1], false);
+       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1]);
        if (smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -884,7 +882,7 @@ static NTSTATUS cmd_lstat(struct vfs_state *vfs, TALLOC_CTX *mem_ctx, int argc,
                return NT_STATUS_OK;
        }
 
-       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1], false);
+       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1]);
        if (smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -949,7 +947,7 @@ static NTSTATUS cmd_chmod(struct vfs_state *vfs, TALLOC_CTX *mem_ctx, int argc,
 
        mode = atoi(argv[2]);
 
-       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1], false);
+       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1]);
        if (smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -1212,7 +1210,7 @@ static NTSTATUS cmd_symlink(struct vfs_state *vfs, TALLOC_CTX *mem_ctx, int argc
                return NT_STATUS_OK;
        }
 
-       new_smb_fname = synthetic_smb_fname_split(mem_ctx, argv[2], false);
+       new_smb_fname = synthetic_smb_fname_split(mem_ctx, argv[2]);
        if (new_smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -1257,7 +1255,7 @@ static NTSTATUS cmd_readlink(struct vfs_state *vfs, TALLOC_CTX *mem_ctx, int arg
                return NT_STATUS_OK;
        }
 
-       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1], false);
+       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1]);
        if (smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -1289,11 +1287,11 @@ static NTSTATUS cmd_link(struct vfs_state *vfs, TALLOC_CTX *mem_ctx, int argc, c
                return NT_STATUS_OK;
        }
 
-       old_smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1], false);
+       old_smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1]);
        if (old_smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
-       new_smb_fname = synthetic_smb_fname_split(mem_ctx, argv[2], false);
+       new_smb_fname = synthetic_smb_fname_split(mem_ctx, argv[2]);
        if (new_smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -1341,7 +1339,7 @@ static NTSTATUS cmd_mknod(struct vfs_state *vfs, TALLOC_CTX *mem_ctx, int argc,
        }
        dev = (SMB_DEV_T)dev_val;
 
-       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1], false);
+       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1]);
        if (smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -1370,7 +1368,7 @@ static NTSTATUS cmd_realpath(struct vfs_state *vfs, TALLOC_CTX *mem_ctx, int arg
                return NT_STATUS_OK;
        }
 
-       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1], false);
+       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1]);
        if (smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -1399,7 +1397,7 @@ static NTSTATUS cmd_getxattr(struct vfs_state *vfs, TALLOC_CTX *mem_ctx,
 
        buf = NULL;
 
-       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1], false);
+       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1]);
        if (smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -1455,7 +1453,7 @@ static NTSTATUS cmd_listxattr(struct vfs_state *vfs, TALLOC_CTX *mem_ctx,
 
        buf = NULL;
 
-       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1], false);
+       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1]);
        if (smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -1524,7 +1522,7 @@ static NTSTATUS cmd_fsetxattr(struct vfs_state *vfs, TALLOC_CTX *mem_ctx,
                flags = atoi(argv[4]);
        }
 
-       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1], false);
+       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1]);
        if (smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -1564,7 +1562,7 @@ static NTSTATUS cmd_removexattr(struct vfs_state *vfs, TALLOC_CTX *mem_ctx,
                return NT_STATUS_OK;
        }
 
-       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1], false);
+       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1]);
        if (smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -1742,7 +1740,7 @@ static NTSTATUS cmd_set_nt_acl(struct vfs_state *vfs, TALLOC_CTX *mem_ctx, int a
        }
        fsp->conn = vfs->conn;
 
-       smb_fname = synthetic_smb_fname_split(NULL, argv[1], false);
+       smb_fname = synthetic_smb_fname_split(NULL, argv[1]);
        if (smb_fname == NULL) {
                TALLOC_FREE(fsp);
                return NT_STATUS_NO_MEMORY;
@@ -1883,7 +1881,7 @@ static NTSTATUS cmd_sys_acl_get_file(struct vfs_state *vfs, TALLOC_CTX *mem_ctx,
                return NT_STATUS_OK;
        }
 
-       smb_fname = synthetic_smb_fname_split(talloc_tos(), argv[1], false);
+       smb_fname = synthetic_smb_fname_split(talloc_tos(), argv[1]);
        if (smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -1936,7 +1934,7 @@ static NTSTATUS cmd_sys_acl_blob_get_file(struct vfs_state *vfs,
                return NT_STATUS_OK;
        }
 
-       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1], false);
+       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1]);
        if (smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }
@@ -2032,7 +2030,7 @@ static NTSTATUS cmd_sys_acl_delete_def_file(struct vfs_state *vfs, TALLOC_CTX *m
                return NT_STATUS_OK;
        }
 
-       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1], false);
+       smb_fname = synthetic_smb_fname_split(mem_ctx, argv[1]);
        if (smb_fname == NULL) {
                return NT_STATUS_NO_MEMORY;
        }