From: chenxiaosong.chenxiaosong@linux.dev
To: sfrench@samba.org, smfrench@gmail.com, linkinjeon@kernel.org,
linkinjeon@samba.org
Cc: linux-cifs@vger.kernel.org, linux-kernel@vger.kernel.org,
ChenXiaoSong <chenxiaosong@kylinos.cn>
Subject: [PATCH v2 4/6] smb/server: fix return value of smb2_ioctl()
Date: Fri, 17 Oct 2025 18:46:10 +0800 [thread overview]
Message-ID: <20251017104613.3094031-5-chenxiaosong.chenxiaosong@linux.dev> (raw)
In-Reply-To: <20251017104613.3094031-1-chenxiaosong.chenxiaosong@linux.dev>
From: ChenXiaoSong <chenxiaosong@kylinos.cn>
__process_request() will not print error messages if smb2_ioctl()
always returns 0.
Fix this by returning the correct value at the end of function.
Signed-off-by: ChenXiaoSong <chenxiaosong@kylinos.cn>
---
fs/smb/server/smb2pdu.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/fs/smb/server/smb2pdu.c b/fs/smb/server/smb2pdu.c
index ff264249f405..efd545882ba8 100644
--- a/fs/smb/server/smb2pdu.c
+++ b/fs/smb/server/smb2pdu.c
@@ -8164,7 +8164,7 @@ int smb2_ioctl(struct ksmbd_work *work)
id = req->VolatileFileId;
if (req->Flags != cpu_to_le32(SMB2_0_IOCTL_IS_FSCTL)) {
- rsp->hdr.Status = STATUS_NOT_SUPPORTED;
+ ret = -EOPNOTSUPP;
goto out;
}
@@ -8184,8 +8184,9 @@ int smb2_ioctl(struct ksmbd_work *work)
case FSCTL_DFS_GET_REFERRALS:
case FSCTL_DFS_GET_REFERRALS_EX:
/* Not support DFS yet */
+ ret = -EOPNOTSUPP;
rsp->hdr.Status = STATUS_FS_DRIVER_REQUIRED;
- goto out;
+ goto out2;
case FSCTL_CREATE_OR_GET_OBJECT_ID:
{
struct file_object_buf_type1_ioctl_rsp *obj_buf;
@@ -8475,8 +8476,10 @@ int smb2_ioctl(struct ksmbd_work *work)
rsp->hdr.Status = STATUS_BUFFER_TOO_SMALL;
else if (ret < 0 || rsp->hdr.Status == 0)
rsp->hdr.Status = STATUS_INVALID_PARAMETER;
+
+out2:
smb2_set_err_rsp(work);
- return 0;
+ return ret;
}
/**
--
2.43.0
next prev parent reply other threads:[~2025-10-17 10:47 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-17 10:46 [PATCH v2 0/6] smb/server: fix return values of smb2_0_server_cmds proc chenxiaosong.chenxiaosong
2025-10-17 10:46 ` [PATCH v2 1/6] smb/server: fix return value of smb2_read() chenxiaosong.chenxiaosong
2025-10-18 18:27 ` Markus Elfring
[not found] ` <CAH2r5mt4X4+k89t9CSqxuF55jooOt=X-BMB9AGR+e9WNEh6Y0g@mail.gmail.com>
[not found] ` <cc22c66e-9ecb-4aa4-9b38-bd148820269c@web.de>
[not found] ` <CAH2r5mtiAy7h__rFd9mP-jutx38C9JSpPOPhn9ngqsezeX4_4g@mail.gmail.com>
[not found] ` <8d9ab96f-b7cf-4ebb-9a1b-4b0f2b94461f@web.de>
[not found] ` <CAH2r5mvx5+zQwhFRz-_dMmxYDX4PDzY5X9WGEd0M1Xf73bRyLA@mail.gmail.com>
[not found] ` <3d3fe6c0-b05e-4e36-8b02-0fc16438c781@linux.dev>
2025-10-19 11:56 ` [v2 " ChenXiaoSong
2025-10-19 12:32 ` Markus Elfring
2025-10-17 10:46 ` [PATCH v2 2/6] smb/server: fix return value of smb2_notify() chenxiaosong.chenxiaosong
2025-10-18 18:30 ` Markus Elfring
2025-11-11 9:54 ` ChenXiaoSong
2025-10-17 10:46 ` [PATCH v2 3/6] smb/server: fix return value of smb2_query_dir() chenxiaosong.chenxiaosong
2025-10-17 10:46 ` chenxiaosong.chenxiaosong [this message]
2025-10-17 10:46 ` [PATCH v2 5/6] smb/server: fix return value of smb2_oplock_break() chenxiaosong.chenxiaosong
2025-10-17 10:46 ` [PATCH v2 6/6] smb/server: update some misguided comment of smb2_0_server_cmds proc chenxiaosong.chenxiaosong
2025-10-17 14:55 ` [PATCH v2 0/6] smb/server: fix return values " ChenXiaoSong
2025-10-18 1:14 ` Namjae Jeon
2025-10-18 18:42 ` Markus Elfring
2025-11-10 3:01 ` ChenXiaoSong
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20251017104613.3094031-5-chenxiaosong.chenxiaosong@linux.dev \
--to=chenxiaosong.chenxiaosong@linux.dev \
--cc=chenxiaosong@kylinos.cn \
--cc=linkinjeon@kernel.org \
--cc=linkinjeon@samba.org \
--cc=linux-cifs@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=sfrench@samba.org \
--cc=smfrench@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox