summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChenXiaoSong <chenxiaosong@kylinos.cn>2026-01-22 08:23:56 +0300
committerSteve French <stfrench@microsoft.com>2026-02-12 23:22:29 +0300
commitba39063ca3ee885af62bdde2c184b8295bf4bf12 (patch)
tree84f9defaf32dd763880c497ac3e74e5de2a6247f
parent66dc58bdbd7c1897d87c06fee6e0f176c85190a0 (diff)
downloadlinux-ba39063ca3ee885af62bdde2c184b8295bf4bf12.tar.xz
smb/client: map NT_STATUS_NOTIFY_ENUM_DIR
See MS-CIFS 2.2.2.4 STATUS_NOTIFY_ENUM_DIR. Signed-off-by: ChenXiaoSong <chenxiaosong@kylinos.cn> Signed-off-by: Steve French <stfrench@microsoft.com>
-rw-r--r--fs/smb/client/nterr.c1
-rw-r--r--fs/smb/client/nterr.h2
-rw-r--r--fs/smb/client/smb1maperror.c1
3 files changed, 3 insertions, 1 deletions
diff --git a/fs/smb/client/nterr.c b/fs/smb/client/nterr.c
index ab5a2119efd0..806ad6d7c22a 100644
--- a/fs/smb/client/nterr.c
+++ b/fs/smb/client/nterr.c
@@ -14,6 +14,7 @@
const struct nt_err_code_struct nt_errs[] = {
{"NT_STATUS_OK", NT_STATUS_OK},
{"NT_STATUS_PENDING", NT_STATUS_PENDING},
+ {"NT_STATUS_NOTIFY_ENUM_DIR", NT_STATUS_NOTIFY_ENUM_DIR},
{"NT_STATUS_MEDIA_CHANGED", NT_STATUS_MEDIA_CHANGED},
{"NT_STATUS_END_OF_MEDIA", NT_STATUS_END_OF_MEDIA},
{"NT_STATUS_MEDIA_CHECK", NT_STATUS_MEDIA_CHECK},
diff --git a/fs/smb/client/nterr.h b/fs/smb/client/nterr.h
index b04cd0d786b1..e8306704f5e3 100644
--- a/fs/smb/client/nterr.h
+++ b/fs/smb/client/nterr.h
@@ -27,7 +27,6 @@ extern const struct nt_err_code_struct nt_errs[];
#define NT_ERROR_INVALID_PARAMETER 0x0057
#define NT_ERROR_INSUFFICIENT_BUFFER 0x007a
#define NT_STATUS_1804 0x070c
-#define NT_STATUS_NOTIFY_ENUM_DIR 0x010c
/*
* Win32 Error codes extracted using a loop in smbclient then printing a netmon
@@ -37,6 +36,7 @@ extern const struct nt_err_code_struct nt_errs[];
#define NT_STATUS_OK 0x0000
#define NT_STATUS_PENDING 0x0103
#define NT_STATUS_SOME_UNMAPPED 0x0107
+#define NT_STATUS_NOTIFY_ENUM_DIR 0x010c
#define NT_STATUS_BUFFER_OVERFLOW 0x80000005
#define NT_STATUS_NO_MORE_ENTRIES 0x8000001a
#define NT_STATUS_MEDIA_CHANGED 0x8000001c
diff --git a/fs/smb/client/smb1maperror.c b/fs/smb/client/smb1maperror.c
index 277ef0865be0..ae13367e3782 100644
--- a/fs/smb/client/smb1maperror.c
+++ b/fs/smb/client/smb1maperror.c
@@ -112,6 +112,7 @@ static const struct {
__u32 ntstatus;
} ntstatus_to_dos_map[] = {
{
+ ERRSRV, ERR_NOTIFY_ENUM_DIR, NT_STATUS_NOTIFY_ENUM_DIR}, {
ERRDOS, ERRgeneral, NT_STATUS_UNSUCCESSFUL}, {
ERRDOS, ERRbadfunc, NT_STATUS_NOT_IMPLEMENTED}, {
ERRDOS, ERRbadpipe, NT_STATUS_INVALID_INFO_CLASS}, {