diff options
Diffstat (limited to 'source3/include')
-rw-r--r-- | source3/include/config.h.in | 12 | ||||
-rw-r--r-- | source3/include/doserr.h | 23 | ||||
-rwxr-xr-x | source3/include/rpc_spoolss.h | 4 | ||||
-rw-r--r-- | source3/include/smb.h | 20 |
4 files changed, 46 insertions, 13 deletions
diff --git a/source3/include/config.h.in b/source3/include/config.h.in index 060f41bedb..4a64bec61e 100644 --- a/source3/include/config.h.in +++ b/source3/include/config.h.in @@ -220,6 +220,8 @@ #undef HAVE_NATIVE_ICONV #undef HAVE_UNIXSOCKET #undef MMAP_BLACKLIST +#undef HAVE_IMMEDIATE_STRUCTURES +#undef HAVE_CUPS /* The number of bytes in a int. */ #undef SIZEOF_INT @@ -761,6 +763,12 @@ /* Define if you have the <ctype.h> header file. */ #undef HAVE_CTYPE_H +/* Define if you have the <cups/cups.h> header file. */ +#undef HAVE_CUPS_CUPS_H + +/* Define if you have the <cups/language.h> header file. */ +#undef HAVE_CUPS_LANGUAGE_H + /* Define if you have the <dirent.h> header file. */ #undef HAVE_DIRENT_H @@ -983,8 +991,8 @@ /* Define if you have the acl library (-lacl). */ #undef HAVE_LIBACL -/* Define if you have cups installed. */ -#undef HAVE_CUPS +/* Define if you have the cups library (-lcups). */ +#undef HAVE_LIBCUPS /* Define if you have the gen library (-lgen). */ #undef HAVE_LIBGEN diff --git a/source3/include/doserr.h b/source3/include/doserr.h index 9d39fe795e..ee6a27ee32 100644 --- a/source3/include/doserr.h +++ b/source3/include/doserr.h @@ -78,14 +78,6 @@ /* 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 ERRunknownprinterdriver 1797 /* ERROR_UNKNOWN_PRINTER_DRIVER */ -#define ERRinvalidprintername 1801 /* ERROR_INVALID_PRINTER_NAME */ -#define ERRinvaliddatatype 1804 /* ERROR_INVALID_DATATYPE */ -#define ERRinvalidenvironment 1805 /* ERROR_INVALID_ENVIRONMENT */ -#define ERRprinterdriverinuse 3001 /* ERROR_PRINTER_DRIVER_IN_USE */ - /* Error codes for the ERRSRV class */ #define ERRerror 1 /* Non specific error code */ @@ -140,4 +132,19 @@ #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_BADFID W_ERROR(6) +#define WERR_INSUFFICIENT_BUFFER W_ERROR(122) +#define WERR_NOMEM W_ERROR(8) +#define WERR_INVALID_NAME W_ERROR(123) +#define WERR_UNKNOWN_LEVEL W_ERROR(124) +#define WERR_UNKNOWN_PRINTER_DRIVER W_ERROR(1797) +#define WERR_INVALID_PRINTER_NAME W_ERROR(1801) +#define WERR_INVALID_DATATYPE W_ERROR(1804) +#define WERR_INVALID_ENVIRONMENT W_ERROR(1805) +#define WERR_PRINTER_DRIVER_IN_USE W_ERROR(3001) + #endif /* _DOSERR_H */ diff --git a/source3/include/rpc_spoolss.h b/source3/include/rpc_spoolss.h index c57fc1bc42..4dba97b8ce 100755 --- a/source3/include/rpc_spoolss.h +++ b/source3/include/rpc_spoolss.h @@ -789,7 +789,7 @@ typedef struct printer_info_0 uint32 unknown16; uint32 change_id; uint32 unknown18; - NTSTATUS status; + uint32 status; uint32 unknown20; uint32 c_setprinter; @@ -832,7 +832,7 @@ typedef struct printer_info_2 uint32 defaultpriority; uint32 starttime; uint32 untiltime; - NTSTATUS status; + uint32 status; uint32 cjobs; uint32 averageppm; } diff --git a/source3/include/smb.h b/source3/include/smb.h index ce6f0c794a..2974766f2a 100644 --- a/source3/include/smb.h +++ b/source3/include/smb.h @@ -207,7 +207,13 @@ typedef struct nttime_info uint32 high; } NTTIME; -#ifdef __GNUC__XX_NOT_YET + +/* the following rather strange looking definitions of NTSTATUS and WERROR + and 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) && defined(TRIDGE_TEST) typedef struct {uint32 v;} NTSTATUS; #define NT_STATUS(x) ((NTSTATUS) { x }) #define NT_STATUS_V(x) ((x).v) @@ -217,8 +223,20 @@ typedef uint32 NTSTATUS; #define NT_STATUS_V(x) (x) #endif +#if defined(HAVE_IMMEDIATE_STRUCTURES) && defined(TRIDGE_TEST) +typedef struct {uint32 v;} WERROR; +#define W_ERROR(x) ((WERROR) { x }) +#define W_ERROR_V(x) ((x).v) +#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 W_ERROR_IS_OK(x) (W_ERROR_V(x) == 0) + /* Allowable account control bits */ #define ACB_DISABLED 0x0001 /* 1 = User account disabled */ |