summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2006-05-22 02:07:11 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 14:08:21 -0500
commit79183f68fc2bbe9094f9ab4e1bf7c5a3c8d5dd07 (patch)
tree62a73f8354dacd8c08d0a3e24719147c6e4100a5
parentd51f4fb2c7c4f2eaee8f67769e76f05c5a289996 (diff)
downloadsamba-79183f68fc2bbe9094f9ab4e1bf7c5a3c8d5dd07.tar.gz
samba-79183f68fc2bbe9094f9ab4e1bf7c5a3c8d5dd07.tar.bz2
samba-79183f68fc2bbe9094f9ab4e1bf7c5a3c8d5dd07.zip
r15794: fixed a problem with DOS status codes - found by kukks (thanks!)
(This used to be commit 1a57b16715bf8b82e8f9118c3ab401acf081d02c)
-rw-r--r--source4/libcli/util/errormap.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/source4/libcli/util/errormap.c b/source4/libcli/util/errormap.c
index f4feaeffc5..e6a1c0e71c 100644
--- a/source4/libcli/util/errormap.c
+++ b/source4/libcli/util/errormap.c
@@ -1198,6 +1198,11 @@ void ntstatus_to_dos(NTSTATUS ntstatus, uint8_t *eclass, uint32_t *ecode)
*ecode = 0;
return;
}
+ if (NT_STATUS_IS_DOS(ntstatus)) {
+ *eclass = NT_STATUS_DOS_CLASS(ntstatus);
+ *ecode = NT_STATUS_DOS_CODE(ntstatus);
+ return;
+ }
for (i=0; NT_STATUS_V(ntstatus_to_dos_map[i].ntstatus); i++) {
if (NT_STATUS_V(ntstatus) ==
NT_STATUS_V(ntstatus_to_dos_map[i].ntstatus)) {