summaryrefslogtreecommitdiffstats
path: root/source4/libcli/util/nt_status.h
diff options
context:
space:
mode:
Diffstat (limited to 'source4/libcli/util/nt_status.h')
-rw-r--r--source4/libcli/util/nt_status.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/source4/libcli/util/nt_status.h b/source4/libcli/util/nt_status.h
index fe1dbf866d0..06aeaa3dac0 100644
--- a/source4/libcli/util/nt_status.h
+++ b/source4/libcli/util/nt_status.h
@@ -28,13 +28,25 @@
from using BOOL for internal functions
*/
+#if defined(HAVE_IMMEDIATE_STRUCTURES)
typedef struct {uint32_t v;} NTSTATUS;
#define NT_STATUS(x) ((NTSTATUS) { x })
#define NT_STATUS_V(x) ((x).v)
+#else
+typedef uint32_t NTSTATUS;
+#define NT_STATUS(x) (x)
+#define NT_STATUS_V(x) (x)
+#endif
+#if defined(HAVE_IMMEDIATE_STRUCTURES)
typedef struct {uint32_t v;} WERROR;
#define W_ERROR(x) ((WERROR) { x })
#define W_ERROR_V(x) ((x).v)
+#else
+typedef uint32_t 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)