diff options
author | Jeremy Allison <jra@samba.org> | 2007-01-10 17:47:53 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2007-01-10 17:47:53 +0000 |
commit | 82311a1f42f7dbb888f013ebcd183bba099db9c1 (patch) | |
tree | a7d4dfa31550d90d99ccfb61fb036249e9841caa /source/rpc_server/srv_srvsvc_nt.c | |
parent | f7675bca8275347c69da4241f7bf5a412005fd4a (diff) | |
download | samba-82311a1f42f7dbb888f013ebcd183bba099db9c1.tar.gz samba-82311a1f42f7dbb888f013ebcd183bba099db9c1.tar.xz samba-82311a1f42f7dbb888f013ebcd183bba099db9c1.zip |
r20655: After consulting with Volker, fix our pathname
handling. Gets rid of more code than it adds.
I will port this to SAMBA_3_0 next. There are
still some wrinkles with wildcard delete I am
working on - for example a dirtype pattern of
0x8aa4 isn't handled correctly yet.... still
looking at this.
Jeremy.
Diffstat (limited to 'source/rpc_server/srv_srvsvc_nt.c')
-rw-r--r-- | source/rpc_server/srv_srvsvc_nt.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/source/rpc_server/srv_srvsvc_nt.c b/source/rpc_server/srv_srvsvc_nt.c index 0fb1629d7fa..ceba681af93 100644 --- a/source/rpc_server/srv_srvsvc_nt.c +++ b/source/rpc_server/srv_srvsvc_nt.c @@ -1791,7 +1791,6 @@ WERROR _srv_net_file_query_secdesc(pipes_struct *p, SRV_Q_NET_FILE_QUERY_SECDESC pstring qualname; files_struct *fsp = NULL; SMB_STRUCT_STAT st; - BOOL bad_path; NTSTATUS nt_status; struct current_user user; connection_struct *conn = NULL; @@ -1826,8 +1825,8 @@ WERROR _srv_net_file_query_secdesc(pipes_struct *p, SRV_Q_NET_FILE_QUERY_SECDESC became_user = True; unistr2_to_ascii(filename, &q_u->uni_file_name, sizeof(filename)); - unix_convert(filename, conn, NULL, &bad_path, &st); - if (bad_path) { + nt_status = unix_convert(filename, conn, NULL, &st); + if (!NT_STATUS_IS_OK(nt_status)) { DEBUG(3,("_srv_net_file_query_secdesc: bad pathname %s\n", filename)); r_u->status = WERR_ACCESS_DENIED; goto error_exit; @@ -1906,7 +1905,6 @@ WERROR _srv_net_file_set_secdesc(pipes_struct *p, SRV_Q_NET_FILE_SET_SECDESC *q_ DATA_BLOB null_pw; files_struct *fsp = NULL; SMB_STRUCT_STAT st; - BOOL bad_path; NTSTATUS nt_status; struct current_user user; connection_struct *conn = NULL; @@ -1941,8 +1939,8 @@ WERROR _srv_net_file_set_secdesc(pipes_struct *p, SRV_Q_NET_FILE_SET_SECDESC *q_ became_user = True; unistr2_to_ascii(filename, &q_u->uni_file_name, sizeof(filename)); - unix_convert(filename, conn, NULL, &bad_path, &st); - if (bad_path) { + nt_status = unix_convert(filename, conn, NULL, &st); + if (!NT_STATUS_IS_OK(nt_status)) { DEBUG(3,("_srv_net_file_set_secdesc: bad pathname %s\n", filename)); r_u->status = WERR_ACCESS_DENIED; goto error_exit; |