Merge branch 'master' of ssh://git.samba.org/data/git/samba
authorJelmer Vernooij <jelmer@samba.org>
Thu, 23 Oct 2008 15:12:16 +0000 (17:12 +0200)
committerJelmer Vernooij <jelmer@samba.org>
Thu, 23 Oct 2008 15:12:16 +0000 (17:12 +0200)
24 files changed:
lib/util/asn1_proto.h
libcli/util/ntstatus.h
librpc/ndr/libndr.h
selftest/target/Samba3.pm
source3/include/doserr.h [deleted file]
source3/include/includes.h
source3/include/nt_status.h [deleted file]
source3/include/nterr.h [deleted file]
source3/include/proto.h
source3/include/smb.h
source3/include/util_tdb.h
source3/lib/smbconf/smbconf.c
source3/lib/smbconf/smbconf_reg.c
source3/libsmb/doserr.c
source3/libsmb/nterr.c
source3/rpc_server/srv_echo_nt.c
source3/rpc_server/srv_spoolss_nt.c
source3/rpc_server/srv_srvsvc_nt.c
source3/utils/net_ads.c
source3/utils/net_rpc.c
source4/libcli/config.mk
source4/libcli/ldap/ldap.h
source4/libcli/util/errormap.c [moved from libcli/util/errormap.c with 100% similarity]
source4/libcli/util/nterr.c [moved from libcli/util/nterr.c with 99% similarity]

index 9b7b4d26d5a27e3a8100dc6c675d8911f738d99a..972f7a35916874a25620cf7f4617e63084a86ec2 100644 (file)
@@ -1,5 +1,5 @@
-#ifndef _____LIB_UTIL_ASN1_PROTO_H__
-#define _____LIB_UTIL_ASN1_PROTO_H__
+#ifndef ___HOME_JELMER_SAMBA4_GIT_SOURCE3____SOURCE4____LIB_UTIL_ASN1_PROTO_H__
+#define ___HOME_JELMER_SAMBA4_GIT_SOURCE3____SOURCE4____LIB_UTIL_ASN1_PROTO_H__
 
 #undef _PRINTF_ATTRIBUTE
 #define _PRINTF_ATTRIBUTE(a1, a2) PRINTF_ATTRIBUTE(a1, a2)
@@ -10,7 +10,7 @@
  * used outside this particular subsystem! */
 
 
-/* The following definitions come from ../lib/util/asn1.c  */
+/* The following definitions come from /home/jelmer/samba4.git/source3/../source4/../lib/util/asn1.c  */
 
 struct asn1_data *asn1_init(TALLOC_CTX *mem_ctx);
 void asn1_free(struct asn1_data *data);
@@ -55,5 +55,5 @@ NTSTATUS asn1_full_tag(DATA_BLOB blob, uint8_t tag, size_t *packet_size);
 #undef _PRINTF_ATTRIBUTE
 #define _PRINTF_ATTRIBUTE(a1, a2)
 
-#endif /* _____LIB_UTIL_ASN1_PROTO_H__ */
+#endif /* ___HOME_JELMER_SAMBA4_GIT_SOURCE3____SOURCE4____LIB_UTIL_ASN1_PROTO_H__ */
 
index b7195a41b44e64aaf250113791458d72c9386394..bf03d51d02221185be09330439445bf115d33352 100644 (file)
@@ -632,7 +632,11 @@ NTSTATUS nt_status_string_to_code(const char *nt_status_str);
 #define NT_STATUS_IS_ERR(x) ((NT_STATUS_V(x) & 0xc0000000) == 0xc0000000)
 /* checking for DOS error mapping here is ugly, but unfortunately the
    alternative is a very intrusive rewrite of the torture code */
+#if _SAMBA_BUILD_ == 4
 #define NT_STATUS_EQUAL(x,y) (NT_STATUS_IS_DOS(x)||NT_STATUS_IS_DOS(y)?ntstatus_dos_equal(x,y):NT_STATUS_V(x) == NT_STATUS_V(y))
