]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
Remove the inbuf reference from map_checkpath_error()
authorVolker Lendecke <vl@samba.org>
Sun, 2 Nov 2008 21:20:48 +0000 (22:20 +0100)
committerVolker Lendecke <vl@samba.org>
Sun, 2 Nov 2008 21:38:03 +0000 (22:38 +0100)
source3/smbd/reply.c

index 2aa3c1b841208207aab0366344c49fb48ac977ba..d88069c9df62aac86eebc7ab0f986d462218d4c0 100644 (file)
@@ -821,10 +821,10 @@ void reply_ioctl(struct smb_request *req)
  Strange checkpath NTSTATUS mapping.
 ****************************************************************************/
 
-static NTSTATUS map_checkpath_error(const char *inbuf, NTSTATUS status)
+static NTSTATUS map_checkpath_error(uint16_t flags2, NTSTATUS status)
 {
        /* Strange DOS error code semantics only for checkpath... */
-       if (!(SVAL(inbuf,smb_flg2) & FLAGS2_32_BIT_ERROR_CODES)) {
+       if (!(flags2 & FLAGS2_32_BIT_ERROR_CODES)) {
                if (NT_STATUS_EQUAL(NT_STATUS_OBJECT_NAME_INVALID,status)) {
                        /* We need to map to ERRbadpath */
                        return NT_STATUS_OBJECT_PATH_NOT_FOUND;
@@ -851,7 +851,7 @@ void reply_checkpath(struct smb_request *req)
                            STR_TERMINATE, &status);
 
        if (!NT_STATUS_IS_OK(status)) {
-               status = map_checkpath_error((char *)req->inbuf, status);
+               status = map_checkpath_error(req->flags2, status);
                reply_nterror(req, status);
                END_PROFILE(SMBcheckpath);
                return;
@@ -911,7 +911,7 @@ void reply_checkpath(struct smb_request *req)
                one at a time - if a component fails it expects
                ERRbadpath, not ERRbadfile.
        */
-       status = map_checkpath_error((char *)req->inbuf, status);
+       status = map_checkpath_error(req->flags2, status);
        if (NT_STATUS_EQUAL(status, NT_STATUS_OBJECT_NAME_NOT_FOUND)) {
                /*
                 * Windows returns different error codes if