summaryrefslogtreecommitdiff
path: root/source3/libsmb/errormap.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2006-07-25 16:48:08 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 11:38:21 -0500
commit74cd692d9b34ef8344a36d3b01bd24fa9108d9b6 (patch)
treea88960378709b1dcf17d70978da21c1852fe6149 /source3/libsmb/errormap.c
parent7ad912c2641f0138884dd37626cc6294ec54d93c (diff)
downloadsamba-74cd692d9b34ef8344a36d3b01bd24fa9108d9b6.tar.gz
samba-74cd692d9b34ef8344a36d3b01bd24fa9108d9b6.tar.bz2
samba-74cd692d9b34ef8344a36d3b01bd24fa9108d9b6.zip
r17234: Fix error mappings for EQUOTA and ENOBUFS.
Based on an idea from Shlomi Yaakobovich <Shlomi@exanet.com>. Jeremy. (This used to be commit 9c440925f879d1e4ef99d04e2dfbe41077869204)
Diffstat (limited to 'source3/libsmb/errormap.c')
-rw-r--r--source3/libsmb/errormap.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/source3/libsmb/errormap.c b/source3/libsmb/errormap.c
index b3caa0a80c..a5e922fd5c 100644
--- a/source3/libsmb/errormap.c
+++ b/source3/libsmb/errormap.c
@@ -779,7 +779,11 @@ static const struct {
{ERRHRD, ERRlock, NT_STATUS_FILE_LOCK_CONFLICT},
{ERRHRD, ERRwrongdisk, NT_STATUS_WRONG_VOLUME},
{ERRHRD, 38, NT_STATUS_END_OF_FILE},
+#if defined(WITH_QUOTAS) && defined(EDQUOT)
+ {ERRHRD, ERRdiskfull, NT_STATUS_QUOTA_EXCEEDED},
+#else
{ERRHRD, ERRdiskfull, NT_STATUS_DISK_FULL},
+#endif
{ERRHRD, 50, NT_STATUS_CTL_FILE_NOT_SUPPORTED},
{ERRHRD, 51, NT_STATUS_REMOTE_NOT_LISTENING},
{ERRHRD, 52, NT_STATUS_DUPLICATE_NAME},
@@ -1522,7 +1526,7 @@ const struct unix_error_map unix_dos_nt_errmap[] = {
{ EISDIR, ERRDOS, ERRnoaccess, NT_STATUS_FILE_IS_A_DIRECTORY},
{ EMLINK, ERRDOS, ERRgeneral, NT_STATUS_TOO_MANY_LINKS },
#ifdef EDQUOT
- { EDQUOT, ERRHRD, ERRdiskfull, NT_STATUS_DISK_FULL },
+ { EDQUOT, ERRHRD, ERRdiskfull, NT_STATUS_QUOTA_EXCEEDED },
#endif
#ifdef ENOTEMPTY
{ ENOTEMPTY, ERRDOS, ERRnoaccess, NT_STATUS_DIRECTORY_NOT_EMPTY },
@@ -1539,6 +1543,9 @@ const struct unix_error_map unix_dos_nt_errmap[] = {
#ifdef EFBIG
{ EFBIG, ERRHRD, ERRdiskfull, NT_STATUS_DISK_FULL },
#endif
+#ifdef ENOBUFS
+ { ENOBUFS, ERRDOS, ERRnomem, NT_STATUS_INSUFFICIENT_RESOURCES },
+#endif
{ 0, 0, 0, NT_STATUS_OK }
};