+#else
+#define NT_STATUS_EQUAL(x,y) (NT_STATUS_V(x) == NT_STATUS_V(y))
+#endif
 
 #define NT_STATUS_HAVE_NO_MEMORY(x) do { \
        if (!(x)) {\
index 63b89e17f4674ec82228af2f7b6d87d152a78995..bedf41e965cf223049d7cd169681e37f88cfe06e 100644 (file)
@@ -302,9 +302,7 @@ typedef enum ndr_err_code (*ndr_pull_flags_fn_t)(struct ndr_pull *, int ndr_flag
 typedef void (*ndr_print_fn_t)(struct ndr_print *, const char *, const void *);
 typedef void (*ndr_print_function_t)(struct ndr_print *, const char *, int, const void *);
 
-#if _SAMBA_BUILD_ == 4
-#include "libcli/util/error.h"
-#endif
+#include "../libcli/util/error.h"
 #include "librpc/gen_ndr/misc.h"
 
 extern const struct ndr_syntax_id ndr_transfer_syntax;
index b0c4eb22bd0dcf2ae9e2f856edb0d7774742c37b..eb6db1a4074acdfa3995e33e4a2677302d98eb16 100644 (file)
@@ -387,7 +387,7 @@ print CONF "
        ## create a test account
        ##
 
-       open(PWD, "|".$self->binpath("smbpasswd")." -c $conffile -L -s -a $username");
+       open(PWD, "|".$self->binpath("smbpasswd")." -c $conffile -L -s -a $username >/dev/null");
        print PWD "$password\n$password\n";
        close(PWD) or die("Unable to set password for test account");
 
diff --git a/source3/include/doserr.h b/source3/include/doserr.h
deleted file mode 100644 (file)
index 5d3b866..0000000
+++ /dev/null
@@ -1,303 +0,0 @@
-/* 
-   Unix SMB/CIFS implementation.
-   DOS error code constants
-   Copyright (C) Andrew Tridgell              1992-2000
-   Copyright (C) John H Terpstra              1996-2000
-   Copyright (C) Luke Kenneth Casson Leighton 1996-2000
-   Copyright (C) Paul Ashton                  1998-2000
-   Copyright (C) Gerald (Jerry) Carter        2005
-   
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 3 of the License, or
-   (at your option) any later version.
-   
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-   
-   You should have received a copy of the GNU General Public License
-   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifndef _DOSERR_H
-#define _DOSERR_H
-
-/* Error classes */
-
-#define ERRDOS 0x01 /*  Error is from the core DOS operating system set. */
-#define ERRSRV 0x02  /* Error is generated by the server network file manager.*/
-#define ERRHRD 0x03  /* Error is an hardware error. */
-#define ERRCMD 0xFF  /* Command was not in the "SMB" format. */
-
-/* SMB X/Open error codes for the ERRDOS error class */
-#define ERRsuccess 0 /* No error */
-#define ERRbadfunc 1 /* Invalid function (or system call) */
-#define ERRbadfile 2 /* File not found (pathname error) */
-#define ERRbadpath 3 /* Directory not found */
-#define ERRnofids 4 /* Too many open files */
-#define ERRnoaccess 5 /* Access denied */
-#define ERRbadfid 6 /* Invalid fid */
-#define ERRbadmcb 7 /* Memory control blocks destroyed. */
-#define ERRnomem 8 /* Out of memory */
-#define ERRbadmem 9 /* Invalid memory block address */
-#define ERRbadenv 10 /* Invalid environment */
-#define ERRbadformat 11 /* Bad Format */
-#define ERRbadaccess 12 /* Invalid open mode */
-#define ERRbaddata 13 /* Invalid data (only from ioctl call) */
-#define ERRres 14 /* reserved */
-#define ERRbaddrive 15 /* Invalid drive */
-#define ERRremcd 16 /* Attempt to delete current directory */
-#define ERRdiffdevice 17 /* rename/move across different filesystems */
-#define ERRnofiles 18 /* no more files found in file search */
-#define ERRgeneral 31 /* General failure */
-#define ERRbadshare 32 /* Share mode on file conflict with open mode */
-#define ERRlock 33 /* Lock request conflicts with existing lock */
-#define ERRunsup 50 /* Request unsupported, returned by Win 95, RJS 20Jun98 */
-#define ERRnetnamedel 64 /* Network name deleted or not available */
-#define ERRnosuchshare 67 /* You specified an invalid share name */
-#define ERRfilexists 80 /* File in operation already exists */
-#define ERRinvalidparam 87
-#define ERRcannotopen 110 /* Cannot open the file specified */
-#define ERRbufferoverflow 111
-#define ERRinsufficientbuffer 122
-#define ERRinvalidname 123 /* Invalid name */
-#define ERRunknownlevel 124
-#define ERRnotlocked 158 /* This region is not locked by this locking context. */
-#define ERRinvalidpath 161
-#define ERRcancelviolation 173
-#define ERRnoatomiclocks 174
-#define ERRrename 183
-#define ERRbadpipe 230 /* Named pipe invalid */
-#define ERRpipebusy 231 /* All instances of pipe are busy */
-#define ERRpipeclosing 232 /* named pipe close in progress */
-#define ERRnotconnected 233 /* No process on other end of named pipe */
-#define ERRmoredata 234 /* More data to be returned */
-#define ERReainconsistent 255 /* from EMC */
-#define ERRnomoreitems 259
-#define ERRbaddirectory 267 /* Invalid directory name in a path. */
-#define ERReasnotsupported 282 /* Extended attributes */
-#define ERRlogonfailure 1326 /* Unknown username or bad password */
-#define ERRbuftoosmall 2123
-#define ERRunknownipc 2142
-#define ERRnosuchprintjob 2151
-#define ERRinvgroup 2455
-
-/* here's a special one from observing NT */
-#define ERRnoipc 66 /* don't support ipc */
-
-/* These errors seem to be only returned by the NT printer driver system */
-#define ERRdriveralreadyinstalled 1795 /* ERROR_PRINTER_DRIVER_ALREADY_INSTALLED */
-#define ERRunknownprinterport 1796 /* ERROR_UNKNOWN_PORT */
-#define ERRunknownprinterdriver 1797 /* ERROR_UNKNOWN_PRINTER_DRIVER */
-#define ERRunknownprintprocessor 1798 /* ERROR_UNKNOWN_PRINTPROCESSOR */
-#define ERRinvalidseparatorfile 1799 /* ERROR_INVALID_SEPARATOR_FILE */
-#define ERRinvalidjobpriority 1800 /* ERROR_INVALID_PRIORITY */
-#define ERRinvalidprintername 1801 /* ERROR_INVALID_PRINTER_NAME */
-#define ERRprinteralreadyexists 1802 /* ERROR_PRINTER_ALREADY_EXISTS */
-#define ERRinvalidprintercommand 1803 /* ERROR_INVALID_PRINTER_COMMAND */
-#define ERRinvaliddatatype 1804 /* ERROR_INVALID_DATATYPE */
-#define ERRinvalidenvironment 1805 /* ERROR_INVALID_ENVIRONMENT */
-
-#define ERRunknownprintmonitor 3000 /* ERROR_UNKNOWN_PRINT_MONITOR */
-#define ERRprinterdriverinuse 3001 /* ERROR_PRINTER_DRIVER_IN_USE */
-#define ERRspoolfilenotfound 3002 /* ERROR_SPOOL_FILE_NOT_FOUND */
-#define ERRnostartdoc 3003 /* ERROR_SPL_NO_STARTDOC */
-#define ERRnoaddjob 3004 /* ERROR_SPL_NO_ADDJOB */
-#define ERRprintprocessoralreadyinstalled 3005 /* ERROR_PRINT_PROCESSOR_ALREADY_INSTALLED */
-#define ERRprintmonitoralreadyinstalled 3006 /* ERROR_PRINT_MONITOR_ALREADY_INSTALLED */
-#define ERRinvalidprintmonitor 3007 /* ERROR_INVALID_PRINT_MONITOR */
-#define ERRprintmonitorinuse 3008 /* ERROR_PRINT_MONITOR_IN_USE */
-#define ERRprinterhasjobsqueued 3009 /* ERROR_PRINTER_HAS_JOBS_QUEUED */
-
-/* Error codes for the ERRSRV class */
-
-#define ERRerror 1 /* Non specific error code */
-#define ERRbadpw 2 /* Bad password */
-#define ERRbadtype 3 /* reserved */
-#define ERRaccess 4 /* No permissions to do the requested operation */
-#define ERRinvnid 5 /* tid invalid */
-#define ERRinvnetname 6 /* Invalid servername */
-#define ERRinvdevice 7 /* Invalid device */
-#define ERRqfull 49 /* Print queue full */
-#define ERRqtoobig 50 /* Queued item too big */
-#define ERRinvpfid 52 /* Invalid print file in smb_fid */
-#define ERRsmbcmd 64 /* Unrecognised command */
-#define ERRsrverror 65 /* smb server internal error */
-#define ERRfilespecs 67 /* fid and pathname invalid combination */
-#define ERRbadlink 68 /* reserved */
-#define ERRbadpermits 69 /* Access specified for a file is not valid */
-#define ERRbadpid 70 /* reserved */
-#define ERRsetattrmode 71 /* attribute mode invalid */
-#define ERRpaused 81 /* Message server paused */
-#define ERRmsgoff 82 /* Not receiving messages */
-#define ERRnoroom 83 /* No room for message */
-#define ERRrmuns 87 /* too many remote usernames */
-#define ERRtimeout 88 /* operation timed out */
-#define ERRnoresource  89 /* No resources currently available for request. */
-#define ERRtoomanyuids 90 /* too many userids */
-#define ERRbaduid 91 /* bad userid */
-#define ERRuseMPX 250 /* temporarily unable to use raw mode, use MPX mode */
-#define ERRuseSTD 251 /* temporarily unable to use raw mode, use standard mode */
-#define ERRcontMPX 252 /* resume MPX mode */
-#define ERRbadPW /* reserved */
-#define ERRnosupport 0xFFFF
-#define ERRunknownsmb 22 /* from NT 3.5 response */
-
-/* Error codes for the ERRHRD class */
-
-#define ERRnowrite 19 /* read only media */
-#define ERRbadunit 20 /* Unknown device */
-#define ERRnotready 21 /* Drive not ready */
-#define ERRbadcmd 22 /* Unknown command */
-#define ERRdata 23 /* Data (CRC) error */
-#define ERRbadreq 24 /* Bad request structure length */
-#define ERRseek 25
-#define ERRbadmedia 26
-#define ERRbadsector 27
-#define ERRnopaper 28
-#define ERRwrite 29 /* write fault */
-#define ERRread 30 /* read fault */
-#define ERRgeneral 31 /* General hardware failure */
-#define ERRwrongdisk 34
-#define ERRFCBunavail 35
-#define ERRsharebufexc 36 /* share buffer exceeded */
-#define ERRdiskfull 39
-
-
-/* these are win32 error codes. There are only a few places where
-   these matter for Samba, primarily in the NT printing code */
-#define WERR_OK W_ERROR(0)
-#define WERR_BADFUNC W_ERROR(1)
-#define WERR_BADFILE W_ERROR(2)
-#define WERR_ACCESS_DENIED W_ERROR(5)
-#define WERR_BADFID W_ERROR(6)
-#define WERR_NOMEM W_ERROR(8)
-#define WERR_GENERAL_FAILURE W_ERROR(31)
-#define WERR_NOT_SUPPORTED W_ERROR(50)
-#define WERR_DEVICE_NOT_EXIST W_ERROR(55)
-#define WERR_PRINTQ_FULL W_ERROR(61)
-#define WERR_NO_SPOOL_SPACE W_ERROR(62)
-#define WERR_NO_SUCH_SHARE W_ERROR(67)
-#define WERR_ALREADY_EXISTS W_ERROR(80)
-#define WERR_BAD_PASSWORD W_ERROR(86)
-#define WERR_INVALID_PARAM W_ERROR(87)
-#define WERR_SEM_TIMEOUT W_ERROR(121)
-#define WERR_INSUFFICIENT_BUFFER W_ERROR(122)
-#define WERR_INVALID_NAME W_ERROR(123)
-#define WERR_UNKNOWN_LEVEL W_ERROR(124)
-#define WERR_OBJECT_PATH_INVALID W_ERROR(161)
-#define WERR_NO_MORE_ITEMS W_ERROR(259)
-#define WERR_MORE_DATA W_ERROR(234)
-#define WERR_INVALID_OWNER W_ERROR(1307)
-#define WERR_IO_PENDING W_ERROR(997)
-#define WERR_CAN_NOT_COMPLETE W_ERROR(1003)
-#define WERR_INVALID_FLAGS W_ERROR(1004)
-#define WERR_REG_CORRUPT W_ERROR(1015)
-#define WERR_REG_IO_FAILURE W_ERROR(1016)
-#define WERR_REG_FILE_INVALID W_ERROR(1017)
-#define WERR_NO_SUCH_SERVICE W_ERROR(1060)
-#define WERR_INVALID_SERVICE_CONTROL W_ERROR(1052)
-#define WERR_SERVICE_ALREADY_RUNNING W_ERROR(1056)
-#define WERR_SERVICE_DISABLED W_ERROR(1058)
-#define WERR_SERVICE_NEVER_STARTED W_ERROR(1077)
-#define WERR_NOT_FOUND W_ERROR(1168)
-#define WERR_INVALID_COMPUTER_NAME W_ERROR(1210)
-#define WERR_INVALID_DOMAINNAME W_ERROR(1212)
-#define WERR_MACHINE_LOCKED W_ERROR(1271)
-#define WERR_REVISION_MISMATCH W_ERROR(1306)
-#define WERR_NO_LOGON_SERVERS W_ERROR(1311)
-#define WERR_NO_SUCH_LOGON_SESSION W_ERROR(1312)
-#define WERR_USER_ALREADY_EXISTS W_ERROR(1316)
-#define WERR_NO_SUCH_USER W_ERROR(1317)
-#define WERR_GROUP_EXISTS W_ERROR(1318)
-#define WERR_MEMBER_IN_GROUP W_ERROR(1320)
-#define WERR_USER_NOT_IN_GROUP W_ERROR(1321)
-#define WERR_WRONG_PASSWORD W_ERROR(1323)
-#define WERR_PASSWORD_RESTRICTION W_ERROR(1325)
-#define WERR_LOGON_FAILURE W_ERROR(1326)
-#define WERR_NO_SUCH_DOMAIN W_ERROR(1355)
-#define WERR_NONE_MAPPED W_ERROR(1332)
-#define WERR_INVALID_SECURITY_DESCRIPTOR W_ERROR(1338)
-#define WERR_INVALID_DOMAIN_STATE W_ERROR(1353)
-#define WERR_INVALID_DOMAIN_ROLE W_ERROR(1354)
-#define WERR_SPECIAL_ACCOUNT W_ERROR(1371)
-#define WERR_NO_SUCH_ALIAS W_ERROR(1376)
-#define WERR_MEMBER_IN_ALIAS W_ERROR(1378)
-#define WERR_ALIAS_EXISTS W_ERROR(1379)
-#define WERR_TIME_SKEW W_ERROR(1398)
-#define WERR_EVENTLOG_FILE_CORRUPT W_ERROR(1500)
-#define WERR_SERVER_UNAVAILABLE W_ERROR(1722)
-#define WERR_INVALID_FORM_NAME W_ERROR(1902)
-#define WERR_INVALID_FORM_SIZE W_ERROR(1903)
-#define WERR_PASSWORD_MUST_CHANGE W_ERROR(1907)
-#define WERR_DOMAIN_CONTROLLER_NOT_FOUND W_ERROR(1908)
-#define WERR_ACCOUNT_LOCKED_OUT W_ERROR(1909)
-
-#define WERR_DEVICE_NOT_AVAILABLE W_ERROR(4319)
-#define WERR_STATUS_MORE_ENTRIES   W_ERROR(0x0105)
-
-#define WERR_DS_DRA_BAD_DN W_ERROR(8439)
-#define WERR_DS_DRA_BAD_NC W_ERROR(8440)
-
-#define WERR_PRINTER_DRIVER_ALREADY_INSTALLED W_ERROR(ERRdriveralreadyinstalled)
-#define WERR_UNKNOWN_PORT W_ERROR(ERRunknownprinterport)
-#define WERR_UNKNOWN_PRINTER_DRIVER W_ERROR(ERRunknownprinterdriver)
-#define WERR_UNKNOWN_PRINTPROCESSOR W_ERROR(ERRunknownprintprocessor)
-#define WERR_INVALID_SEPARATOR_FILE W_ERROR(ERRinvalidseparatorfile)
-#define WERR_INVALID_PRIORITY W_ERROR(ERRinvalidjobpriority)
-#define WERR_INVALID_PRINTER_NAME W_ERROR(ERRinvalidprintername)
-#define WERR_PRINTER_ALREADY_EXISTS W_ERROR(ERRprinteralreadyexists)
-#define WERR_INVALID_PRINTER_COMMAND W_ERROR(ERRinvalidprintercommand)
-#define WERR_INVALID_DATATYPE W_ERROR(ERRinvaliddatatype)
-#define WERR_INVALID_ENVIRONMENT W_ERROR(ERRinvalidenvironment)
-
-#define WERR_UNKNOWN_PRINT_MONITOR W_ERROR(ERRunknownprintmonitor)
-#define WERR_PRINTER_DRIVER_IN_USE W_ERROR(ERRprinterdriverinuse)
-#define WERR_SPOOL_FILE_NOT_FOUND W_ERROR(ERRspoolfilenotfound)
-#define WERR_SPL_NO_STARTDOC W_ERROR(ERRnostartdoc)
-#define WERR_SPL_NO_ADDJOB W_ERROR(ERRnoaddjob)
-#define WERR_PRINT_PROCESSOR_ALREADY_INSTALLED W_ERROR(ERRprintprocessoralreadyinstalled)
-#define WERR_PRINT_MONITOR_ALREADY_INSTALLED W_ERROR(ERRprintmonitoralreadyinstalled)
-#define WERR_INVALID_PRINT_MONITOR W_ERROR(ERRinvalidprintmonitor)
-#define WERR_PRINT_MONITOR_IN_USE W_ERROR(ERRprintmonitorinuse)
-#define WERR_PRINTER_HAS_JOBS_QUEUED W_ERROR(ERRprinterhasjobsqueued)
-
-/* Configuration Manager Errors */
-/* Basically Win32 errors meanings are specific to the \ntsvcs pipe */
-
-#define WERR_CM_NO_MORE_HW_PROFILES W_ERROR(35)
-#define WERR_CM_NO_SUCH_VALUE W_ERROR(37)
-
-
-/* DFS errors */
-
-#ifndef NERR_BASE
-#define NERR_BASE (2100)
-#endif
-
-#ifndef MAX_NERR
-#define MAX_NERR (NERR_BASE+899)
-#endif
-
-#define WERR_BUF_TOO_SMALL             W_ERROR(NERR_BASE+23)
-#define WERR_JOB_NOT_FOUND             W_ERROR(NERR_BASE+51)
-#define WERR_DEST_NOT_FOUND            W_ERROR(NERR_BASE+52)
-#define WERR_GROUP_NOT_FOUND           W_ERROR(NERR_BASE+120)
-#define WERR_USER_NOT_FOUND            W_ERROR(NERR_BASE+121)
-#define WERR_USER_EXISTS               W_ERROR(NERR_BASE+124)
-#define WERR_NET_NAME_NOT_FOUND                W_ERROR(NERR_BASE+210)
-#define WERR_NOT_LOCAL_DOMAIN          W_ERROR(NERR_BASE+220)
-#define WERR_DC_NOT_FOUND              W_ERROR(NERR_BASE+353)
-#define WERR_DFS_NO_SUCH_VOL            W_ERROR(NERR_BASE+562)
-#define WERR_DFS_NO_SUCH_SHARE          W_ERROR(NERR_BASE+565)
-#define WERR_DFS_NO_SUCH_SERVER         W_ERROR(NERR_BASE+573)
-#define WERR_DFS_INTERNAL_ERROR         W_ERROR(NERR_BASE+590)
-#define WERR_DFS_CANT_CREATE_JUNCT      W_ERROR(NERR_BASE+569)
-#define WERR_SETUP_ALREADY_JOINED      W_ERROR(NERR_BASE+591)
-#define WERR_SETUP_NOT_JOINED          W_ERROR(NERR_BASE+592)
-#define WERR_SETUP_DOMAIN_CONTROLLER   W_ERROR(NERR_BASE+593)
-#define WERR_DEFAULT_JOIN_REQUIRED     W_ERROR(NERR_BASE+594)
-
-#endif /* _DOSERR_H */
index 716235752d319d4264018cf570066ebe014f0f5a..6b25982ff7fa445c1f82c41f8ef55247038f519a 100644 (file)
@@ -590,12 +590,11 @@ struct smb_iconv_convenience *lp_iconv_convenience(void *lp_ctx);
 #define talloc_get_type_abort(ptr, type) \
        (type *)talloc_check_name_abort(ptr, #type)
 
-#include "nt_status.h"
 #include "ads.h"
 #include "ads_dns.h"
 #include "interfaces.h"
 #include "trans2.h"
-#include "nterr.h"
+#include "../libcli/util/error.h"
 #include "ntioctl.h"
 #include "charset.h"
 #include "dynconfig.h"
diff --git a/source3/include/nt_status.h b/source3/include/nt_status.h
deleted file mode 100644 (file)
index 30174e4..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-/* 
-   Unix SMB/CIFS implementation.
-   SMB parameters and setup, plus a whole lot more.
-   
-   Copyright (C) Andrew Tridgell              2001
-   
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 3 of the License, or
-   (at your option) any later version.
-   
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-   
-   You should have received a copy of the GNU General Public License
-   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifndef _NT_STATUS_H
-#define _NT_STATUS_H
-
-/* The Splint code analysis tool doesn't like immediate structures. */
-
-#ifdef _SPLINT_                      /* http://www.splint.org */
-#undef HAVE_IMMEDIATE_STRUCTURES
-#endif
-
-/* The following rather strange looking definitions of NTSTATUS and WERROR
-   are there in order to catch common coding errors where different error types
-   are mixed up. This is especially important as we slowly convert Samba
-   from using bool for internal functions.
-*/
-
-#if defined(HAVE_IMMEDIATE_STRUCTURES)
-typedef struct {uint32 v;} NTSTATUS;
-#define NT_STATUS(x) ((NTSTATUS) { x })
-#define NT_STATUS_V(x) ((x).v)
-#else
-typedef uint32 NTSTATUS;
-#define NT_STATUS(x) (x)
-#define NT_STATUS_V(x) (x)
-#endif
-
-#if defined(HAVE_IMMEDIATE_STRUCTURES)
-typedef struct {uint32 w;} WERROR;
-#define W_ERROR(x) ((WERROR) { x })
-#define W_ERROR_V(x) ((x).w)
-#else
-typedef uint32 WERROR;
-#define W_ERROR(x) (x)
-#define W_ERROR_V(x) (x)
-#endif
-
-#define NT_STATUS_IS_OK(x) (NT_STATUS_V(x) == 0)
-#define NT_STATUS_IS_ERR(x) ((NT_STATUS_V(x) & 0xc0000000) == 0xc0000000)
-#define NT_STATUS_EQUAL(x,y) (NT_STATUS_V(x) == NT_STATUS_V(y))
-#define W_ERROR_IS_OK(x) (W_ERROR_V(x) == 0)
-#define W_ERROR_EQUAL(x,y) (W_ERROR_V(x) == W_ERROR_V(y))
-
-#define NT_STATUS_HAVE_NO_MEMORY(x) do { \
-        if (!(x)) {\
-                return NT_STATUS_NO_MEMORY;\
-        }\
-} while (0)
-
-#define NT_STATUS_NOT_OK_RETURN(x) do { \
-       if (!NT_STATUS_IS_OK(x)) {\
-               return x;\
-       }\
-} while (0)
-
-#define W_ERROR_HAVE_NO_MEMORY(x) do { \
-       if (!(x)) {\
-               return WERR_NOMEM;\
-       }\
-} while (0)
-
-#define W_ERROR_NOT_OK_RETURN(x) do { \
-       if (!W_ERROR_IS_OK(x)) {\
-               return x;\
-       }\
-} while (0)
-
-/* The top byte in an NTSTATUS code is used as a type field.
- * Windows only uses value 0xC0 as an indicator for an NT error
- * and 0x00 for success.
- * So we can use the type field to store other types of error codes
- * inside the three lower bytes. 
- * NB: The system error codes (errno) are not integrated via a type of
- *     their own but are mapped to genuine NT error codes via 
- *     map_nt_error_from_unix() */
-
-#define NT_STATUS_TYPE(status) ((NT_STATUS_V(status) & 0xFF000000) >> 24)
-
-#define NT_STATUS_TYPE_DOS  0xF1
-#define NT_STATUS_TYPE_LDAP 0xF2
-
-/* this defines special NTSTATUS codes to represent DOS errors.  I
-   have chosen this macro to produce status codes in the invalid
-   NTSTATUS range */
-#define NT_STATUS_DOS_MASK (NT_STATUS_TYPE_DOS << 24)
-#define NT_STATUS_DOS(class, code) NT_STATUS(NT_STATUS_DOS_MASK | ((class)<<16) | code)
-#define NT_STATUS_IS_DOS(status) ((NT_STATUS_V(status) & 0xFF000000) == NT_STATUS_DOS_MASK)
-#define NT_STATUS_DOS_CLASS(status) ((NT_STATUS_V(status) >> 16) & 0xFF)
-#define NT_STATUS_DOS_CODE(status) (NT_STATUS_V(status) & 0xFFFF)
-
-/* define ldap error codes as NTSTATUS codes */
-#define NT_STATUS_LDAP_MASK (NT_STATUS_TYPE_LDAP << 24)
-#define NT_STATUS_LDAP(code) NT_STATUS(NT_STATUS_LDAP_MASK | code)
-#define NT_STATUS_IS_LDAP(status) ((NT_STATUS_V(status) & 0xFF000000) == NT_STATUS_LDAP_MASK)
-#define NT_STATUS_LDAP_CODE(status) (NT_STATUS_V(status) & ~0xFF000000)
-
-#endif
diff --git a/source3/include/nterr.h b/source3/include/nterr.h
deleted file mode 100644 (file)
index 612cf6e..0000000
+++ /dev/null
@@ -1,571 +0,0 @@
-/* 
-   Unix SMB/CIFS implementation.
-   NT error code constants
-   Copyright (C) Andrew Tridgell              1992-2000
-   Copyright (C) John H Terpstra              1996-2000
-   Copyright (C) Luke Kenneth Casson Leighton 1996-2000
-   Copyright (C) Paul Ashton                  1998-2000
-   
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 3 of the License, or
-   (at your option) any later version.
-   
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-   
-   You should have received a copy of the GNU General Public License
-   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifndef _NTERR_H
-#define _NTERR_H
-
-/* Win32 Status codes. */
-
-#define STATUS_BUFFER_OVERFLOW            NT_STATUS(0x80000005)
-#define STATUS_NO_MORE_FILES              NT_STATUS(0x80000006)
-#define NT_STATUS_NO_MORE_ENTRIES         NT_STATUS(0x8000001a)
-
-/* Vista Status codes. */
-#define NT_STATUS_INACCESSIBLE_SYSTEM_SHORTCUT         NT_STATUS(0x8000002d)
-
-#define STATUS_MORE_ENTRIES               NT_STATUS(0x0105)
-#define STATUS_SOME_UNMAPPED              NT_STATUS(0x0107)
-#define ERROR_INVALID_PARAMETER                  NT_STATUS(0x0057)
-#define ERROR_INSUFFICIENT_BUFFER        NT_STATUS(0x007a)
-#define STATUS_NOTIFY_ENUM_DIR            NT_STATUS(0x010c)
-#define ERROR_INVALID_DATATYPE           NT_STATUS(0x070c)
-
-/* Win32 Error codes extracted using a loop in smbclient then printing a
-   netmon sniff to a file. */
-
-/*
-                       --------------
-                      /              \
-                     /      REST      \
-                    /        IN        \
-                   /       PEACE        \
-                  /                      \
-                  | NT_STATUS_NOPROBLEMO |
-                  |                      |
-                  |                      |
-                  |      4 September     |
-                  |                      |
-                  |         2001         |
-                 *|     *  *  *          | *
-        _________)/\\_//(\/(/\)/\//\/\///|_)_______
-*/
-
-#define NT_STATUS_OK NT_STATUS(0x0000)
-#define NT_STATUS_UNSUCCESSFUL NT_STATUS(0xC0000000 | 0x0001)
-#define NT_STATUS_NOT_IMPLEMENTED NT_STATUS(0xC0000000 | 0x0002)
-#define NT_STATUS_INVALID_INFO_CLASS NT_STATUS(0xC0000000 | 0x0003)
-#define NT_STATUS_INFO_LENGTH_MISMATCH NT_STATUS(0xC0000000 | 0x0004)
-#define NT_STATUS_ACCESS_VIOLATION NT_STATUS(0xC0000000 | 0x0005)
-#define NT_STATUS_IN_PAGE_ERROR NT_STATUS(0xC0000000 | 0x0006)
-#define NT_STATUS_PAGEFILE_QUOTA NT_STATUS(0xC0000000 | 0x0007)
-#define NT_STATUS_INVALID_HANDLE NT_STATUS(0xC0000000 | 0x0008)
-#define NT_STATUS_BAD_INITIAL_STACK NT_STATUS(0xC0000000 | 0x0009)
-#define NT_STATUS_BAD_INITIAL_PC NT_STATUS(0xC0000000 | 0x000a)
-#define NT_STATUS_INVALID_CID NT_STATUS(0xC0000000 | 0x000b)
-#define NT_STATUS_TIMER_NOT_CANCELED NT_STATUS(0xC0000000 | 0x000c)
-#define NT_STATUS_INVALID_PARAMETER NT_STATUS(0xC0000000 | 0x000d)
-#define NT_STATUS_NO_SUCH_DEVICE NT_STATUS(0xC0000000 | 0x000e)
-#define NT_STATUS_NO_SUCH_FILE NT_STATUS(0xC0000000 | 0x000f)
-#define NT_STATUS_INVALID_DEVICE_REQUEST NT_STATUS(0xC0000000 | 0x0010)
-#define NT_STATUS_END_OF_FILE NT_STATUS(0xC0000000 | 0x0011)
-#define NT_STATUS_WRONG_VOLUME NT_STATUS(0xC0000000 | 0x0012)
-#define NT_STATUS_NO_MEDIA_IN_DEVICE NT_STATUS(0xC0000000 | 0x0013)
-#define NT_STATUS_UNRECOGNIZED_MEDIA NT_STATUS(0xC0000000 | 0x0014)
-#define NT_STATUS_NONEXISTENT_SECTOR NT_STATUS(0xC0000000 | 0x0015)
-#define NT_STATUS_MORE_PROCESSING_REQUIRED NT_STATUS(0xC0000000 | 0x0016)
-#define NT_STATUS_NO_MEMORY NT_STATUS(0xC0000000 | 0x0017)
-#define NT_STATUS_CONFLICTING_ADDRESSES NT_STATUS(0xC0000000 | 0x0018)
-#define NT_STATUS_NOT_MAPPED_VIEW NT_STATUS(0xC0000000 | 0x0019)
-#define NT_STATUS_UNABLE_TO_FREE_VM NT_STATUS(0xC0000000 | 0x001a)
-#define NT_STATUS_UNABLE_TO_DELETE_SECTION NT_STATUS(0xC0000000 | 0x001b)
-#define NT_STATUS_INVALID_SYSTEM_SERVICE NT_STATUS(0xC0000000 | 0x001c)
-#define NT_STATUS_ILLEGAL_INSTRUCTION NT_STATUS(0xC0000000 | 0x001d)
-#define NT_STATUS_INVALID_LOCK_SEQUENCE NT_STATUS(0xC0000000 | 0x001e)
-#define NT_STATUS_INVALID_VIEW_SIZE NT_STATUS(0xC0000000 | 0x001f)
-#define NT_STATUS_INVALID_FILE_FOR_SECTION NT_STATUS(0xC0000000 | 0x0020)
-#define NT_STATUS_ALREADY_COMMITTED NT_STATUS(0xC0000000 | 0x0021)
-#define NT_STATUS_ACCESS_DENIED NT_STATUS(0xC0000000 | 0x0022)
-#define NT_STATUS_BUFFER_TOO_SMALL NT_STATUS(0xC0000000 | 0x0023)
-#define NT_STATUS_OBJECT_TYPE_MISMATCH NT_STATUS(0xC0000000 | 0x0024)
-#define NT_STATUS_NONCONTINUABLE_EXCEPTION NT_STATUS(0xC0000000 | 0x0025)
-#define NT_STATUS_INVALID_DISPOSITION NT_STATUS(0xC0000000 | 0x0026)
-#define NT_STATUS_UNWIND NT_STATUS(0xC0000000 | 0x0027)
-#define NT_STATUS_BAD_STACK NT_STATUS(0xC0000000 | 0x0028)
-#define NT_STATUS_INVALID_UNWIND_TARGET NT_STATUS(0xC0000000 | 0x0029)
-#define NT_STATUS_NOT_LOCKED NT_STATUS(0xC0000000 | 0x002a)
-#define NT_STATUS_PARITY_ERROR NT_STATUS(0xC0000000 | 0x002b)
-#define NT_STATUS_UNABLE_TO_DECOMMIT_VM NT_STATUS(0xC0000000 | 0x002c)
-#define NT_STATUS_NOT_COMMITTED NT_STATUS(0xC0000000 | 0x002d)
-#define NT_STATUS_INVALID_PORT_ATTRIBUTES NT_STATUS(0xC0000000 | 0x002e)
-#define NT_STATUS_PORT_MESSAGE_TOO_LONG NT_STATUS(0xC0000000 | 0x002f)
-#define NT_STATUS_INVALID_PARAMETER_MIX NT_STATUS(0xC0000000 | 0x0030)
-#define NT_STATUS_INVALID_QUOTA_LOWER NT_STATUS(0xC0000000 | 0x0031)
-#define NT_STATUS_DISK_CORRUPT_ERROR NT_STATUS(0xC0000000 | 0x0032)
-#define NT_STATUS_OBJECT_NAME_INVALID NT_STATUS(0xC0000000 | 0x0033)
-#define NT_STATUS_OBJECT_NAME_NOT_FOUND NT_STATUS(0xC0000000 | 0x0034)
-#define NT_STATUS_OBJECT_NAME_COLLISION NT_STATUS(0xC0000000 | 0x0035)
-#define NT_STATUS_HANDLE_NOT_WAITABLE NT_STATUS(0xC0000000 | 0x0036)
-#define NT_STATUS_PORT_DISCONNECTED NT_STATUS(0xC0000000 | 0x0037)
-#define NT_STATUS_DEVICE_ALREADY_ATTACHED NT_STATUS(0xC0000000 | 0x0038)
-#define NT_STATUS_OBJECT_PATH_INVALID NT_STATUS(0xC0000000 | 0x0039)
-#define NT_STATUS_OBJECT_PATH_NOT_FOUND NT_STATUS(0xC0000000 | 0x003a)
-#define NT_STATUS_OBJECT_PATH_SYNTAX_BAD NT_STATUS(0xC0000000 | 0x003b)
-#define NT_STATUS_DATA_OVERRUN NT_STATUS(0xC0000000 | 0x003c)
-#define NT_STATUS_DATA_LATE_ERROR NT_STATUS(0xC0000000 | 0x003d)
-#define NT_STATUS_DATA_ERROR NT_STATUS(0xC0000000 | 0x003e)
-#define NT_STATUS_CRC_ERROR NT_STATUS(0xC0000000 | 0x003f)
-#define NT_STATUS_SECTION_TOO_BIG NT_STATUS(0xC0000000 | 0x0040)
-#define NT_STATUS_PORT_CONNECTION_REFUSED NT_STATUS(0xC0000000 | 0x0041)
-#define NT_STATUS_INVALID_PORT_HANDLE NT_STATUS(0xC0000000 | 0x0042)
-#define NT_STATUS_SHARING_VIOLATION NT_STATUS(0xC0000000 | 0x0043)
-#define NT_STATUS_QUOTA_EXCEEDED NT_STATUS(0xC0000000 | 0x0044)
-#define NT_STATUS_INVALID_PAGE_PROTECTION NT_STATUS(0xC0000000 | 0x0045)
-#define NT_STATUS_MUTANT_NOT_OWNED NT_STATUS(0xC0000000 | 0x0046)
-#define NT_STATUS_SEMAPHORE_LIMIT_EXCEEDED NT_STATUS(0xC0000000 | 0x0047)
-#define NT_STATUS_PORT_ALREADY_SET NT_STATUS(0xC0000000 | 0x0048)
-#define NT_STATUS_SECTION_NOT_IMAGE NT_STATUS(0xC0000000 | 0x0049)
-#define NT_STATUS_SUSPEND_COUNT_EXCEEDED NT_STATUS(0xC0000000 | 0x004a)
-#define NT_STATUS_THREAD_IS_TERMINATING NT_STATUS(0xC0000000 | 0x004b)
-#define NT_STATUS_BAD_WORKING_SET_LIMIT NT_STATUS(0xC0000000 | 0x004c)
-#define NT_STATUS_INCOMPATIBLE_FILE_MAP NT_STATUS(0xC0000000 | 0x004d)
-#define NT_STATUS_SECTION_PROTECTION NT_STATUS(0xC0000000 | 0x004e)
-#define NT_STATUS_EAS_NOT_SUPPORTED NT_STATUS(0xC0000000 | 0x004f)
-#define NT_STATUS_EA_TOO_LARGE NT_STATUS(0xC0000000 | 0x0050)
-#define NT_STATUS_NONEXISTENT_EA_ENTRY NT_STATUS(0xC0000000 | 0x0051)
-#define NT_STATUS_NO_EAS_ON_FILE NT_STATUS(0xC0000000 | 0x0052)
-#define NT_STATUS_EA_CORRUPT_ERROR NT_STATUS(0xC0000000 | 0x0053)
-#define NT_STATUS_FILE_LOCK_CONFLICT NT_STATUS(0xC0000000 | 0x0054)
-#define NT_STATUS_LOCK_NOT_GRANTED NT_STATUS(0xC0000000 | 0x0055)
-#define NT_STATUS_DELETE_PENDING NT_STATUS(0xC0000000 | 0x0056)
-#define NT_STATUS_CTL_FILE_NOT_SUPPORTED NT_STATUS(0xC0000000 | 0x0057)
-#define NT_STATUS_UNKNOWN_REVISION NT_STATUS(0xC0000000 | 0x0058)
-#define NT_STATUS_REVISION_MISMATCH NT_STATUS(0xC0000000 | 0x0059)
-#define NT_STATUS_INVALID_OWNER NT_STATUS(0xC0000000 | 0x005a)
-#define NT_STATUS_INVALID_PRIMARY_GROUP NT_STATUS(0xC0000000 | 0x005b)
-#define NT_STATUS_NO_IMPERSONATION_TOKEN NT_STATUS(0xC0000000 | 0x005c)
-#define NT_STATUS_CANT_DISABLE_MANDATORY NT_STATUS(0xC0000000 | 0x005d)
-#define NT_STATUS_NO_LOGON_SERVERS NT_STATUS(0xC0000000 | 0x005e)
-#define NT_STATUS_NO_SUCH_LOGON_SESSION NT_STATUS(0xC0000000 | 0x005f)
-#define NT_STATUS_NO_SUCH_PRIVILEGE NT_STATUS(0xC0000000 | 0x0060)
-#define NT_STATUS_PRIVILEGE_NOT_HELD NT_STATUS(0xC0000000 | 0x0061)
-#define NT_STATUS_INVALID_ACCOUNT_NAME NT_STATUS(0xC0000000 | 0x0062)
-#define NT_STATUS_USER_EXISTS NT_STATUS(0xC0000000 | 0x0063)
-#define NT_STATUS_NO_SUCH_USER NT_STATUS(0xC0000000 | 0x0064)
-#define NT_STATUS_GROUP_EXISTS NT_STATUS(0xC0000000 | 0x0065)
-#define NT_STATUS_NO_SUCH_GROUP NT_STATUS(0xC0000000 | 0x0066)
-#define NT_STATUS_MEMBER_IN_GROUP NT_STATUS(0xC0000000 | 0x0067)
-#define NT_STATUS_MEMBER_NOT_IN_GROUP NT_STATUS(0xC0000000 | 0x0068)
-#define NT_STATUS_LAST_ADMIN NT_STATUS(0xC0000000 | 0x0069)
-#define NT_STATUS_WRONG_PASSWORD NT_STATUS(0xC0000000 | 0x006a)
-#define NT_STATUS_ILL_FORMED_PASSWORD NT_STATUS(0xC0000000 | 0x006b)
-#define NT_STATUS_PASSWORD_RESTRICTION NT_STATUS(0xC0000000 | 0x006c)
-#define NT_STATUS_LOGON_FAILURE NT_STATUS(0xC0000000 | 0x006d)
-#define NT_STATUS_ACCOUNT_RESTRICTION NT_STATUS(0xC0000000 | 0x006e)
-#define NT_STATUS_INVALID_LOGON_HOURS NT_STATUS(0xC0000000 | 0x006f)
-#define NT_STATUS_INVALID_WORKSTATION NT_STATUS(0xC0000000 | 0x0070)
-#define NT_STATUS_PASSWORD_EXPIRED NT_STATUS(0xC0000000 | 0x0071)
-#define NT_STATUS_ACCOUNT_DISABLED NT_STATUS(0xC0000000 | 0x0072)
-#define NT_STATUS_NONE_MAPPED NT_STATUS(0xC0000000 | 0x0073)
-#define NT_STATUS_TOO_MANY_LUIDS_REQUESTED NT_STATUS(0xC0000000 | 0x0074)
-#define NT_STATUS_LUIDS_EXHAUSTED NT_STATUS(0xC0000000 | 0x0075)
-#define NT_STATUS_INVALID_SUB_AUTHORITY NT_STATUS(0xC0000000 | 0x0076)
-#define NT_STATUS_INVALID_ACL NT_STATUS(0xC0000000 | 0x0077)
-#define NT_STATUS_INVALID_SID NT_STATUS(0xC0000000 | 0x0078)
-#define NT_STATUS_INVALID_SECURITY_DESCR NT_STATUS(0xC0000000 | 0x0079)
-#define NT_STATUS_PROCEDURE_NOT_FOUND NT_STATUS(0xC0000000 | 0x007a)
-#define NT_STATUS_INVALID_IMAGE_FORMAT NT_STATUS(0xC0000000 | 0x007b)
-#define NT_STATUS_NO_TOKEN NT_STATUS(0xC0000000 | 0x007c)
-#define NT_STATUS_BAD_INHERITANCE_ACL NT_STATUS(0xC0000000 | 0x007d)
-#define NT_STATUS_RANGE_NOT_LOCKED NT_STATUS(0xC0000000 | 0x007e)
-#define NT_STATUS_DISK_FULL NT_STATUS(0xC0000000 | 0x007f)
-#define NT_STATUS_SERVER_DISABLED NT_STATUS(0xC0000000 | 0x0080)
-#define NT_STATUS_SERVER_NOT_DISABLED NT_STATUS(0xC0000000 | 0x0081)
-#define NT_STATUS_TOO_MANY_GUIDS_REQUESTED NT_STATUS(0xC0000000 | 0x0082)
-#define NT_STATUS_GUIDS_EXHAUSTED NT_STATUS(0xC0000000 | 0x0083)
-#define NT_STATUS_INVALID_ID_AUTHORITY NT_STATUS(0xC0000000 | 0x0084)
-#define NT_STATUS_AGENTS_EXHAUSTED NT_STATUS(0xC0000000 | 0x0085)
-#define NT_STATUS_INVALID_VOLUME_LABEL NT_STATUS(0xC0000000 | 0x0086)
-#define NT_STATUS_SECTION_NOT_EXTENDED NT_STATUS(0xC0000000 | 0x0087)
-#define NT_STATUS_NOT_MAPPED_DATA NT_STATUS(0xC0000000 | 0x0088)
-#define NT_STATUS_RESOURCE_DATA_NOT_FOUND NT_STATUS(0xC0000000 | 0x0089)
-#define NT_STATUS_RESOURCE_TYPE_NOT_FOUND NT_STATUS(0xC0000000 | 0x008a)
-#define NT_STATUS_RESOURCE_NAME_NOT_FOUND NT_STATUS(0xC0000000 | 0x008b)
-#define NT_STATUS_ARRAY_BOUNDS_EXCEEDED NT_STATUS(0xC0000000 | 0x008c)
-#define NT_STATUS_FLOAT_DENORMAL_OPERAND NT_STATUS(0xC0000000 | 0x008d)
-#define NT_STATUS_FLOAT_DIVIDE_BY_ZERO NT_STATUS(0xC0000000 | 0x008e)
-#define NT_STATUS_FLOAT_INEXACT_RESULT NT_STATUS(0xC0000000 | 0x008f)
-#define NT_STATUS_FLOAT_INVALID_OPERATION NT_STATUS(0xC0000000 | 0x0090)
-#define NT_STATUS_FLOAT_OVERFLOW NT_STATUS(0xC0000000 | 0x0091)
-#define NT_STATUS_FLOAT_STACK_CHECK NT_STATUS(0xC0000000 | 0x0092)
-#define NT_STATUS_FLOAT_UNDERFLOW NT_STATUS(0xC0000000 | 0x0093)
-#define NT_STATUS_INTEGER_DIVIDE_BY_ZERO NT_STATUS(0xC0000000 | 0x0094)
-#define NT_STATUS_INTEGER_OVERFLOW NT_STATUS(0xC0000000 | 0x0095)
-#define NT_STATUS_PRIVILEGED_INSTRUCTION NT_STATUS(0xC0000000 | 0x0096)
-#define NT_STATUS_TOO_MANY_PAGING_FILES NT_STATUS(0xC0000000 | 0x0097)
-#define NT_STATUS_FILE_INVALID NT_STATUS(0xC0000000 | 0x0098)
-#define NT_STATUS_ALLOTTED_SPACE_EXCEEDED NT_STATUS(0xC0000000 | 0x0099)
-#define NT_STATUS_INSUFFICIENT_RESOURCES NT_STATUS(0xC0000000 | 0x009a)
-#define NT_STATUS_DFS_EXIT_PATH_FOUND NT_STATUS(0xC0000000 | 0x009b)
-#define NT_STATUS_DEVICE_DATA_ERROR NT_STATUS(0xC0000000 | 0x009c)
-#define NT_STATUS_DEVICE_NOT_CONNECTED NT_STATUS(0xC0000000 | 0x009d)
-#define NT_STATUS_DEVICE_POWER_FAILURE NT_STATUS(0xC0000000 | 0x009e)
-#define NT_STATUS_FREE_VM_NOT_AT_BASE NT_STATUS(0xC0000000 | 0x009f)
-#define NT_STATUS_MEMORY_NOT_ALLOCATED NT_STATUS(0xC0000000 | 0x00a0)
-#define NT_STATUS_WORKING_SET_QUOTA NT_STATUS(0xC0000000 | 0x00a1)
-#define NT_STATUS_MEDIA_WRITE_PROTECTED NT_STATUS(0xC0000000 | 0x00a2)
-#define NT_STATUS_DEVICE_NOT_READY NT_STATUS(0xC0000000 | 0x00a3)
-#define NT_STATUS_INVALID_GROUP_ATTRIBUTES NT_STATUS(0xC0000000 | 0x00a4)
-#define NT_STATUS_BAD_IMPERSONATION_LEVEL NT_STATUS(0xC0000000 | 0x00a5)
-#define NT_STATUS_CANT_OPEN_ANONYMOUS NT_STATUS(0xC0000000 | 0x00a6)
-#define NT_STATUS_BAD_VALIDATION_CLASS NT_STATUS(0xC0000000 | 0x00a7)
-#define NT_STATUS_BAD_TOKEN_TYPE NT_STATUS(0xC0000000 | 0x00a8)
-#define NT_STATUS_BAD_MASTER_BOOT_RECORD NT_STATUS(0xC0000000 | 0x00a9)
-#define NT_STATUS_INSTRUCTION_MISALIGNMENT NT_STATUS(0xC0000000 | 0x00aa)
-#define NT_STATUS_INSTANCE_NOT_AVAILABLE NT_STATUS(0xC0000000 | 0x00ab)
-#define NT_STATUS_PIPE_NOT_AVAILABLE NT_STATUS(0xC0000000 | 0x00ac)
-#define NT_STATUS_INVALID_PIPE_STATE NT_STATUS(0xC0000000 | 0x00ad)
-#define NT_STATUS_PIPE_BUSY NT_STATUS(0xC0000000 | 0x00ae)
-#define NT_STATUS_ILLEGAL_FUNCTION NT_STATUS(0xC0000000 | 0x00af)
-#define NT_STATUS_PIPE_DISCONNECTED NT_STATUS(0xC0000000 | 0x00b0)
-#define NT_STATUS_PIPE_CLOSING NT_STATUS(0xC0000000 | 0x00b1)
-#define NT_STATUS_PIPE_CONNECTED NT_STATUS(0xC0000000 | 0x00b2)
-#define NT_STATUS_PIPE_LISTENING NT_STATUS(0xC0000000 | 0x00b3)
-#define NT_STATUS_INVALID_READ_MODE NT_STATUS(0xC0000000 | 0x00b4)
-#define NT_STATUS_IO_TIMEOUT NT_STATUS(0xC0000000 | 0x00b5)
-#define NT_STATUS_FILE_FORCED_CLOSED NT_STATUS(0xC0000000 | 0x00b6)
-#define NT_STATUS_PROFILING_NOT_STARTED NT_STATUS(0xC0000000 | 0x00b7)
-#define NT_STATUS_PROFILING_NOT_STOPPED NT_STATUS(0xC0000000 | 0x00b8)
-#define NT_STATUS_COULD_NOT_INTERPRET NT_STATUS(0xC0000000 | 0x00b9)
-#define NT_STATUS_FILE_IS_A_DIRECTORY NT_STATUS(0xC0000000 | 0x00ba)
-#define NT_STATUS_NOT_SUPPORTED NT_STATUS(0xC0000000 | 0x00bb)
-#define NT_STATUS_REMOTE_NOT_LISTENING NT_STATUS(0xC0000000 | 0x00bc)
-#define NT_STATUS_DUPLICATE_NAME NT_STATUS(0xC0000000 | 0x00bd)
-#define NT_STATUS_BAD_NETWORK_PATH NT_STATUS(0xC0000000 | 0x00be)
-#define NT_STATUS_NETWORK_BUSY NT_STATUS(0xC0000000 | 0x00bf)
-#define NT_STATUS_DEVICE_DOES_NOT_EXIST NT_STATUS(0xC0000000 | 0x00c0)
-#define NT_STATUS_TOO_MANY_COMMANDS NT_STATUS(0xC0000000 | 0x00c1)
-#define NT_STATUS_ADAPTER_HARDWARE_ERROR NT_STATUS(0xC0000000 | 0x00c2)
-#define NT_STATUS_INVALID_NETWORK_RESPONSE NT_STATUS(0xC0000000 | 0x00c3)
-#define NT_STATUS_UNEXPECTED_NETWORK_ERROR NT_STATUS(0xC0000000 | 0x00c4)
-#define NT_STATUS_BAD_REMOTE_ADAPTER NT_STATUS(0xC0000000 | 0x00c5)
-#define NT_STATUS_PRINT_QUEUE_FULL NT_STATUS(0xC0000000 | 0x00c6)
-#define NT_STATUS_NO_SPOOL_SPACE NT_STATUS(0xC0000000 | 0x00c7)
-#define NT_STATUS_PRINT_CANCELLED NT_STATUS(0xC0000000 | 0x00c8)
-#define NT_STATUS_NETWORK_NAME_DELETED NT_STATUS(0xC0000000 | 0x00c9)
-#define NT_STATUS_NETWORK_ACCESS_DENIED NT_STATUS(0xC0000000 | 0x00ca)
-#define NT_STATUS_BAD_DEVICE_TYPE NT_STATUS(0xC0000000 | 0x00cb)
-#define NT_STATUS_BAD_NETWORK_NAME NT_STATUS(0xC0000000 | 0x00cc)
-#define NT_STATUS_TOO_MANY_NAMES NT_STATUS(0xC0000000 | 0x00cd)
-#define NT_STATUS_TOO_MANY_SESSIONS NT_STATUS(0xC0000000 | 0x00ce)
-#define NT_STATUS_SHARING_PAUSED NT_STATUS(0xC0000000 | 0x00cf)
-#define NT_STATUS_REQUEST_NOT_ACCEPTED NT_STATUS(0xC0000000 | 0x00d0)
-#define NT_STATUS_REDIRECTOR_PAUSED NT_STATUS(0xC0000000 | 0x00d1)
-#define NT_STATUS_NET_WRITE_FAULT NT_STATUS(0xC0000000 | 0x00d2)
-#define NT_STATUS_PROFILING_AT_LIMIT NT_STATUS(0xC0000000 | 0x00d3)
-#define NT_STATUS_NOT_SAME_DEVICE NT_STATUS(0xC0000000 | 0x00d4)
-#define NT_STATUS_FILE_RENAMED NT_STATUS(0xC0000000 | 0x00d5)
-#define NT_STATUS_VIRTUAL_CIRCUIT_CLOSED NT_STATUS(0xC0000000 | 0x00d6)
-#define NT_STATUS_NO_SECURITY_ON_OBJECT NT_STATUS(0xC0000000 | 0x00d7)
-#define NT_STATUS_CANT_WAIT NT_STATUS(0xC0000000 | 0x00d8)
-#define NT_STATUS_PIPE_EMPTY NT_STATUS(0xC0000000 | 0x00d9)
-#define NT_STATUS_CANT_ACCESS_DOMAIN_INFO NT_STATUS(0xC0000000 | 0x00da)
-#define NT_STATUS_CANT_TERMINATE_SELF NT_STATUS(0xC0000000 | 0x00db)
-#define NT_STATUS_INVALID_SERVER_STATE NT_STATUS(0xC0000000 | 0x00dc)
-#define NT_STATUS_INVALID_DOMAIN_STATE NT_STATUS(0xC0000000 | 0x00dd)
-#define NT_STATUS_INVALID_DOMAIN_ROLE NT_STATUS(0xC0000000 | 0x00de)
-#define NT_STATUS_NO_SUCH_DOMAIN NT_STATUS(0xC0000000 | 0x00df)
-#define NT_STATUS_DOMAIN_EXISTS NT_STATUS(0xC0000000 | 0x00e0)
-#define NT_STATUS_DOMAIN_LIMIT_EXCEEDED NT_STATUS(0xC0000000 | 0x00e1)
-#define NT_STATUS_OPLOCK_NOT_GRANTED NT_STATUS(0xC0000000 | 0x00e2)
-#define NT_STATUS_INVALID_OPLOCK_PROTOCOL NT_STATUS(0xC0000000 | 0x00e3)
-#define NT_STATUS_INTERNAL_DB_CORRUPTION NT_STATUS(0xC0000000 | 0x00e4)
-#define NT_STATUS_INTERNAL_ERROR NT_STATUS(0xC0000000 | 0x00e5)
-#define NT_STATUS_GENERIC_NOT_MAPPED NT_STATUS(0xC0000000 | 0x00e6)
-#define NT_STATUS_BAD_DESCRIPTOR_FORMAT NT_STATUS(0xC0000000 | 0x00e7)
-#define NT_STATUS_INVALID_USER_BUFFER NT_STATUS(0xC0000000 | 0x00e8)
-#define NT_STATUS_UNEXPECTED_IO_ERROR NT_STATUS(0xC0000000 | 0x00e9)
-#define NT_STATUS_UNEXPECTED_MM_CREATE_ERR NT_STATUS(0xC0000000 | 0x00ea)
-#define NT_STATUS_UNEXPECTED_MM_MAP_ERROR NT_STATUS(0xC0000000 | 0x00eb)
-#define NT_STATUS_UNEXPECTED_MM_EXTEND_ERR NT_STATUS(0xC0000000 | 0x00ec)
-#define NT_STATUS_NOT_LOGON_PROCESS NT_STATUS(0xC0000000 | 0x00ed)
-#define NT_STATUS_LOGON_SESSION_EXISTS NT_STATUS(0xC0000000 | 0x00ee)
-#define NT_STATUS_INVALID_PARAMETER_1 NT_STATUS(0xC0000000 | 0x00ef)
-#define NT_STATUS_INVALID_PARAMETER_2 NT_STATUS(0xC0000000 | 0x00f0)
-#define NT_STATUS_INVALID_PARAMETER_3 NT_STATUS(0xC0000000 | 0x00f1)
-#define NT_STATUS_INVALID_PARAMETER_4 NT_STATUS(0xC0000000 | 0x00f2)
-#define NT_STATUS_INVALID_PARAMETER_5 NT_STATUS(0xC0000000 | 0x00f3)
-#define NT_STATUS_INVALID_PARAMETER_6 NT_STATUS(0xC0000000 | 0x00f4)
-#define NT_STATUS_INVALID_PARAMETER_7 NT_STATUS(0xC0000000 | 0x00f5)
-#define NT_STATUS_INVALID_PARAMETER_8 NT_STATUS(0xC0000000 | 0x00f6)
-#define NT_STATUS_INVALID_PARAMETER_9 NT_STATUS(0xC0000000 | 0x00f7)
-#define NT_STATUS_INVALID_PARAMETER_10 NT_STATUS(0xC0000000 | 0x00f8)
-#define NT_STATUS_INVALID_PARAMETER_11 NT_STATUS(0xC0000000 | 0x00f9)
-#define NT_STATUS_INVALID_PARAMETER_12 NT_STATUS(0xC0000000 | 0x00fa)
-#define NT_STATUS_REDIRECTOR_NOT_STARTED NT_STATUS(0xC0000000 | 0x00fb)
-#define NT_STATUS_REDIRECTOR_STARTED NT_STATUS(0xC0000000 | 0x00fc)
-#define NT_STATUS_STACK_OVERFLOW NT_STATUS(0xC0000000 | 0x00fd)
-#define NT_STATUS_NO_SUCH_PACKAGE NT_STATUS(0xC0000000 | 0x00fe)
-#define NT_STATUS_BAD_FUNCTION_TABLE NT_STATUS(0xC0000000 | 0x00ff)
-#define NT_STATUS_DIRECTORY_NOT_EMPTY NT_STATUS(0xC0000000 | 0x0101)
-#define NT_STATUS_FILE_CORRUPT_ERROR NT_STATUS(0xC0000000 | 0x0102)
-#define NT_STATUS_NOT_A_DIRECTORY NT_STATUS(0xC0000000 | 0x0103)
-#define NT_STATUS_BAD_LOGON_SESSION_STATE NT_STATUS(0xC0000000 | 0x0104)
-#define NT_STATUS_LOGON_SESSION_COLLISION NT_STATUS(0xC0000000 | 0x0105)
-#define NT_STATUS_NAME_TOO_LONG NT_STATUS(0xC0000000 | 0x0106)
-#define NT_STATUS_FILES_OPEN NT_STATUS(0xC0000000 | 0x0107)
-#define NT_STATUS_CONNECTION_IN_USE NT_STATUS(0xC0000000 | 0x0108)
-#define NT_STATUS_MESSAGE_NOT_FOUND NT_STATUS(0xC0000000 | 0x0109)
-#define NT_STATUS_PROCESS_IS_TERMINATING NT_STATUS(0xC0000000 | 0x010a)
-#define NT_STATUS_INVALID_LOGON_TYPE NT_STATUS(0xC0000000 | 0x010b)
-#define NT_STATUS_NO_GUID_TRANSLATION NT_STATUS(0xC0000000 | 0x010c)
-#define NT_STATUS_CANNOT_IMPERSONATE NT_STATUS(0xC0000000 | 0x010d)
-#define NT_STATUS_IMAGE_ALREADY_LOADED NT_STATUS(0xC0000000 | 0x010e)
-#define NT_STATUS_ABIOS_NOT_PRESENT NT_STATUS(0xC0000000 | 0x010f)
-#define NT_STATUS_ABIOS_LID_NOT_EXIST NT_STATUS(0xC0000000 | 0x0110)
-#define NT_STATUS_ABIOS_LID_ALREADY_OWNED NT_STATUS(0xC0000000 | 0x0111)
-#define NT_STATUS_ABIOS_NOT_LID_OWNER NT_STATUS(0xC0000000 | 0x0112)
-#define NT_STATUS_ABIOS_INVALID_COMMAND NT_STATUS(0xC0000000 | 0x0113)
-#define NT_STATUS_ABIOS_INVALID_LID NT_STATUS(0xC0000000 | 0x0114)
-#define NT_STATUS_ABIOS_SELECTOR_NOT_AVAILABLE NT_STATUS(0xC0000000 | 0x0115)
-#define NT_STATUS_ABIOS_INVALID_SELECTOR NT_STATUS(0xC0000000 | 0x0116)
-#define NT_STATUS_NO_LDT NT_STATUS(0xC0000000 | 0x0117)
-#define NT_STATUS_INVALID_LDT_SIZE NT_STATUS(0xC0000000 | 0x0118)
-#define NT_STATUS_INVALID_LDT_OFFSET NT_STATUS(0xC0000000 | 0x0119)
-#define NT_STATUS_INVALID_LDT_DESCRIPTOR NT_STATUS(0xC0000000 | 0x011a)
-#define NT_STATUS_INVALID_IMAGE_NE_FORMAT NT_STATUS(0xC0000000 | 0x011b)
-#define NT_STATUS_RXACT_INVALID_STATE NT_STATUS(0xC0000000 | 0x011c)
-#define NT_STATUS_RXACT_COMMIT_FAILURE NT_STATUS(0xC0000000 | 0x011d)
-#define NT_STATUS_MAPPED_FILE_SIZE_ZERO NT_STATUS(0xC0000000 | 0x011e)
-#define NT_STATUS_TOO_MANY_OPENED_FILES NT_STATUS(0xC0000000 | 0x011f)
-#define NT_STATUS_CANCELLED NT_STATUS(0xC0000000 | 0x0120)
-#define NT_STATUS_CANNOT_DELETE NT_STATUS(0xC0000000 | 0x0121)
-#define NT_STATUS_INVALID_COMPUTER_NAME NT_STATUS(0xC0000000 | 0x0122)
-#define NT_STATUS_FILE_DELETED NT_STATUS(0xC0000000 | 0x0123)
-#define NT_STATUS_SPECIAL_ACCOUNT NT_STATUS(0xC0000000 | 0x0124)
-#define NT_STATUS_SPECIAL_GROUP NT_STATUS(0xC0000000 | 0x0125)
-#define NT_STATUS_SPECIAL_USER NT_STATUS(0xC0000000 | 0x0126)
-#define NT_STATUS_MEMBERS_PRIMARY_GROUP NT_STATUS(0xC0000000 | 0x0127)
-#define NT_STATUS_FILE_CLOSED NT_STATUS(0xC0000000 | 0x0128)
-#define NT_STATUS_TOO_MANY_THREADS NT_STATUS(0xC0000000 | 0x0129)
-#define NT_STATUS_THREAD_NOT_IN_PROCESS NT_STATUS(0xC0000000 | 0x012a)
-#define NT_STATUS_TOKEN_ALREADY_IN_USE NT_STATUS(0xC0000000 | 0x012b)
-#define NT_STATUS_PAGEFILE_QUOTA_EXCEEDED NT_STATUS(0xC0000000 | 0x012c)
-#define NT_STATUS_COMMITMENT_LIMIT NT_STATUS(0xC0000000 | 0x012d)
-#define NT_STATUS_INVALID_IMAGE_LE_FORMAT NT_STATUS(0xC0000000 | 0x012e)
-#define NT_STATUS_INVALID_IMAGE_NOT_MZ NT_STATUS(0xC0000000 | 0x012f)
-#define NT_STATUS_INVALID_IMAGE_PROTECT NT_STATUS(0xC0000000 | 0x0130)
-#define NT_STATUS_INVALID_IMAGE_WIN_16 NT_STATUS(0xC0000000 | 0x0131)
-#define NT_STATUS_LOGON_SERVER_CONFLICT NT_STATUS(0xC0000000 | 0x0132)
-#define NT_STATUS_TIME_DIFFERENCE_AT_DC NT_STATUS(0xC0000000 | 0x0133)
-#define NT_STATUS_SYNCHRONIZATION_REQUIRED NT_STATUS(0xC0000000 | 0x0134)
-#define NT_STATUS_DLL_NOT_FOUND NT_STATUS(0xC0000000 | 0x0135)
-#define NT_STATUS_OPEN_FAILED NT_STATUS(0xC0000000 | 0x0136)
-#define NT_STATUS_IO_PRIVILEGE_FAILED NT_STATUS(0xC0000000 | 0x0137)
-#define NT_STATUS_ORDINAL_NOT_FOUND NT_STATUS(0xC0000000 | 0x0138)
-#define NT_STATUS_ENTRYPOINT_NOT_FOUND NT_STATUS(0xC0000000 | 0x0139)
-#define NT_STATUS_CONTROL_C_EXIT NT_STATUS(0xC0000000 | 0x013a)
-#define NT_STATUS_LOCAL_DISCONNECT NT_STATUS(0xC0000000 | 0x013b)
-#define NT_STATUS_REMOTE_DISCONNECT NT_STATUS(0xC0000000 | 0x013c)
-#define NT_STATUS_REMOTE_RESOURCES NT_STATUS(0xC0000000 | 0x013d)
-#define NT_STATUS_LINK_FAILED NT_STATUS(0xC0000000 | 0x013e)
-#define NT_STATUS_LINK_TIMEOUT NT_STATUS(0xC0000000 | 0x013f)
-#define NT_STATUS_INVALID_CONNECTION NT_STATUS(0xC0000000 | 0x0140)
-#define NT_STATUS_INVALID_ADDRESS NT_STATUS(0xC0000000 | 0x0141)
-#define NT_STATUS_DLL_INIT_FAILED NT_STATUS(0xC0000000 | 0x0142)
-#define NT_STATUS_MISSING_SYSTEMFILE NT_STATUS(0xC0000000 | 0x0143)
-#define NT_STATUS_UNHANDLED_EXCEPTION NT_STATUS(0xC0000000 | 0x0144)
-#define NT_STATUS_APP_INIT_FAILURE NT_STATUS(0xC0000000 | 0x0145)
-#define NT_STATUS_PAGEFILE_CREATE_FAILED NT_STATUS(0xC0000000 | 0x0146)
-#define NT_STATUS_NO_PAGEFILE NT_STATUS(0xC0000000 | 0x0147)
-#define NT_STATUS_INVALID_LEVEL NT_STATUS(0xC0000000 | 0x0148)
-#define NT_STATUS_WRONG_PASSWORD_CORE NT_STATUS(0xC0000000 | 0x0149)
-#define NT_STATUS_ILLEGAL_FLOAT_CONTEXT NT_STATUS(0xC0000000 | 0x014a)
-#define NT_STATUS_PIPE_BROKEN NT_STATUS(0xC0000000 | 0x014b)
-#define NT_STATUS_REGISTRY_CORRUPT NT_STATUS(0xC0000000 | 0x014c)
-#define NT_STATUS_REGISTRY_IO_FAILED NT_STATUS(0xC0000000 | 0x014d)
-#define NT_STATUS_NO_EVENT_PAIR NT_STATUS(0xC0000000 | 0x014e)
-#define NT_STATUS_UNRECOGNIZED_VOLUME NT_STATUS(0xC0000000 | 0x014f)
-#define NT_STATUS_SERIAL_NO_DEVICE_INITED NT_STATUS(0xC0000000 | 0x0150)
-#define NT_STATUS_NO_SUCH_ALIAS NT_STATUS(0xC0000000 | 0x0151)
-#define NT_STATUS_MEMBER_NOT_IN_ALIAS NT_STATUS(0xC0000000 | 0x0152)
-#define NT_STATUS_MEMBER_IN_ALIAS NT_STATUS(0xC0000000 | 0x0153)
-#define NT_STATUS_ALIAS_EXISTS NT_STATUS(0xC0000000 | 0x0154)
-#define NT_STATUS_LOGON_NOT_GRANTED NT_STATUS(0xC0000000 | 0x0155)
-#define NT_STATUS_TOO_MANY_SECRETS NT_STATUS(0xC0000000 | 0x0156)
-#define NT_STATUS_SECRET_TOO_LONG NT_STATUS(0xC0000000 | 0x0157)
-#define NT_STATUS_INTERNAL_DB_ERROR NT_STATUS(0xC0000000 | 0x0158)
-#define NT_STATUS_FULLSCREEN_MODE NT_STATUS(0xC0000000 | 0x0159)
-#define NT_STATUS_TOO_MANY_CONTEXT_IDS NT_STATUS(0xC0000000 | 0x015a)
-#define NT_STATUS_LOGON_TYPE_NOT_GRANTED NT_STATUS(0xC0000000 | 0x015b)
-#define NT_STATUS_NOT_REGISTRY_FILE NT_STATUS(0xC0000000 | 0x015c)
-#define NT_STATUS_NT_CROSS_ENCRYPTION_REQUIRED NT_STATUS(0xC0000000 | 0x015d)
-#define NT_STATUS_DOMAIN_CTRLR_CONFIG_ERROR NT_STATUS(0xC0000000 | 0x015e)
-#define NT_STATUS_FT_MISSING_MEMBER NT_STATUS(0xC0000000 | 0x015f)
-#define NT_STATUS_ILL_FORMED_SERVICE_ENTRY NT_STATUS(0xC0000000 | 0x0160)
-#define NT_STATUS_ILLEGAL_CHARACTER NT_STATUS(0xC0000000 | 0x0161)
-#define NT_STATUS_UNMAPPABLE_CHARACTER NT_STATUS(0xC0000000 | 0x0162)
-#define NT_STATUS_UNDEFINED_CHARACTER NT_STATUS(0xC0000000 | 0x0163)
-#define NT_STATUS_FLOPPY_VOLUME NT_STATUS(0xC0000000 | 0x0164)
-#define NT_STATUS_FLOPPY_ID_MARK_NOT_FOUND NT_STATUS(0xC0000000 | 0x0165)
-#define NT_STATUS_FLOPPY_WRONG_CYLINDER NT_STATUS(0xC0000000 | 0x0166)
-#define NT_STATUS_FLOPPY_UNKNOWN_ERROR NT_STATUS(0xC0000000 | 0x0167)
-#define NT_STATUS_FLOPPY_BAD_REGISTERS NT_STATUS(0xC0000000 | 0x0168)
-#define NT_STATUS_DISK_RECALIBRATE_FAILED NT_STATUS(0xC0000000 | 0x0169)
-#define NT_STATUS_DISK_OPERATION_FAILED NT_STATUS(0xC0000000 | 0x016a)
-#define NT_STATUS_DISK_RESET_FAILED NT_STATUS(0xC0000000 | 0x016b)
-#define NT_STATUS_SHARED_IRQ_BUSY NT_STATUS(0xC0000000 | 0x016c)
-#define NT_STATUS_FT_ORPHANING NT_STATUS(0xC0000000 | 0x016d)
-#define NT_STATUS_PARTITION_FAILURE NT_STATUS(0xC0000000 | 0x0172)
-#define NT_STATUS_INVALID_BLOCK_LENGTH NT_STATUS(0xC0000000 | 0x0173)
-#define NT_STATUS_DEVICE_NOT_PARTITIONED NT_STATUS(0xC0000000 | 0x0174)
-#define NT_STATUS_UNABLE_TO_LOCK_MEDIA NT_STATUS(0xC0000000 | 0x0175)
-#define NT_STATUS_UNABLE_TO_UNLOAD_MEDIA NT_STATUS(0xC0000000 | 0x0176)
-#define NT_STATUS_EOM_OVERFLOW NT_STATUS(0xC0000000 | 0x0177)
-#define NT_STATUS_NO_MEDIA NT_STATUS(0xC0000000 | 0x0178)
-#define NT_STATUS_NO_SUCH_MEMBER NT_STATUS(0xC0000000 | 0x017a)
-#define NT_STATUS_INVALID_MEMBER NT_STATUS(0xC0000000 | 0x017b)
-#define NT_STATUS_KEY_DELETED NT_STATUS(0xC0000000 | 0x017c)
-#define NT_STATUS_NO_LOG_SPACE NT_STATUS(0xC0000000 | 0x017d)
-#define NT_STATUS_TOO_MANY_SIDS NT_STATUS(0xC0000000 | 0x017e)
-#define NT_STATUS_LM_CROSS_ENCRYPTION_REQUIRED NT_STATUS(0xC0000000 | 0x017f)
-#define NT_STATUS_KEY_HAS_CHILDREN NT_STATUS(0xC0000000 | 0x0180)
-#define NT_STATUS_CHILD_MUST_BE_VOLATILE NT_STATUS(0xC0000000 | 0x0181)
-#define NT_STATUS_DEVICE_CONFIGURATION_ERROR NT_STATUS(0xC0000000 | 0x0182)
-#define NT_STATUS_DRIVER_INTERNAL_ERROR NT_STATUS(0xC0000000 | 0x0183)
-#define NT_STATUS_INVALID_DEVICE_STATE NT_STATUS(0xC0000000 | 0x0184)
-#define NT_STATUS_IO_DEVICE_ERROR NT_STATUS(0xC0000000 | 0x0185)
-#define NT_STATUS_DEVICE_PROTOCOL_ERROR NT_STATUS(0xC0000000 | 0x0186)
-#define NT_STATUS_BACKUP_CONTROLLER NT_STATUS(0xC0000000 | 0x0187)
-#define NT_STATUS_LOG_FILE_FULL NT_STATUS(0xC0000000 | 0x0188)
-#define NT_STATUS_TOO_LATE NT_STATUS(0xC0000000 | 0x0189)
-#define NT_STATUS_NO_TRUST_LSA_SECRET NT_STATUS(0xC0000000 | 0x018a)
-#define NT_STATUS_NO_TRUST_SAM_ACCOUNT NT_STATUS(0xC0000000 | 0x018b)
-#define NT_STATUS_TRUSTED_DOMAIN_FAILURE NT_STATUS(0xC0000000 | 0x018c)
-#define NT_STATUS_TRUSTED_RELATIONSHIP_FAILURE NT_STATUS(0xC0000000 | 0x018d)
-#define NT_STATUS_EVENTLOG_FILE_CORRUPT NT_STATUS(0xC0000000 | 0x018e)
-#define NT_STATUS_EVENTLOG_CANT_START NT_STATUS(0xC0000000 | 0x018f)
-#define NT_STATUS_TRUST_FAILURE NT_STATUS(0xC0000000 | 0x0190)
-#define NT_STATUS_MUTANT_LIMIT_EXCEEDED NT_STATUS(0xC0000000 | 0x0191)
-#define NT_STATUS_NETLOGON_NOT_STARTED NT_STATUS(0xC0000000 | 0x0192)
-#define NT_STATUS_ACCOUNT_EXPIRED NT_STATUS(0xC0000000 | 0x0193)
-#define NT_STATUS_POSSIBLE_DEADLOCK NT_STATUS(0xC0000000 | 0x0194)
-#define NT_STATUS_NETWORK_CREDENTIAL_CONFLICT NT_STATUS(0xC0000000 | 0x0195)
-#define NT_STATUS_REMOTE_SESSION_LIMIT NT_STATUS(0xC0000000 | 0x0196)
-#define NT_STATUS_EVENTLOG_FILE_CHANGED NT_STATUS(0xC0000000 | 0x0197)
-#define NT_STATUS_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT NT_STATUS(0xC0000000 | 0x0198)
-#define NT_STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT NT_STATUS(0xC0000000 | 0x0199)
-#define NT_STATUS_NOLOGON_SERVER_TRUST_ACCOUNT NT_STATUS(0xC0000000 | 0x019a)
-#define NT_STATUS_DOMAIN_TRUST_INCONSISTENT NT_STATUS(0xC0000000 | 0x019b)
-#define NT_STATUS_FS_DRIVER_REQUIRED NT_STATUS(0xC0000000 | 0x019c)
-#define NT_STATUS_NO_USER_SESSION_KEY NT_STATUS(0xC0000000 | 0x0202)
-#define NT_STATUS_USER_SESSION_DELETED NT_STATUS(0xC0000000 | 0x0203)
-#define NT_STATUS_RESOURCE_LANG_NOT_FOUND NT_STATUS(0xC0000000 | 0x0204)
-#define NT_STATUS_INSUFF_SERVER_RESOURCES NT_STATUS(0xC0000000 | 0x0205)
-#define NT_STATUS_INVALID_BUFFER_SIZE NT_STATUS(0xC0000000 | 0x0206)
-#define NT_STATUS_INVALID_ADDRESS_COMPONENT NT_STATUS(0xC0000000 | 0x0207)
-#define NT_STATUS_INVALID_ADDRESS_WILDCARD NT_STATUS(0xC0000000 | 0x0208)
-#define NT_STATUS_TOO_MANY_ADDRESSES NT_STATUS(0xC0000000 | 0x0209)
-#define NT_STATUS_ADDRESS_ALREADY_EXISTS NT_STATUS(0xC0000000 | 0x020a)
-#define NT_STATUS_ADDRESS_CLOSED NT_STATUS(0xC0000000 | 0x020b)
-#define NT_STATUS_CONNECTION_DISCONNECTED NT_STATUS(0xC0000000 | 0x020c)
-#define NT_STATUS_CONNECTION_RESET NT_STATUS(0xC0000000 | 0x020d)
-#define NT_STATUS_TOO_MANY_NODES NT_STATUS(0xC0000000 | 0x020e)
-#define NT_STATUS_TRANSACTION_ABORTED NT_STATUS(0xC0000000 | 0x020f)
-#define NT_STATUS_TRANSACTION_TIMED_OUT NT_STATUS(0xC0000000 | 0x0210)
-#define NT_STATUS_TRANSACTION_NO_RELEASE NT_STATUS(0xC0000000 | 0x0211)
-#define NT_STATUS_TRANSACTION_NO_MATCH NT_STATUS(0xC0000000 | 0x0212)
-#define NT_STATUS_TRANSACTION_RESPONDED NT_STATUS(0xC0000000 | 0x0213)
-#define NT_STATUS_TRANSACTION_INVALID_ID NT_STATUS(0xC0000000 | 0x0214)
-#define NT_STATUS_TRANSACTION_INVALID_TYPE NT_STATUS(0xC0000000 | 0x0215)
-#define NT_STATUS_NOT_SERVER_SESSION NT_STATUS(0xC0000000 | 0x0216)
-#define NT_STATUS_NOT_CLIENT_SESSION NT_STATUS(0xC0000000 | 0x0217)
-#define NT_STATUS_CANNOT_LOAD_REGISTRY_FILE NT_STATUS(0xC0000000 | 0x0218)
-#define NT_STATUS_DEBUG_ATTACH_FAILED NT_STATUS(0xC0000000 | 0x0219)
-#define NT_STATUS_SYSTEM_PROCESS_TERMINATED NT_STATUS(0xC0000000 | 0x021a)
-#define NT_STATUS_DATA_NOT_ACCEPTED NT_STATUS(0xC0000000 | 0x021b)
-#define NT_STATUS_NO_BROWSER_SERVERS_FOUND NT_STATUS(0xC0000000 | 0x021c)
-#define NT_STATUS_VDM_HARD_ERROR NT_STATUS(0xC0000000 | 0x021d)
-#define NT_STATUS_DRIVER_CANCEL_TIMEOUT NT_STATUS(0xC0000000 | 0x021e)
-#define NT_STATUS_REPLY_MESSAGE_MISMATCH NT_STATUS(0xC0000000 | 0x021f)
-#define NT_STATUS_MAPPED_ALIGNMENT NT_STATUS(0xC0000000 | 0x0220)
-#define NT_STATUS_IMAGE_CHECKSUM_MISMATCH NT_STATUS(0xC0000000 | 0x0221)
-#define NT_STATUS_LOST_WRITEBEHIND_DATA NT_STATUS(0xC0000000 | 0x0222)
-#define NT_STATUS_CLIENT_SERVER_PARAMETERS_INVALID NT_STATUS(0xC0000000 | 0x0223)
-#define NT_STATUS_PASSWORD_MUST_CHANGE NT_STATUS(0xC0000000 | 0x0224)
-#define NT_STATUS_NOT_FOUND NT_STATUS(0xC0000000 | 0x0225)
-#define NT_STATUS_NOT_TINY_STREAM NT_STATUS(0xC0000000 | 0x0226)
-#define NT_STATUS_RECOVERY_FAILURE NT_STATUS(0xC0000000 | 0x0227)
-#define NT_STATUS_STACK_OVERFLOW_READ NT_STATUS(0xC0000000 | 0x0228)
-#define NT_STATUS_FAIL_CHECK NT_STATUS(0xC0000000 | 0x0229)
-#define NT_STATUS_DUPLICATE_OBJECTID NT_STATUS(0xC0000000 | 0x022a)
-#define NT_STATUS_OBJECTID_EXISTS NT_STATUS(0xC0000000 | 0x022b)
-#define NT_STATUS_CONVERT_TO_LARGE NT_STATUS(0xC0000000 | 0x022c)
-#define NT_STATUS_RETRY NT_STATUS(0xC0000000 | 0x022d)
-#define NT_STATUS_FOUND_OUT_OF_SCOPE NT_STATUS(0xC0000000 | 0x022e)
-#define NT_STATUS_ALLOCATE_BUCKET NT_STATUS(0xC0000000 | 0x022f)
-#define NT_STATUS_PROPSET_NOT_FOUND NT_STATUS(0xC0000000 | 0x0230)
-#define NT_STATUS_MARSHALL_OVERFLOW NT_STATUS(0xC0000000 | 0x0231)
-#define NT_STATUS_INVALID_VARIANT NT_STATUS(0xC0000000 | 0x0232)
-#define NT_STATUS_DOMAIN_CONTROLLER_NOT_FOUND NT_STATUS(0xC0000000 | 0x0233)
-#define NT_STATUS_ACCOUNT_LOCKED_OUT NT_STATUS(0xC0000000 | 0x0234)
-#define NT_STATUS_HANDLE_NOT_CLOSABLE NT_STATUS(0xC0000000 | 0x0235)
-#define NT_STATUS_CONNECTION_REFUSED NT_STATUS(0xC0000000 | 0x0236)
-#define NT_STATUS_GRACEFUL_DISCONNECT NT_STATUS(0xC0000000 | 0x0237)
-#define NT_STATUS_ADDRESS_ALREADY_ASSOCIATED NT_STATUS(0xC0000000 | 0x0238)
-#define NT_STATUS_ADDRESS_NOT_ASSOCIATED NT_STATUS(0xC0000000 | 0x0239)
-#define NT_STATUS_CONNECTION_INVALID NT_STATUS(0xC0000000 | 0x023a)
-#define NT_STATUS_CONNECTION_ACTIVE NT_STATUS(0xC0000000 | 0x023b)
-#define NT_STATUS_NETWORK_UNREACHABLE NT_STATUS(0xC0000000 | 0x023c)
-#define NT_STATUS_HOST_UNREACHABLE NT_STATUS(0xC0000000 | 0x023d)
-#define NT_STATUS_PROTOCOL_UNREACHABLE NT_STATUS(0xC0000000 | 0x023e)
-#define NT_STATUS_PORT_UNREACHABLE NT_STATUS(0xC0000000 | 0x023f)
-#define NT_STATUS_REQUEST_ABORTED NT_STATUS(0xC0000000 | 0x0240)
-#define NT_STATUS_CONNECTION_ABORTED NT_STATUS(0xC0000000 | 0x0241)
-#define NT_STATUS_BAD_COMPRESSION_BUFFER NT_STATUS(0xC0000000 | 0x0242)
-#define NT_STATUS_USER_MAPPED_FILE NT_STATUS(0xC0000000 | 0x0243)
-#define NT_STATUS_AUDIT_FAILED NT_STATUS(0xC0000000 | 0x0244)
-#define NT_STATUS_TIMER_RESOLUTION_NOT_SET NT_STATUS(0xC0000000 | 0x0245)
-#define NT_STATUS_CONNECTION_COUNT_LIMIT NT_STATUS(0xC0000000 | 0x0246)
-#define NT_STATUS_LOGIN_TIME_RESTRICTION NT_STATUS(0xC0000000 | 0x0247)
-#define NT_STATUS_LOGIN_WKSTA_RESTRICTION NT_STATUS(0xC0000000 | 0x0248)
-#define NT_STATUS_IMAGE_MP_UP_MISMATCH NT_STATUS(0xC0000000 | 0x0249)
-#define NT_STATUS_INSUFFICIENT_LOGON_INFO NT_STATUS(0xC0000000 | 0x0250)
-#define NT_STATUS_BAD_DLL_ENTRYPOINT NT_STATUS(0xC0000000 | 0x0251)
-#define NT_STATUS_BAD_SERVICE_ENTRYPOINT NT_STATUS(0xC0000000 | 0x0252)
-#define NT_STATUS_LPC_REPLY_LOST NT_STATUS(0xC0000000 | 0x0253)
-#define NT_STATUS_IP_ADDRESS_CONFLICT1 NT_STATUS(0xC0000000 | 0x0254)
-#define NT_STATUS_IP_ADDRESS_CONFLICT2 NT_STATUS(0xC0000000 | 0x0255)
-#define NT_STATUS_REGISTRY_QUOTA_LIMIT NT_STATUS(0xC0000000 | 0x0256)
-#define NT_STATUS_PATH_NOT_COVERED NT_STATUS(0xC0000000 | 0x0257)
-#define NT_STATUS_NO_CALLBACK_ACTIVE NT_STATUS(0xC0000000 | 0x0258)
-#define NT_STATUS_LICENSE_QUOTA_EXCEEDED NT_STATUS(0xC0000000 | 0x0259)
-#define NT_STATUS_PWD_TOO_SHORT NT_STATUS(0xC0000000 | 0x025a)
-#define NT_STATUS_PWD_TOO_RECENT NT_STATUS(0xC0000000 | 0x025b)
-#define NT_STATUS_PWD_HISTORY_CONFLICT NT_STATUS(0xC0000000 | 0x025c)
-#define NT_STATUS_PLUGPLAY_NO_DEVICE NT_STATUS(0xC0000000 | 0x025e)
-#define NT_STATUS_UNSUPPORTED_COMPRESSION NT_STATUS(0xC0000000 | 0x025f)
-#define NT_STATUS_INVALID_HW_PROFILE NT_STATUS(0xC0000000 | 0x0260)
-#define NT_STATUS_INVALID_PLUGPLAY_DEVICE_PATH NT_STATUS(0xC0000000 | 0x0261)
-#define NT_STATUS_DRIVER_ORDINAL_NOT_FOUND NT_STATUS(0xC0000000 | 0x0262)
-#define NT_STATUS_DRIVER_ENTRYPOINT_NOT_FOUND NT_STATUS(0xC0000000 | 0x0263)
-#define NT_STATUS_RESOURCE_NOT_OWNED NT_STATUS(0xC0000000 | 0x0264)
-#define NT_STATUS_TOO_MANY_LINKS NT_STATUS(0xC0000000 | 0x0265)
-#define NT_STATUS_QUOTA_LIST_INCONSISTENT NT_STATUS(0xC0000000 | 0x0266)
-#define NT_STATUS_FILE_IS_OFFLINE NT_STATUS(0xC0000000 | 0x0267)
-#define NT_STATUS_DS_NO_MORE_RIDS NT_STATUS(0xC0000000 | 0x02a8)
-#define NT_STATUS_NOT_A_REPARSE_POINT NT_STATUS(0xC0000000 | 0x0275)
-#define NT_STATUS_DOWNGRADE_DETECTED NT_STATUS(0xC0000000 | 0x0388)
-#define NT_STATUS_NO_SUCH_JOB NT_STATUS(0xC0000000 | 0xEDE) /* scheduler */
-#define NT_STATUS_RPC_PROTSEQ_NOT_SUPPORTED NT_STATUS(0xC0000000 | 0x20004)
-#define NT_STATUS_RPC_CANNOT_SUPPORT NT_STATUS(0xC0000000 | 0x20041)
-
-#endif /* _NTERR_H */
index 370a64185a322df62777eb2b7668a0b17563648f..966ddb9f635abf66bc6794e42cb61006301b2b26 100644 (file)
@@ -3213,7 +3213,7 @@ int name_len(char *s1);
 const char *nt_errstr(NTSTATUS nt_code);
 const char *get_friendly_nt_error_msg(NTSTATUS nt_code);
 const char *get_nt_error_c_code(NTSTATUS nt_code);
-NTSTATUS nt_status_string_to_code(char *nt_status_str);
+NTSTATUS nt_status_string_to_code(const char *nt_status_str);
 NTSTATUS nt_status_squash(NTSTATUS nt_status);
 
 /* The following definitions come from libsmb/ntlm_check.c  */
index 732bef1212963b86c5257441cf4713e1a0c32379..8b64877d860111714565f9d49648b3d7b4706eb3 100644 (file)
@@ -137,7 +137,7 @@ enum smb_read_errors {
 #define OPENX_FILE_CREATE_IF_NOT_EXIST 0x10
 #define OPENX_FILE_FAIL_IF_NOT_EXIST 0
 
-#include "doserr.h"
+#include "../libcli/util/doserr.h"
 
 typedef union unid_t {
        uid_t uid;
index 107d0b1bd549919eacafe1054e0b5434af5712b5..a5b45e6a1d8eebc648cb5217ddfb1f5ae85e4277 100644 (file)
@@ -23,7 +23,7 @@
 #include "tdb.h"
 
 #include "talloc.h" /* for tdb_wrap_open() */
-#include "nt_status.h" /* for map_nt_error_from_tdb() */
+#include "../libcli/util/ntstatus.h" /* for map_nt_error_from_tdb() */
 
 /* single node of a list returned by tdb_search_keys */
 typedef struct keys_node 
index 1a9b4e07f94bd0b818a4ceb8fba151e50138fb99..77a438048fd790c83f74f7496107c6a890ac8322 100644 (file)
@@ -172,7 +172,7 @@ WERROR smbconf_create_share(struct smbconf_ctx *ctx,
                            const char *servicename)
 {
        if ((servicename != NULL) && smbconf_share_exists(ctx, servicename)) {
-               return WERR_ALREADY_EXISTS;
+               return WERR_FILE_EXISTS;
        }
 
        return ctx->ops->create_share(ctx, servicename);
index 033f800e2a364e745ac66a7d3c55b83ea6f78feb..1aa345da3c668dcdb6da5d8b9d735172802faa26 100644 (file)
@@ -208,7 +208,7 @@ static WERROR smbconf_reg_create_service_key(TALLOC_CTX *mem_ctx,
                             REG_KEY_WRITE, newkey, &action);
        if (W_ERROR_IS_OK(werr) && (action != REG_CREATED_NEW_KEY)) {
                DEBUG(10, ("Key '%s' already exists.\n", subkeyname));
-               werr = WERR_ALREADY_EXISTS;
+               werr = WERR_FILE_EXISTS;
        }
        if (!W_ERROR_IS_OK(werr)) {
                DEBUG(5, ("Error creating key %s: %s\n",
index 2716e04d914537ffe4d40852549fc7cc47f25869..0cccae1e6afb4a35e7d3db0a667a69be9eb84fd5 100644 (file)
@@ -42,7 +42,7 @@ werror_code_struct dos_errs[] =
        { "WERR_INSUFFICIENT_BUFFER", WERR_INSUFFICIENT_BUFFER },
        { "WERR_SEM_TIMEOUT", WERR_SEM_TIMEOUT },
        { "WERR_NO_SUCH_SHARE", WERR_NO_SUCH_SHARE },
-       { "WERR_ALREADY_EXISTS", WERR_ALREADY_EXISTS },
+       { "WERR_FILE_EXISTS", WERR_FILE_EXISTS },
        { "WERR_INVALID_PARAM", WERR_INVALID_PARAM },
        { "WERR_NOT_SUPPORTED", WERR_NOT_SUPPORTED },
        { "WERR_BAD_PASSWORD", WERR_BAD_PASSWORD },
@@ -81,7 +81,7 @@ werror_code_struct dos_errs[] =
        { "WERR_DFS_NO_SUCH_SERVER", WERR_DFS_NO_SUCH_SERVER },
        { "WERR_DFS_INTERNAL_ERROR", WERR_DFS_INTERNAL_ERROR },
        { "WERR_DFS_CANT_CREATE_JUNCT", WERR_DFS_CANT_CREATE_JUNCT },
-       { "WERR_INVALID_COMPUTER_NAME", WERR_INVALID_COMPUTER_NAME },
+       { "WERR_INVALID_COMPUTERNAME", WERR_INVALID_COMPUTERNAME },
        { "WERR_INVALID_DOMAINNAME", WERR_INVALID_DOMAINNAME },
        { "WERR_MACHINE_LOCKED", WERR_MACHINE_LOCKED },
        { "WERR_DC_NOT_FOUND", WERR_DC_NOT_FOUND },
index fc6340342f8dd6fe8f11c48a1944da02f9117ea3..1ba230cefeda060334695cc030675343a38780dc 100644 (file)
@@ -653,7 +653,7 @@ const char *nt_errstr(NTSTATUS nt_code)
        char *result;
 
 #ifdef HAVE_LDAP
-        if (NT_STATUS_TYPE(nt_code) == NT_STATUS_TYPE_LDAP) {
+        if (NT_STATUS_IS_LDAP(nt_code)) {
                 return ldap_err2string(NT_STATUS_LDAP_CODE(nt_code));
        }
 #endif
@@ -718,7 +718,7 @@ const char *get_nt_error_c_code(NTSTATUS nt_code)
  Returns the NT_STATUS constant matching the string supplied (as an NTSTATUS)
  *****************************************************************************/
 
-NTSTATUS nt_status_string_to_code(char *nt_status_str)
+NTSTATUS nt_status_string_to_code(const char *nt_status_str)
 {
         int idx = 0;
 
index 1179a162b0711febac916c53a78703cc24d3dd86..bf29766e607eb4c1ae6c374801221f9838b32bf7 100644 (file)
@@ -22,7 +22,6 @@
 /* This is the interface to the rpcecho pipe. */
 
 #include "includes.h"
-#include "nterr.h"
 
 #ifdef DEVELOPER
 
index af9246c49f240cb2d6810ed6cf5595a63f1fc358..b0200de20a71bc9f74be365bb0ac7f2ee915fa28 100644 (file)
@@ -8490,7 +8490,7 @@ WERROR _spoolss_addform( pipes_struct *p, SPOOL_Q_ADDFORM *q_u, SPOOL_R_ADDFORM
        /* can't add if builtin */
 
        if (get_a_builtin_ntform(&form->name,&tmpForm)) {
-               status = WERR_ALREADY_EXISTS;
+               status = WERR_FILE_EXISTS;
                goto done;
        }
 
index b99c77c9b86d92603ca9c58904525b6432150231..9d9e9af59b0391eea5a5757de6b4cc90901f2e09 100644 (file)
@@ -1781,7 +1781,7 @@ WERROR _srvsvc_NetShareAdd(pipes_struct *p,
 
        /* Share already exists. */
        if (snum >= 0) {
-               return WERR_ALREADY_EXISTS;
+               return WERR_FILE_EXISTS;
        }
 
        /* We can only add disk shares. */
index 4b1aa54731ab56c991ba69626b2901401f95826c..b03fefe14a1362e15c85d08441bc63e84fd8bec5 100644 (file)
@@ -1000,7 +1000,7 @@ static WERROR check_ads_config( void )
                d_printf("Our netbios name can be at most 15 chars long, "
                         "\"%s\" is %u chars long\n", global_myname(),
                         (unsigned int)strlen(global_myname()));
-               return WERR_INVALID_COMPUTER_NAME;
+               return WERR_INVALID_COMPUTERNAME;
        }
 
        if ( lp_security() == SEC_ADS && !*lp_realm()) {
index 94feeafa691148b96aaca9fa3b5b6c4f335c5173..531bbfe43caed4a9fbe2bc401c9e8fb304614a80 100644 (file)
@@ -3126,7 +3126,7 @@ static NTSTATUS rpc_share_migrate_shares_internals(struct net_context *c,
                                                      &parm_error,
                                                      &result);
 
-                if (W_ERROR_V(result) == W_ERROR_V(WERR_ALREADY_EXISTS)) {
+                if (W_ERROR_V(result) == W_ERROR_V(WERR_FILE_EXISTS)) {
                        printf("           [%s] does already exist\n",
                                info502.name);
                        continue;
index 74a4b88cbc8a6ac98a71267b7b8ffcfa24a544ab..8c31077d8c1e4eef0bf36613996499a5e8c66c96 100644 (file)
@@ -5,7 +5,7 @@ mkinclude wbclient/config.mk
 
 [SUBSYSTEM::LIBSAMBA-ERRORS]
 
-LIBSAMBA-ERRORS_OBJ_FILES = $(addprefix ../libcli/util/, doserr.o errormap.o nterr.o)
+LIBSAMBA-ERRORS_OBJ_FILES = $(addprefix ../libcli/util/, doserr.o ) $(libclisrcdir)/util/errormap.o $(libclisrcdir)/util/nterr.o
 
 PUBLIC_HEADERS += $(addprefix ../libcli/util/, error.h ntstatus.h doserr.h werror.h)
 
index a336a7ad850757b1c3a696571d537a63467613fe..09cf5e4c6f118b961a98fea2155855eccbadd6c1 100644 (file)
@@ -18,8 +18,8 @@
    
 */
 
-#ifndef _SMB_LDAP_H
-#define _SMB_LDAP_H
+#ifndef _SMB_LDAP_H_
+#define _SMB_LDAP_H_
 
 #include "lib/ldb/include/ldb.h"
 #include "librpc/gen_ndr/misc.h"
@@ -258,4 +258,4 @@ struct ldap_message *new_ldap_message(TALLOC_CTX *mem_ctx);
 NTSTATUS ldap_decode(struct asn1_data *data, struct ldap_message *msg);
 bool ldap_encode(struct ldap_message *msg, DATA_BLOB *result, TALLOC_CTX *mem_ctx);
 
-#endif
+#endif 
similarity index 99%
rename from libcli/util/nterr.c
rename to source4/libcli/util/nterr.c
index 4e046c78ca322b0a8417151bb666822780897037..e95f0228c1d9fdae524e2149750abc3d4be07e3c 100644 (file)
@@ -20,8 +20,8 @@
 /* NT error codes.  please read nterr.h */
 
 #include "includes.h"
-#include "lib/events/events.h"
 #include "libcli/ldap/ldap.h"
+#undef strcasecmp
 
 typedef struct
 {