librpc:ndr: Introduce ‘libndr_flags’ type
authorJoseph Sutton <josephsutton@catalyst.net.nz>
Mon, 10 Jul 2023 03:47:03 +0000 (15:47 +1200)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 1 Nov 2023 20:10:45 +0000 (20:10 +0000)
The LIBNDR_FLAG_ namespace is getting dangerously full, with only a
single flag value (1 << 9) remaining for use. After that flag is put
into use, we won’t be able to add any new flags without increasing the
flag width to 64‐bit.

Up to now we’ve used a haphazard mix of int, unsigned, and uint32_t to
store these flags. Introduce a new type, ‘libndr_flags’, to be used
consistently to hold LIBNDR flags. If in the future we find we need to
move to 64‐bit flags, this type gives us an opportunity to do that.

Bump the NDR version to 4.0.0 — an major version increment, for we’re
changing the function ABI and adding the new symbol
ndr_print_libndr_flags.

Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
39 files changed:
lib/fuzzing/fuzz_ndr_X.c
libcli/security/secace.h
librpc/ABI/ndr-4.0.0.sigs [new file with mode: 0644]
librpc/idl/ntprinting.idl
librpc/ndr/libndr.h
librpc/ndr/ndr.c
librpc/ndr/ndr_basic.c
librpc/ndr/ndr_bkupblobs.c
librpc/ndr/ndr_cab.c
librpc/ndr/ndr_dcerpc.c
librpc/ndr/ndr_dns.c
librpc/ndr/ndr_drsblobs.c
librpc/ndr/ndr_drsuapi.c
librpc/ndr/ndr_drsuapi.h
librpc/ndr/ndr_frsrpc.c
librpc/ndr/ndr_frsrpc.h
librpc/ndr/ndr_krb5pac.c
librpc/ndr/ndr_krb5pac.h
librpc/ndr/ndr_nbt.c
librpc/ndr/ndr_negoex.c
librpc/ndr/ndr_ntlmssp.c
librpc/ndr/ndr_ntlmssp.h
librpc/ndr/ndr_ntprinting.c
librpc/ndr/ndr_ntprinting.h
librpc/ndr/ndr_preg.c
librpc/ndr/ndr_sec_helper.c
librpc/ndr/ndr_spoolss_buf.c
librpc/ndr/ndr_spoolss_buf.h
librpc/ndr/ndr_string.c
librpc/ndr/ndr_witness.c
librpc/ndr/ndr_xattr.c
librpc/wscript_build
pidl/lib/Parse/Pidl/NDR.pm
pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm
pidl/lib/Parse/Pidl/Samba4/Python.pm
pidl/lib/Parse/Pidl/Typelist.pm
source4/torture/ndr/ndr.c
source4/torture/ndr/ndr.h
source4/torture/ndr/string.c

index a3d7199edc91d9adf51db90d6bb509b2b80bb033..322abea14a3ed1d4e5606dd4b928c66131d41254 100644 (file)
@@ -155,7 +155,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
        int pull_push_print_flags;
        uint16_t fuzz_packet_flags, function;
        TALLOC_CTX *mem_ctx = NULL;
-       uint32_t ndr_flags = 0;
+       libndr_flags ndr_flags = 0;
        struct ndr_push *ndr_push;
        enum ndr_err_code ndr_err;
        struct ndr_interface_call f_buffer;
index 8f1a5581d394da0393cd4a3cc65e81dfd22d6cc3..879c711e4854eb350f25fff3ed0cc7adef190b75 100644 (file)
 #define _ACE_H_
 
 #include "librpc/gen_ndr/security.h"
+#include "librpc/ndr/libndr.h"
 
 bool sec_ace_object(uint8_t type);
-size_t ndr_subcontext_size_of_ace_coda(const struct security_ace *ace, size_t ace_size, int flags);
+size_t ndr_subcontext_size_of_ace_coda(const struct security_ace *ace, size_t ace_size, libndr_flags flags);
 bool sec_ace_callback(uint8_t type);
 bool sec_ace_resource(uint8_t type);
 bool sec_ace_has_extra_blob(uint8_t type);
diff --git a/librpc/ABI/ndr-4.0.0.sigs b/librpc/ABI/ndr-4.0.0.sigs
new file mode 100644 (file)
index 0000000..0eefdc9
--- /dev/null
@@ -0,0 +1,274 @@
+GUID_all_zero: bool (const struct GUID *)
+GUID_buf_string: char *(const struct GUID *, struct GUID_txt_buf *)
+GUID_compare: int (const struct GUID *, const struct GUID *)
+GUID_equal: bool (const struct GUID *, const struct GUID *)
+GUID_from_data_blob: NTSTATUS (const DATA_BLOB *, struct GUID *)
+GUID_from_ndr_blob: NTSTATUS (const DATA_BLOB *, struct GUID *)
+GUID_from_string: NTSTATUS (const char *, struct GUID *)
+GUID_hexstring: char *(TALLOC_CTX *, const struct GUID *)
+GUID_random: struct GUID (void)
+GUID_string: char *(TALLOC_CTX *, const struct GUID *)
+GUID_string2: char *(TALLOC_CTX *, const struct GUID *)
+GUID_to_ndr_blob: NTSTATUS (const struct GUID *, TALLOC_CTX *, DATA_BLOB *)
+GUID_to_ndr_buf: NTSTATUS (const struct GUID *, struct GUID_ndr_buf *)
+GUID_zero: struct GUID (void)
+_ndr_pull_error: enum ndr_err_code (struct ndr_pull *, enum ndr_err_code, const char *, const char *, const char *, ...)
+_ndr_push_error: enum ndr_err_code (struct ndr_push *, enum ndr_err_code, const char *, const char *, const char *, ...)
+ndr_align_size: size_t (uint32_t, size_t)
+ndr_charset_length: uint32_t (const void *, charset_t)
+ndr_check_array_size: enum ndr_err_code (struct ndr_pull *, const void *, uint32_t)
+ndr_check_padding: void (struct ndr_pull *, size_t)
+ndr_check_pipe_chunk_trailer: enum ndr_err_code (struct ndr_pull *, int, uint32_t)
+ndr_check_steal_array_length: enum ndr_err_code (struct ndr_pull *, const void *, uint32_t)
+ndr_check_steal_array_size: enum ndr_err_code (struct ndr_pull *, const void *, uint32_t)
+ndr_check_string_terminator: enum ndr_err_code (struct ndr_pull *, uint32_t, uint32_t)
+ndr_get_array_length: enum ndr_err_code (struct ndr_pull *, const void *, uint32_t *)
+ndr_get_array_size: enum ndr_err_code (struct ndr_pull *, const void *, uint32_t *)
+ndr_map_error2errno: int (enum ndr_err_code)
+ndr_map_error2ntstatus: NTSTATUS (enum ndr_err_code)
+ndr_map_error2string: const char *(enum ndr_err_code)
+ndr_policy_handle_empty: bool (const struct policy_handle *)
+ndr_policy_handle_equal: bool (const struct policy_handle *, const struct policy_handle *)
+ndr_print_DATA_BLOB: void (struct ndr_print *, const char *, DATA_BLOB)
+ndr_print_GUID: void (struct ndr_print *, const char *, const struct GUID *)
+ndr_print_HRESULT: void (struct ndr_print *, const char *, HRESULT)
+ndr_print_KRB5_EDATA_NTSTATUS: void (struct ndr_print *, const char *, const struct KRB5_EDATA_NTSTATUS *)
+ndr_print_NTSTATUS: void (struct ndr_print *, const char *, NTSTATUS)
+ndr_print_NTTIME: void (struct ndr_print *, const char *, NTTIME)
+ndr_print_NTTIME_1sec: void (struct ndr_print *, const char *, NTTIME)
+ndr_print_NTTIME_hyper: void (struct ndr_print *, const char *, NTTIME)
+ndr_print_WERROR: void (struct ndr_print *, const char *, WERROR)
+ndr_print_array_uint8: void (struct ndr_print *, const char *, const uint8_t *, uint32_t)
+ndr_print_bad_level: void (struct ndr_print *, const char *, uint16_t)
+ndr_print_bitmap_flag: void (struct ndr_print *, size_t, const char *, uint32_t, uint32_t)
+ndr_print_bool: void (struct ndr_print *, const char *, const bool)
+ndr_print_debug: bool (int, ndr_print_fn_t, const char *, void *, const char *, const char *)
+ndr_print_debug_helper: void (struct ndr_print *, const char *, ...)
+ndr_print_debugc: void (int, ndr_print_fn_t, const char *, void *)
+ndr_print_debugc_helper: void (struct ndr_print *, const char *, ...)
+ndr_print_dlong: void (struct ndr_print *, const char *, int64_t)
+ndr_print_double: void (struct ndr_print *, const char *, double)
+ndr_print_enum: void (struct ndr_print *, const char *, const char *, const char *, uint32_t)
+ndr_print_function_debug: void (ndr_print_function_t, const char *, int, void *)
+ndr_print_function_string: char *(TALLOC_CTX *, ndr_print_function_t, const char *, int, void *)
+ndr_print_gid_t: void (struct ndr_print *, const char *, gid_t)
+ndr_print_hyper: void (struct ndr_print *, const char *, uint64_t)
+ndr_print_int16: void (struct ndr_print *, const char *, int16_t)
+ndr_print_int32: void (struct ndr_print *, const char *, int32_t)
+ndr_print_int3264: void (struct ndr_print *, const char *, int32_t)
+ndr_print_int64: void (struct ndr_print *, const char *, int64_t)
+ndr_print_int8: void (struct ndr_print *, const char *, int8_t)
+ndr_print_ipv4address: void (struct ndr_print *, const char *, const char *)
+ndr_print_ipv6address: void (struct ndr_print *, const char *, const char *)
+ndr_print_libndr_flags: void (struct ndr_print *, const char *, libndr_flags)
+ndr_print_ndr_syntax_id: void (struct ndr_print *, const char *, const struct ndr_syntax_id *)
+ndr_print_netr_SamDatabaseID: void (struct ndr_print *, const char *, enum netr_SamDatabaseID)
+ndr_print_netr_SchannelType: void (struct ndr_print *, const char *, enum netr_SchannelType)
+ndr_print_null: void (struct ndr_print *)
+ndr_print_pointer: void (struct ndr_print *, const char *, void *)
+ndr_print_policy_handle: void (struct ndr_print *, const char *, const struct policy_handle *)
+ndr_print_printf_helper: void (struct ndr_print *, const char *, ...)
+ndr_print_ptr: void (struct ndr_print *, const char *, const void *)
+ndr_print_set_switch_value: enum ndr_err_code (struct ndr_print *, const void *, uint32_t)
+ndr_print_sockaddr_storage: void (struct ndr_print *, const char *, const struct sockaddr_storage *)
+ndr_print_steal_switch_value: uint32_t (struct ndr_print *, const void *)
+ndr_print_string: void (struct ndr_print *, const char *, const char *)
+ndr_print_string_array: void (struct ndr_print *, const char *, const char **)
+ndr_print_string_helper: void (struct ndr_print *, const char *, ...)
+ndr_print_struct: void (struct ndr_print *, const char *, const char *)
+ndr_print_struct_string: char *(TALLOC_CTX *, ndr_print_fn_t, const char *, void *)
+ndr_print_svcctl_ServerType: void (struct ndr_print *, const char *, uint32_t)
+ndr_print_time_t: void (struct ndr_print *, const char *, time_t)
+ndr_print_timespec: void (struct ndr_print *, const char *, const struct timespec *)
+ndr_print_timeval: void (struct ndr_print *, const char *, const struct timeval *)
+ndr_print_udlong: void (struct ndr_print *, const char *, uint64_t)
+ndr_print_udlongr: void (struct ndr_print *, const char *, uint64_t)
+ndr_print_uid_t: void (struct ndr_print *, const char *, uid_t)
+ndr_print_uint16: void (struct ndr_print *, const char *, uint16_t)
+ndr_print_uint32: void (struct ndr_print *, const char *, uint32_t)
+ndr_print_uint3264: void (struct ndr_print *, const char *, uint32_t)
+ndr_print_uint8: void (struct ndr_print *, const char *, uint8_t)
+ndr_print_union: void (struct ndr_print *, const char *, int, const char *)
+ndr_print_union_debug: void (ndr_print_fn_t, const char *, uint32_t, void *)
+ndr_print_union_string: char *(TALLOC_CTX *, ndr_print_fn_t, const char *, uint32_t, void *)
+ndr_print_winreg_Data: void (struct ndr_print *, const char *, const union winreg_Data *)
+ndr_print_winreg_Data_GPO: void (struct ndr_print *, const char *, const union winreg_Data_GPO *)
+ndr_print_winreg_Type: void (struct ndr_print *, const char *, enum winreg_Type)
+ndr_pull_DATA_BLOB: enum ndr_err_code (struct ndr_pull *, int, DATA_BLOB *)
+ndr_pull_GUID: enum ndr_err_code (struct ndr_pull *, int, struct GUID *)
+ndr_pull_HRESULT: enum ndr_err_code (struct ndr_pull *, int, HRESULT *)
+ndr_pull_KRB5_EDATA_NTSTATUS: enum ndr_err_code (struct ndr_pull *, int, struct KRB5_EDATA_NTSTATUS *)
+ndr_pull_NTSTATUS: enum ndr_err_code (struct ndr_pull *, int, NTSTATUS *)
+ndr_pull_NTTIME: enum ndr_err_code (struct ndr_pull *, int, NTTIME *)
+ndr_pull_NTTIME_1sec: enum ndr_err_code (struct ndr_pull *, int, NTTIME *)
+ndr_pull_NTTIME_hyper: enum ndr_err_code (struct ndr_pull *, int, NTTIME *)
+ndr_pull_WERROR: enum ndr_err_code (struct ndr_pull *, int, WERROR *)
+ndr_pull_advance: enum ndr_err_code (struct ndr_pull *, uint32_t)
+ndr_pull_align: enum ndr_err_code (struct ndr_pull *, size_t)
+ndr_pull_append: enum ndr_err_code (struct ndr_pull *, DATA_BLOB *)
+ndr_pull_array_length: enum ndr_err_code (struct ndr_pull *, const void *)
+ndr_pull_array_size: enum ndr_err_code (struct ndr_pull *, const void *)
+ndr_pull_array_uint8: enum ndr_err_code (struct ndr_pull *, int, uint8_t *, uint32_t)
+ndr_pull_bytes: enum ndr_err_code (struct ndr_pull *, uint8_t *, uint32_t)
+ndr_pull_charset: enum ndr_err_code (struct ndr_pull *, int, const char **, uint32_t, uint8_t, charset_t)
+ndr_pull_charset_to_null: enum ndr_err_code (struct ndr_pull *, int, const char **, uint32_t, uint8_t, charset_t)
+ndr_pull_dlong: enum ndr_err_code (struct ndr_pull *, int, int64_t *)
+ndr_pull_double: enum ndr_err_code (struct ndr_pull *, int, double *)
+ndr_pull_enum_uint16: enum ndr_err_code (struct ndr_pull *, int, uint16_t *)
+ndr_pull_enum_uint1632: enum ndr_err_code (struct ndr_pull *, int, uint16_t *)
+ndr_pull_enum_uint32: enum ndr_err_code (struct ndr_pull *, int, uint32_t *)
+ndr_pull_enum_uint8: enum ndr_err_code (struct ndr_pull *, int, uint8_t *)
+ndr_pull_generic_ptr: enum ndr_err_code (struct ndr_pull *, uint32_t *)
+ndr_pull_get_relative_base_offset: uint32_t (struct ndr_pull *)
+ndr_pull_gid_t: enum ndr_err_code (struct ndr_pull *, int, gid_t *)
+ndr_pull_hyper: enum ndr_err_code (struct ndr_pull *, int, uint64_t *)
+ndr_pull_init_blob: struct ndr_pull *(const DATA_BLOB *, TALLOC_CTX *)
+ndr_pull_int16: enum ndr_err_code (struct ndr_pull *, int, int16_t *)
+ndr_pull_int32: enum ndr_err_code (struct ndr_pull *, int, int32_t *)
+ndr_pull_int64: enum ndr_err_code (struct ndr_pull *, int, int64_t *)
+ndr_pull_int8: enum ndr_err_code (struct ndr_pull *, int, int8_t *)
+ndr_pull_ipv4address: enum ndr_err_code (struct ndr_pull *, int, const char **)
+ndr_pull_ipv6address: enum ndr_err_code (struct ndr_pull *, int, const char **)
+ndr_pull_ndr_syntax_id: enum ndr_err_code (struct ndr_pull *, int, struct ndr_syntax_id *)
+ndr_pull_netr_SamDatabaseID: enum ndr_err_code (struct ndr_pull *, int, enum netr_SamDatabaseID *)
+ndr_pull_netr_SchannelType: enum ndr_err_code (struct ndr_pull *, int, enum netr_SchannelType *)
+ndr_pull_pointer: enum ndr_err_code (struct ndr_pull *, int, void **)
+ndr_pull_policy_handle: enum ndr_err_code (struct ndr_pull *, int, struct policy_handle *)
+ndr_pull_pop: enum ndr_err_code (struct ndr_pull *)
+ndr_pull_ref_ptr: enum ndr_err_code (struct ndr_pull *, uint32_t *)
+ndr_pull_relative_ptr1: enum ndr_err_code (struct ndr_pull *, const void *, uint32_t)
+ndr_pull_relative_ptr2: enum ndr_err_code (struct ndr_pull *, const void *)
+ndr_pull_relative_ptr_short: enum ndr_err_code (struct ndr_pull *, uint16_t *)
+ndr_pull_restore_relative_base_offset: void (struct ndr_pull *, uint32_t)
+ndr_pull_set_switch_value: enum ndr_err_code (struct ndr_pull *, const void *, uint32_t)
+ndr_pull_setup_relative_base_offset1: enum ndr_err_code (struct ndr_pull *, const void *, uint32_t)
+ndr_pull_setup_relative_base_offset2: enum ndr_err_code (struct ndr_pull *, const void *)
+ndr_pull_steal_switch_value: enum ndr_err_code (struct ndr_pull *, const void *, uint32_t *)
+ndr_pull_string: enum ndr_err_code (struct ndr_pull *, int, const char **)
+ndr_pull_string_array: enum ndr_err_code (struct ndr_pull *, int, const char ***)
+ndr_pull_struct_blob: enum ndr_err_code (const DATA_BLOB *, TALLOC_CTX *, void *, ndr_pull_flags_fn_t)
+ndr_pull_struct_blob_all: enum ndr_err_code (const DATA_BLOB *, TALLOC_CTX *, void *, ndr_pull_flags_fn_t)
+ndr_pull_struct_blob_all_noalloc: enum ndr_err_code (const DATA_BLOB *, void *, ndr_pull_flags_fn_t)
+ndr_pull_struct_blob_noalloc: enum ndr_err_code (const uint8_t *, size_t, void *, ndr_pull_flags_fn_t, size_t *)
+ndr_pull_subcontext_end: enum ndr_err_code (struct ndr_pull *, struct ndr_pull *, size_t, ssize_t)
+ndr_pull_subcontext_start: enum ndr_err_code (struct ndr_pull *, struct ndr_pull **, size_t, ssize_t)
+ndr_pull_svcctl_ServerType: enum ndr_err_code (struct ndr_pull *, int, uint32_t *)
+ndr_pull_time_t: enum ndr_err_code (struct ndr_pull *, int, time_t *)
+ndr_pull_timespec: enum ndr_err_code (struct ndr_pull *, int, struct timespec *)
+ndr_pull_timeval: enum ndr_err_code (struct ndr_pull *, int, struct timeval *)
+ndr_pull_trailer_align: enum ndr_err_code (struct ndr_pull *, size_t)
+ndr_pull_udlong: enum ndr_err_code (struct ndr_pull *, int, uint64_t *)
+ndr_pull_udlongr: enum ndr_err_code (struct ndr_pull *, int, uint64_t *)
+ndr_pull_uid_t: enum ndr_err_code (struct ndr_pull *, int, uid_t *)
+ndr_pull_uint16: enum ndr_err_code (struct ndr_pull *, int, uint16_t *)
+ndr_pull_uint1632: enum ndr_err_code (struct ndr_pull *, int, uint16_t *)
+ndr_pull_uint32: enum ndr_err_code (struct ndr_pull *, int, uint32_t *)
+ndr_pull_uint3264: enum ndr_err_code (struct ndr_pull *, int, uint32_t *)
+ndr_pull_uint8: enum ndr_err_code (struct ndr_pull *, int, uint8_t *)
+ndr_pull_union_align: enum ndr_err_code (struct ndr_pull *, size_t)
+ndr_pull_union_blob: enum ndr_err_code (const DATA_BLOB *, TALLOC_CTX *, void *, uint32_t, ndr_pull_flags_fn_t)
+ndr_pull_union_blob_all: enum ndr_err_code (const DATA_BLOB *, TALLOC_CTX *, void *, uint32_t, ndr_pull_flags_fn_t)
+ndr_pull_winreg_Data: enum ndr_err_code (struct ndr_pull *, int, union winreg_Data *)
+ndr_pull_winreg_Data_GPO: enum ndr_err_code (struct ndr_pull *, int, union winreg_Data_GPO *)
+ndr_pull_winreg_Type: enum ndr_err_code (struct ndr_pull *, int, enum winreg_Type *)
+ndr_push_DATA_BLOB: enum ndr_err_code (struct ndr_push *, int, DATA_BLOB)
+ndr_push_GUID: enum ndr_err_code (struct ndr_push *, int, const struct GUID *)
+ndr_push_HRESULT: enum ndr_err_code (struct ndr_push *, int, HRESULT)
+ndr_push_KRB5_EDATA_NTSTATUS: enum ndr_err_code (struct ndr_push *, int, const struct KRB5_EDATA_NTSTATUS *)
+ndr_push_NTSTATUS: enum ndr_err_code (struct ndr_push *, int, NTSTATUS)
+ndr_push_NTTIME: enum ndr_err_code (struct ndr_push *, int, NTTIME)
+ndr_push_NTTIME_1sec: enum ndr_err_code (struct ndr_push *, int, NTTIME)
+ndr_push_NTTIME_hyper: enum ndr_err_code (struct ndr_push *, int, NTTIME)
+ndr_push_WERROR: enum ndr_err_code (struct ndr_push *, int, WERROR)
+ndr_push_align: enum ndr_err_code (struct ndr_push *, size_t)
+ndr_push_array_uint8: enum ndr_err_code (struct ndr_push *, int, const uint8_t *, uint32_t)
+ndr_push_blob: DATA_BLOB (struct ndr_push *)
+ndr_push_bytes: enum ndr_err_code (struct ndr_push *, const uint8_t *, uint32_t)
+ndr_push_charset: enum ndr_err_code (struct ndr_push *, int, const char *, uint32_t, uint8_t, charset_t)
+ndr_push_charset_to_null: enum ndr_err_code (struct ndr_push *, int, const char *, uint32_t, uint8_t, charset_t)
+ndr_push_dlong: enum ndr_err_code (struct ndr_push *, int, int64_t)
+ndr_push_double: enum ndr_err_code (struct ndr_push *, int, double)
+ndr_push_enum_uint16: enum ndr_err_code (struct ndr_push *, int, uint16_t)
+ndr_push_enum_uint1632: enum ndr_err_code (struct ndr_push *, int, uint16_t)
+ndr_push_enum_uint32: enum ndr_err_code (struct ndr_push *, int, uint32_t)
+ndr_push_enum_uint8: enum ndr_err_code (struct ndr_push *, int, uint8_t)
+ndr_push_expand: enum ndr_err_code (struct ndr_push *, uint32_t)
+ndr_push_full_ptr: enum ndr_err_code (struct ndr_push *, const void *)
+ndr_push_get_relative_base_offset: uint32_t (struct ndr_push *)
+ndr_push_gid_t: enum ndr_err_code (struct ndr_push *, int, gid_t)
+ndr_push_hyper: enum ndr_err_code (struct ndr_push *, int, uint64_t)
+ndr_push_init_ctx: struct ndr_push *(TALLOC_CTX *)
+ndr_push_int16: enum ndr_err_code (struct ndr_push *, int, int16_t)
+ndr_push_int32: enum ndr_err_code (struct ndr_push *, int, int32_t)
+ndr_push_int64: enum ndr_err_code (struct ndr_push *, int, int64_t)
+ndr_push_int8: enum ndr_err_code (struct ndr_push *, int, int8_t)
+ndr_push_ipv4address: enum ndr_err_code (struct ndr_push *, int, const char *)
+ndr_push_ipv6address: enum ndr_err_code (struct ndr_push *, int, const char *)
+ndr_push_ndr_syntax_id: enum ndr_err_code (struct ndr_push *, int, const struct ndr_syntax_id *)
+ndr_push_netr_SamDatabaseID: enum ndr_err_code (struct ndr_push *, int, enum netr_SamDatabaseID)
+ndr_push_netr_SchannelType: enum ndr_err_code (struct ndr_push *, int, enum netr_SchannelType)
+ndr_push_pipe_chunk_trailer: enum ndr_err_code (struct ndr_push *, int, uint32_t)
+ndr_push_pointer: enum ndr_err_code (struct ndr_push *, int, void *)
+ndr_push_policy_handle: enum ndr_err_code (struct ndr_push *, int, const struct policy_handle *)
+ndr_push_ref_ptr: enum ndr_err_code (struct ndr_push *)
+ndr_push_relative_ptr1: enum ndr_err_code (struct ndr_push *, const void *)
+ndr_push_relative_ptr2_end: enum ndr_err_code (struct ndr_push *, const void *)
+ndr_push_relative_ptr2_start: enum ndr_err_code (struct ndr_push *, const void *)
+ndr_push_restore_relative_base_offset: void (struct ndr_push *, uint32_t)
+ndr_push_set_switch_value: enum ndr_err_code (struct ndr_push *, const void *, uint32_t)
+ndr_push_setup_relative_base_offset1: enum ndr_err_code (struct ndr_push *, const void *, uint32_t)
+ndr_push_setup_relative_base_offset2: enum ndr_err_code (struct ndr_push *, const void *)
+ndr_push_short_relative_ptr1: enum ndr_err_code (struct ndr_push *, const void *)
+ndr_push_short_relative_ptr2: enum ndr_err_code (struct ndr_push *, const void *)
+ndr_push_steal_switch_value: enum ndr_err_code (struct ndr_push *, const void *, uint32_t *)
+ndr_push_string: enum ndr_err_code (struct ndr_push *, int, const char *)
+ndr_push_string_array: enum ndr_err_code (struct ndr_push *, int, const char **)
+ndr_push_struct_blob: enum ndr_err_code (DATA_BLOB *, TALLOC_CTX *, const void *, ndr_push_flags_fn_t)
+ndr_push_struct_into_fixed_blob: enum ndr_err_code (DATA_BLOB *, const void *, ndr_push_flags_fn_t)
+ndr_push_subcontext_end: enum ndr_err_code (struct ndr_push *, struct ndr_push *, size_t, ssize_t)
+ndr_push_subcontext_start: enum ndr_err_code (struct ndr_push *, struct ndr_push **, size_t, ssize_t)
+ndr_push_svcctl_ServerType: enum ndr_err_code (struct ndr_push *, int, uint32_t)
+ndr_push_time_t: enum ndr_err_code (struct ndr_push *, int, time_t)
+ndr_push_timespec: enum ndr_err_code (struct ndr_push *, int, const struct timespec *)
+ndr_push_timeval: enum ndr_err_code (struct ndr_push *, int, const struct timeval *)
+ndr_push_trailer_align: enum ndr_err_code (struct ndr_push *, size_t)
+ndr_push_udlong: enum ndr_err_code (struct ndr_push *, int, uint64_t)
+ndr_push_udlongr: enum ndr_err_code (struct ndr_push *, int, uint64_t)
+ndr_push_uid_t: enum ndr_err_code (struct ndr_push *, int, uid_t)
+ndr_push_uint16: enum ndr_err_code (struct ndr_push *, int, uint16_t)
+ndr_push_uint1632: enum ndr_err_code (struct ndr_push *, int, uint16_t)
+ndr_push_uint32: enum ndr_err_code (struct ndr_push *, int, uint32_t)
+ndr_push_uint3264: enum ndr_err_code (struct ndr_push *, int, uint32_t)
+ndr_push_uint8: enum ndr_err_code (struct ndr_push *, int, uint8_t)
+ndr_push_union_align: enum ndr_err_code (struct ndr_push *, size_t)
+ndr_push_union_blob: enum ndr_err_code (DATA_BLOB *, TALLOC_CTX *, void *, uint32_t, ndr_push_flags_fn_t)
+ndr_push_unique_ptr: enum ndr_err_code (struct ndr_push *, const void *)
+ndr_push_winreg_Data: enum ndr_err_code (struct ndr_push *, int, const union winreg_Data *)
+ndr_push_winreg_Data_GPO: enum ndr_err_code (struct ndr_push *, int, const union winreg_Data_GPO *)
+ndr_push_winreg_Type: enum ndr_err_code (struct ndr_push *, int, enum winreg_Type)
+ndr_push_zero: enum ndr_err_code (struct ndr_push *, uint32_t)
+ndr_set_flags: void (libndr_flags *, libndr_flags)
+ndr_size_DATA_BLOB: uint32_t (int, const DATA_BLOB *, int)
+ndr_size_GUID: size_t (const struct GUID *, libndr_flags)
+ndr_size_string: uint32_t (int, const char * const *, int)
+ndr_size_string_array: size_t (const char **, uint32_t, libndr_flags)
+ndr_size_struct: size_t (const void *, libndr_flags, ndr_push_flags_fn_t)
+ndr_size_union: size_t (const void *, libndr_flags, uint32_t, ndr_push_flags_fn_t)
+ndr_size_winreg_Data_GPO: size_t (const union winreg_Data_GPO *, uint32_t, libndr_flags)
+ndr_steal_array_length: enum ndr_err_code (struct ndr_pull *, const void *, uint32_t *)
+ndr_steal_array_size: enum ndr_err_code (struct ndr_pull *, const void *, uint32_t *)
+ndr_string_array_size: size_t (struct ndr_push *, const char *)
+ndr_string_length: uint32_t (const void *, uint32_t)
+ndr_syntax_id_buf_string: char *(const struct ndr_syntax_id *, struct ndr_syntax_id_buf *)
+ndr_syntax_id_equal: bool (const struct ndr_syntax_id *, const struct ndr_syntax_id *)
+ndr_syntax_id_from_string: bool (const char *, struct ndr_syntax_id *)
+ndr_syntax_id_null: uuid = {time_low = 0, time_mid = 0, time_hi_and_version = 0, clock_seq = "\000", node = "\000\000\000\000\000"}, if_version = 0
+ndr_syntax_id_to_string: char *(TALLOC_CTX *, const struct ndr_syntax_id *)
+ndr_token_max_list_size: size_t (void)
+ndr_token_peek: enum ndr_err_code (struct ndr_token_list *, const void *, uint32_t *)
+ndr_token_retrieve: enum ndr_err_code (struct ndr_token_list *, const void *, uint32_t *)
+ndr_token_retrieve_cmp_fn: enum ndr_err_code (struct ndr_token_list *, const void *, uint32_t *, comparison_fn_t, bool)
+ndr_token_store: enum ndr_err_code (TALLOC_CTX *, struct ndr_token_list *, const void *, uint32_t)
+ndr_transfer_syntax_ndr: uuid = {time_low = 2324192516, time_mid = 7403, time_hi_and_version = 4553, clock_seq = "\237\350", node = "\b\000+\020H`"}, if_version = 2
+ndr_transfer_syntax_ndr64: uuid = {time_low = 1903232307, time_mid = 48826, time_hi_and_version = 18743, clock_seq = "\203\031", node = "\265\333\357\234\314\066"}, if_version = 1
+ndr_zero_memory: void (void *, size_t)
index cfb1922d0a2c4a7ba3a0e35fcfe7a76da346ecdb..0f82a16c55f27ff7d9dbc1c12e092fe91ccadceb 100644 (file)
@@ -32,7 +32,7 @@ interface ntprinting
         * "dffffffff" followed by a remaining buffer of "f" array */
 
        typedef [flag(NDR_NOALIGN),public] struct {
-               [skip_noinit] uint32 string_flags;
+               [skip_noinit] libndr_flags string_flags;
 
                uint32 version;
                [flag(ndr_ntprinting_string_flags(r->string_flags))] string name;
@@ -53,7 +53,7 @@ interface ntprinting
         * "B" private data blob */
 
        typedef [flag(NDR_NOALIGN),public] struct {
-               [skip_noinit] uint32 string_flags;
+               [skip_noinit] libndr_flags string_flags;
 
                /* uint32 devicemode_ptr; */
                [flag(ndr_ntprinting_string_flags(r->string_flags))] string devicename;
@@ -100,7 +100,7 @@ interface ntprinting
         * "fdB" */
 
        typedef [flag(NDR_NOALIGN),public] struct {
-               [skip_noinit] uint32 string_flags;
+               [skip_noinit] libndr_flags string_flags;
 
                uint32 ptr;
                [flag(ndr_ntprinting_string_flags(r->string_flags))] string name;
@@ -115,7 +115,7 @@ interface ntprinting
         */
 
        typedef [flag(NDR_NOALIGN),public] struct {
-               [skip_noinit] uint32 string_flags;
+               [skip_noinit] libndr_flags string_flags;
 
                uint32 attributes;
                uint32 priority;
index 4d6a078add0af533b5e9f0ea374692c0f84b9638..406ccd010912649c5f84a6c938f4d80ae71ab67d 100644 (file)
@@ -48,6 +48,14 @@ struct ndr_token_list {
 
 struct ndr_compression_state;
 
+/*
+ * If you’re considering changing the size of this type, see also
+ * $scalar_alignment in pidl/lib/Parse/Pidl/NDR.pm.
+ */
+typedef uint32_t libndr_flags;
+#define PRI_LIBNDR_FLAGS PRIx32
+#define PRI_LIBNDR_FLAGS_DECIMAL PRIu32
+
 /* this is the base structure passed to routines that
    parse MSRPC formatted data
 
@@ -57,7 +65,7 @@ struct ndr_compression_state;
    particular transport
 */
 struct ndr_pull {
-       uint32_t flags; /* LIBNDR_FLAG_* */
+       libndr_flags flags; /* LIBNDR_FLAG_* */
        uint8_t *data;
        uint32_t data_size;
        uint32_t offset;
@@ -91,7 +99,7 @@ struct ndr_pull {
 
 /* structure passed to functions that generate NDR formatted data */
 struct ndr_push {
-       uint32_t flags; /* LIBNDR_FLAG_* */
+       libndr_flags flags; /* LIBNDR_FLAG_* */
        uint8_t *data;
        uint32_t alloc_size;
        uint32_t offset;
@@ -116,7 +124,7 @@ struct ndr_push {
 
 /* structure passed to functions that print IDL structures */
 struct ndr_print {
-       uint32_t flags; /* LIBNDR_FLAG_* */
+       libndr_flags flags; /* LIBNDR_FLAG_* */
        uint32_t depth;
        struct ndr_token_list switch_list;
        void (*print)(struct ndr_print *, const char *, ...) PRINTF_ATTRIBUTE(2,3);
@@ -582,11 +590,11 @@ void ndr_print_dom_sid2(struct ndr_print *ndr, const char *name, const struct do
 enum ndr_err_code ndr_push_dom_sid28(struct ndr_push *ndr, int ndr_flags, const struct dom_sid *sid);
 enum ndr_err_code ndr_pull_dom_sid28(struct ndr_pull *ndr, int ndr_flags, struct dom_sid *sid);
 void ndr_print_dom_sid28(struct ndr_print *ndr, const char *name, const struct dom_sid *sid);
-size_t ndr_size_dom_sid28(const struct dom_sid *sid, int flags);
+size_t ndr_size_dom_sid28(const struct dom_sid *sid, libndr_flags flags);
 enum ndr_err_code ndr_push_dom_sid0(struct ndr_push *ndr, int ndr_flags, const struct dom_sid *sid);
 enum ndr_err_code ndr_pull_dom_sid0(struct ndr_pull *ndr, int ndr_flags, struct dom_sid *sid);
 void ndr_print_dom_sid0(struct ndr_print *ndr, const char *name, const struct dom_sid *sid);
-size_t ndr_size_dom_sid0(const struct dom_sid *sid, int flags);
+size_t ndr_size_dom_sid0(const struct dom_sid *sid, libndr_flags flags);
 void ndr_print_GUID(struct ndr_print *ndr, const char *name, const struct GUID *guid);
 void ndr_print_sockaddr_storage(struct ndr_print *ndr, const char *name, const struct sockaddr_storage *ss);
 void ndr_zero_memory(void *ptr, size_t len);
@@ -603,8 +611,8 @@ enum ndr_err_code ndr_push_struct_into_fixed_blob(DATA_BLOB *blob,
                                                  const void *p,
                                                  ndr_push_flags_fn_t fn);
 enum ndr_err_code ndr_push_union_blob(DATA_BLOB *blob, TALLOC_CTX *mem_ctx, void *p, uint32_t level, ndr_push_flags_fn_t fn);
-size_t ndr_size_struct(const void *p, int flags, ndr_push_flags_fn_t push);
-size_t ndr_size_union(const void *p, int flags, uint32_t level, ndr_push_flags_fn_t push);
+size_t ndr_size_struct(const void *p, libndr_flags flags, ndr_push_flags_fn_t push);
+size_t ndr_size_union(const void *p, libndr_flags flags, uint32_t level, ndr_push_flags_fn_t push);
 uint32_t ndr_push_get_relative_base_offset(struct ndr_push *ndr);
 void ndr_push_restore_relative_base_offset(struct ndr_push *ndr, uint32_t offset);
 enum ndr_err_code ndr_push_setup_relative_base_offset1(struct ndr_push *ndr, const void *p, uint32_t offset);
@@ -642,7 +650,7 @@ char *ndr_print_union_string(TALLOC_CTX *mem_ctx, ndr_print_fn_t fn, const char
 char *ndr_print_function_string(TALLOC_CTX *mem_ctx,
                                ndr_print_function_t fn, const char *name,
                                int flags, void *ptr);
-void ndr_set_flags(uint32_t *pflags, uint32_t new_flags);
+void ndr_set_flags(libndr_flags *pflags, libndr_flags new_flags);
 enum ndr_err_code _ndr_pull_error(struct ndr_pull *ndr,
                                  enum ndr_err_code ndr_err,
                                  const char *function,
@@ -815,7 +823,7 @@ uint32_t ndr_size_string(int ret, const char * const* string, int flags);
 enum ndr_err_code ndr_pull_string_array(struct ndr_pull *ndr, int ndr_flags, const char ***_a);
 enum ndr_err_code ndr_push_string_array(struct ndr_push *ndr, int ndr_flags, const char **a);
 void ndr_print_string_array(struct ndr_print *ndr, const char *name, const char **a);
-size_t ndr_size_string_array(const char **a, uint32_t count, int flags);
+size_t ndr_size_string_array(const char **a, uint32_t count, libndr_flags flags);
 uint32_t ndr_string_length(const void *_var, uint32_t element_size);
 enum ndr_err_code ndr_check_string_terminator(struct ndr_pull *ndr, uint32_t count, uint32_t element_size);
 enum ndr_err_code ndr_pull_charset(struct ndr_pull *ndr, int ndr_flags, const char **var, uint32_t length, uint8_t byte_mul, charset_t chset);
@@ -874,6 +882,8 @@ _PUBLIC_ enum ndr_err_code ndr_pull_timeval(struct ndr_pull *ndr,
 _PUBLIC_ void ndr_print_timeval(struct ndr_print *ndr, const char *name,
                                const struct timeval *t);
 
+_PUBLIC_ void ndr_print_libndr_flags(struct ndr_print *ndr, const char *name,
+                                      libndr_flags flags);
 
 
 #endif /* __LIBNDR_H__ */
index 52f837cbe8bbfbe0fdade76dfad8a8e5b76ff2f2..c7c8e0e359d09244bbf055543466c13dd601dac5 100644 (file)
@@ -583,7 +583,7 @@ failed:
        return ret;
 }
 
-_PUBLIC_ void ndr_set_flags(uint32_t *pflags, uint32_t new_flags)
+_PUBLIC_ void ndr_set_flags(libndr_flags *pflags, libndr_flags new_flags)
 {
        /* the big/little endian flags are inter-dependent */
        if (new_flags & LIBNDR_FLAG_LITTLE_ENDIAN) {
@@ -1528,7 +1528,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_union_blob(DATA_BLOB *blob, TALLOC_CTX *mem_
 /*
   generic ndr_size_*() handler for structures
 */
-_PUBLIC_ size_t ndr_size_struct(const void *p, int flags, ndr_push_flags_fn_t push)
+_PUBLIC_ size_t ndr_size_struct(const void *p, libndr_flags flags, ndr_push_flags_fn_t push)
 {
        struct ndr_push *ndr;
        enum ndr_err_code status;
@@ -1558,7 +1558,7 @@ _PUBLIC_ size_t ndr_size_struct(const void *p, int flags, ndr_push_flags_fn_t pu
 /*
   generic ndr_size_*() handler for unions
 */
-_PUBLIC_ size_t ndr_size_union(const void *p, int flags, uint32_t level, ndr_push_flags_fn_t push)
+_PUBLIC_ size_t ndr_size_union(const void *p, libndr_flags flags, uint32_t level, ndr_push_flags_fn_t push)
 {
        struct ndr_push *ndr;
        enum ndr_err_code status;
index 350020d7788c0f7c332875450c18481d30660414..a88d7710f19aa5b04b6152de33e1c787a11b7efe 100644 (file)
@@ -1582,3 +1582,9 @@ _PUBLIC_ void ndr_print_timeval(struct ndr_print *ndr, const char *name,
        ndr->print(ndr, "%-25s: %s.%ld", name, timestring(ndr, t->tv_sec),
                   (long)t->tv_usec);
 }
+
+_PUBLIC_ void ndr_print_libndr_flags(struct ndr_print *ndr, const char *name,
+                                      libndr_flags flags)
+{
+       ndr->print(ndr, "%-25s: 0x%016"PRI_LIBNDR_FLAGS" (%"PRI_LIBNDR_FLAGS_DECIMAL")", name, flags, flags);
+}
index 93356644b2a6ebbe8f4d7065d2d089133ef85b75..d374c3035b9191aea07f4684b9a31b784ab6a23c 100644 (file)
@@ -27,7 +27,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_bkup_NTBackupFile(struct ndr_push *ndr, int
 {
        uint32_t cntr_streams_0;
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
                if (ndr_flags & NDR_SCALARS) {
                        NDR_CHECK(ndr_push_align(ndr, 2));
@@ -57,7 +57,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_bkup_NTBackupFile(struct ndr_pull *ndr, int
 {
        uint32_t cntr_streams_0;
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
                if (ndr_flags & NDR_SCALARS) {
                        uint32_t remaining = ndr->data_size - ndr->offset;
index 950c6dcf671f18dedf1b570a62051c09230c77d9..a0c85bf90abd8d0bbcde8ea5f4058f25f24bcb68 100644 (file)
@@ -254,7 +254,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_cab_file(struct ndr_push *ndr, int ndr_flags
        uint32_t cntr_cffiles_0;
        size_t processed_cfdata = 0;
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX|LIBNDR_FLAG_LITTLE_ENDIAN|LIBNDR_FLAG_NOALIGN);
                NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
 
@@ -393,7 +393,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_cab_file(struct ndr_pull *ndr, int ndr_flags
        size_t processed_cfdata = 0;
        TALLOC_CTX *_mem_save_cfdata_0 = NULL;
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX|LIBNDR_FLAG_LITTLE_ENDIAN|LIBNDR_FLAG_NOALIGN);
                NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
                if (ndr_flags & NDR_SCALARS) {
index ccb3af595464fcc5fa3314e90a419de27ffe172b..0b2563aba144b4021e10c8bacb401c5c90703572 100644 (file)
@@ -143,7 +143,7 @@ enum ndr_err_code ndr_pull_dcerpc_bind_nak(struct ndr_pull *ndr, int ndr_flags,
                }
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_versions_0, 0);
                {
-                       uint32_t _flags_save_DATA_BLOB = ndr->flags;
+                       libndr_flags _flags_save_DATA_BLOB = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
                        NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->_pad));
                        ndr->flags = _flags_save_DATA_BLOB;
index e85cc15d4d03b503b308e052b91ad5ef876aa7e1..18c2c075acc552740d9c92f8e6d907d79e7aea84 100644 (file)
@@ -194,13 +194,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_dns_res_rec(struct ndr_push *ndr,
                                                int ndr_flags,
                                                const struct dns_res_rec *r)
 {
-       uint32_t _flags_save_STRUCT = ndr->flags;
+       libndr_flags _flags_save_STRUCT = ndr->flags;
        uint32_t _saved_offset1, _saved_offset2;
        uint16_t length;
        ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX |
                                   LIBNDR_FLAG_NOALIGN);
        if (ndr_flags & NDR_SCALARS) {
-               uint32_t _flags_save_name = ndr->flags;
+               libndr_flags _flags_save_name = ndr->flags;
 
                NDR_CHECK(ndr_push_align(ndr, 4));
 
@@ -269,7 +269,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_dns_res_rec(struct ndr_pull *ndr,
                                                int ndr_flags,
                                                struct dns_res_rec *r)
 {
-       uint32_t _flags_save_STRUCT = ndr->flags;
+       libndr_flags _flags_save_STRUCT = ndr->flags;
        uint32_t _saved_offset1;
        uint32_t pad, length;
 
index 99dd32e0416e17418bf6d93d084a7a5e74deb5e7..943275bea378d86534b8ab2298d14c083b089300 100644 (file)
@@ -72,7 +72,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_trustAuthInOutBlob(struct ndr_push *ndr, int
                        NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_current, 0, ((r->count > 0)?12 + ndr_size_AuthenticationInformationArray(&r->current, 0):0) - ((r->count > 0)?12:0)));
                }
                {
-                       uint32_t _flags_save_AuthenticationInformationArray = ndr->flags;
+                       libndr_flags _flags_save_AuthenticationInformationArray = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
                        {
                                struct ndr_push *_ndr_previous;
@@ -129,7 +129,7 @@ _PUBLIC_ void ndr_print_drsuapi_MSPrefixMap_Entry(struct ndr_print *ndr, const c
 {
        ndr_print_struct(ndr, name, "drsuapi_MSPrefixMap_Entry");
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
                ndr->depth++;
                ndr_print_uint16(ndr, "entryID", r->entryID);
index 39c1cd245b48856aec83b280ed51ca916845969b..4b4dec127a6f50ea46b59a973150b38bde0ac9d9 100644 (file)
@@ -385,7 +385,7 @@ enum ndr_err_code ndr_push_drsuapi_DsGetNCChangesWIN2K3_LZ77_DIRECT2Ctr6(struct
        return NDR_ERR_SUCCESS;
 }
 
-_PUBLIC_ size_t ndr_size_drsuapi_DsReplicaObjectIdentifier3Binary_without_Binary(const struct drsuapi_DsReplicaObjectIdentifier3Binary *r, int flags)
+_PUBLIC_ size_t ndr_size_drsuapi_DsReplicaObjectIdentifier3Binary_without_Binary(const struct drsuapi_DsReplicaObjectIdentifier3Binary *r, libndr_flags flags)
 {
        return ndr_size_struct((const struct drsuapi_DsReplicaObjectIdentifier3 *)r, flags, (ndr_push_flags_fn_t)ndr_push_drsuapi_DsReplicaObjectIdentifier3);
 }
@@ -427,7 +427,7 @@ _PUBLIC_ void ndr_print_drsuapi_DsAddEntry_AttrErrListItem_V1(struct ndr_print *
 
 enum ndr_err_code ndr_push_drsuapi_DsBindInfo(struct ndr_push *ndr, int ndr_flags, const union drsuapi_DsBindInfo *r)
 {
-       uint32_t _flags_save = ndr->flags;
+       libndr_flags _flags_save = ndr->flags;
        ndr->flags = ndr->flags & ~LIBNDR_FLAG_NDR64;
        NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
        if (ndr_flags & NDR_SCALARS) {
@@ -488,7 +488,7 @@ enum ndr_err_code ndr_push_drsuapi_DsBindInfo(struct ndr_push *ndr, int ndr_flag
 
 enum ndr_err_code ndr_pull_drsuapi_DsBindInfo(struct ndr_pull *ndr, int ndr_flags, union drsuapi_DsBindInfo *r)
 {
-       uint32_t _flags_save = ndr->flags;
+       libndr_flags _flags_save = ndr->flags;
        ndr->flags = ndr->flags & ~LIBNDR_FLAG_NDR64;
        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
        if (ndr_flags & NDR_SCALARS) {
index 9d1d371b60de6deab96505b6df605451c0904156..6399a3478faa54b7842bce8788e2a2f4e67eb069 100644 (file)
@@ -28,7 +28,7 @@ void ndr_print_drsuapi_DsReplicaObjectListItem(struct ndr_print *ndr, const char
 void ndr_print_drsuapi_DsReplicaObjectListItemEx(struct ndr_print *ndr, const char *name,
                                                 const struct drsuapi_DsReplicaObjectListItemEx *r);
 
-size_t ndr_size_drsuapi_DsReplicaObjectIdentifier3Binary_without_Binary(const struct drsuapi_DsReplicaObjectIdentifier3Binary *r, int flags);
+size_t ndr_size_drsuapi_DsReplicaObjectIdentifier3Binary_without_Binary(const struct drsuapi_DsReplicaObjectIdentifier3Binary *r, libndr_flags flags);
 
 
 #endif /* _LIBRPC_NDR_NDR_DRSUAPI_H */
index 96d34687bc1f3bcf48858010b2792c0f3fc017d3..f7dae910347d112d345dc9ad0ead070b5191afdc 100644 (file)
@@ -28,7 +28,7 @@ enum ndr_err_code ndr_push_frsrpc_CommPktChunkCtr(struct ndr_push *ndr,
 {
        uint32_t cntr_chunks_0;
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
                if (ndr_flags & NDR_SCALARS) {
                        NDR_CHECK(ndr_push_align(ndr, 2));
@@ -59,7 +59,7 @@ enum ndr_err_code ndr_pull_frsrpc_CommPktChunkCtr(struct ndr_pull *ndr,
 {
        uint32_t cntr_chunks_0;
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
                if (ndr_flags & NDR_SCALARS) {
                        uint32_t remaining = ndr->data_size - ndr->offset;
@@ -84,7 +84,7 @@ enum ndr_err_code ndr_pull_frsrpc_CommPktChunkCtr(struct ndr_pull *ndr,
 }
 
 size_t ndr_size_frsrpc_CommPktChunkCtr(const struct frsrpc_CommPktChunkCtr *r,
-                                      int flags)
+                                      libndr_flags flags)
 {
        flags |= LIBNDR_FLAG_NOALIGN;
        return ndr_size_struct(r, flags,
index 9e5ac92d6cbc389388b9bb6562f97cd7c63e0927..b9d2ea98c4929891bb3a5bc4af96bf88b04df15b 100644 (file)
@@ -29,6 +29,6 @@ enum ndr_err_code ndr_pull_frsrpc_CommPktChunkCtr(struct ndr_pull *ndr,
                                        int ndr_flags,
                                        struct frsrpc_CommPktChunkCtr *r);
 size_t ndr_size_frsrpc_CommPktChunkCtr(const struct frsrpc_CommPktChunkCtr *r,
-                                      int flags);
+                                      libndr_flags flags);
 
 #endif /* _LIBRPC_NDR_NDR_FRSRPC_H */
index 57b28df9e528aba1a2e37ff4b1866b58a0c8e54b..3ea8d9e9e3a63913fd10be4bb724f40a76347007 100644 (file)
@@ -23,7 +23,7 @@
 #include "includes.h"
 #include "librpc/gen_ndr/ndr_krb5pac.h"
 
-size_t _ndr_size_PAC_INFO(const union PAC_INFO *r, uint32_t level, int flags)
+size_t _ndr_size_PAC_INFO(const union PAC_INFO *r, uint32_t level, libndr_flags flags)
 {
        size_t s = ndr_size_PAC_INFO(r, level, flags);
        switch (level) {
@@ -43,7 +43,7 @@ enum ndr_err_code ndr_push_PAC_BUFFER(struct ndr_push *ndr, int ndr_flags, const
                NDR_CHECK(ndr_push_PAC_TYPE(ndr, NDR_SCALARS, r->type));
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, _ndr_size_PAC_INFO(r->info,r->type,LIBNDR_FLAG_ALIGN8)));
                {
-                       uint32_t _flags_save_PAC_INFO = ndr->flags;
+                       libndr_flags _flags_save_PAC_INFO = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN8);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->info));
                        ndr->flags = _flags_save_PAC_INFO;
@@ -52,7 +52,7 @@ enum ndr_err_code ndr_push_PAC_BUFFER(struct ndr_push *ndr, int ndr_flags, const
        }
        if (ndr_flags & NDR_BUFFERS) {
                {
-                       uint32_t _flags_save_PAC_INFO = ndr->flags;
+                       libndr_flags _flags_save_PAC_INFO = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN8);
                        if (r->info) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->info));
@@ -84,7 +84,7 @@ enum ndr_err_code ndr_pull_PAC_BUFFER(struct ndr_pull *ndr, int ndr_flags, struc
                NDR_CHECK(ndr_pull_PAC_TYPE(ndr, NDR_SCALARS, &r->type));
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->_ndr_size));
                {
-                       uint32_t _flags_save_PAC_INFO = ndr->flags;
+                       libndr_flags _flags_save_PAC_INFO = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN8);
                        NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
                        if (_ptr_info) {
@@ -99,7 +99,7 @@ enum ndr_err_code ndr_pull_PAC_BUFFER(struct ndr_pull *ndr, int ndr_flags, struc
        }
        if (ndr_flags & NDR_BUFFERS) {
                {
-                       uint32_t _flags_save_PAC_INFO = ndr->flags;
+                       libndr_flags _flags_save_PAC_INFO = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN8);
                        if (r->info) {
                                uint32_t _relative_save_offset;
index f53916142b9fc8cfbe5440da6efe74bd350b4c5d..e009133ea066c1d94961aee99a5557ae6a76b0f1 100644 (file)
@@ -22,5 +22,4 @@
 
 #include "librpc/gen_ndr/ndr_krb5pac.h"
 
-size_t _ndr_size_PAC_INFO(const union PAC_INFO *r, uint32_t level, int flags);
-
+size_t _ndr_size_PAC_INFO(const union PAC_INFO *r, uint32_t level, libndr_flags flags);
index 6a5f356471b33d43592cf78d9b2e06daebe6e833..a9cc1411fe4896adb3d5f74708ed1efb0ae20166 100644 (file)
@@ -158,19 +158,19 @@ enum ndr_err_code ndr_push_NETLOGON_SAM_LOGON_REQUEST(struct ndr_push *ndr, int
                NDR_CHECK(ndr_push_align(ndr, 4));
                NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->request_count));
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->computer_name));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->user_name));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->mailslot_name));
                        ndr->flags = _flags_save_string;
@@ -179,7 +179,7 @@ enum ndr_err_code ndr_push_NETLOGON_SAM_LOGON_REQUEST(struct ndr_push *ndr, int
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_size_dom_sid0(&r->sid, ndr->flags)));
                if (ndr_size_dom_sid0(&r->sid, ndr->flags)) {
                        struct ndr_push *_ndr_sid;
-                       uint32_t _flags_save_DATA_BLOB = ndr->flags;
+                       libndr_flags _flags_save_DATA_BLOB = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN4);
                        NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->_pad));
                        ndr->flags = _flags_save_DATA_BLOB;
@@ -203,19 +203,19 @@ enum ndr_err_code ndr_pull_NETLOGON_SAM_LOGON_REQUEST(struct ndr_pull *ndr, int
                NDR_CHECK(ndr_pull_align(ndr, 4));
                NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->request_count));
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->computer_name));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->user_name));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->mailslot_name));
                        ndr->flags = _flags_save_string;
@@ -223,7 +223,7 @@ enum ndr_err_code ndr_pull_NETLOGON_SAM_LOGON_REQUEST(struct ndr_pull *ndr, int
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->acct_control));
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_size));
                if (r->sid_size) {
-                       uint32_t _flags_save_DATA_BLOB = ndr->flags;
+                       libndr_flags _flags_save_DATA_BLOB = ndr->flags;
                        struct ndr_pull *_ndr_sid;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN4);
                        NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->_pad));
@@ -247,7 +247,7 @@ enum ndr_err_code ndr_pull_NETLOGON_SAM_LOGON_REQUEST(struct ndr_pull *ndr, int
 enum ndr_err_code ndr_push_NETLOGON_SAM_LOGON_RESPONSE_EX_with_flags(struct ndr_push *ndr, int ndr_flags, const struct NETLOGON_SAM_LOGON_RESPONSE_EX *r)
 {
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
                if (ndr_flags & NDR_SCALARS) {
                        NDR_CHECK(ndr_push_align(ndr, 4));
@@ -292,7 +292,7 @@ enum ndr_err_code ndr_pull_NETLOGON_SAM_LOGON_RESPONSE_EX_with_flags(struct ndr_
                                                                     uint32_t nt_version_flags)
 {
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ZERO_STRUCTP(r);
                ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
                if (ndr_flags & NDR_SCALARS) {
index 72c8774ce5c5f69f937bce0df9e4c5caf5dcc946..f8084d50680c53cd89c0e010b73cc2945bbd181e 100644 (file)
@@ -452,7 +452,7 @@ enum ndr_err_code ndr_push_negoex_MESSAGE_ARRAY(struct ndr_push *ndr, int ndr_fl
 {
        uint32_t cntr_messages_0;
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
                NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
                if (ndr_flags & NDR_SCALARS) {
@@ -473,7 +473,7 @@ enum ndr_err_code ndr_pull_negoex_MESSAGE_ARRAY(struct ndr_pull *ndr, int ndr_fl
        uint32_t cntr_messages_0;
        TALLOC_CTX *_mem_save_messages_0 = NULL;
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
                NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
                if (ndr_flags & NDR_SCALARS) {
index 021bc402a80cda007d8bd95b4f63e66d41d7e95e..80f104c6341110361fba3fd79e70aadd66c73a00 100644 (file)
@@ -35,11 +35,11 @@ _PUBLIC_ size_t ndr_ntlmssp_string_length(uint32_t negotiate_flags, const char *
        return strlen(s);
 }
 
-_PUBLIC_ uint32_t ndr_ntlmssp_negotiated_string_flags(uint32_t negotiate_flags)
+_PUBLIC_ libndr_flags ndr_ntlmssp_negotiated_string_flags(uint32_t negotiate_flags)
 {
-       uint32_t flags = LIBNDR_FLAG_STR_NOTERM |
-                        LIBNDR_FLAG_STR_CHARLEN |
-                        LIBNDR_FLAG_REMAINING;
+       libndr_flags flags = LIBNDR_FLAG_STR_NOTERM |
+                            LIBNDR_FLAG_STR_CHARLEN |
+                            LIBNDR_FLAG_REMAINING;
 
        if (!(negotiate_flags & NTLMSSP_NEGOTIATE_UNICODE)) {
                flags |= LIBNDR_FLAG_STR_ASCII;
index 5c979ffa4f7e7ace678bf7db98b198fb92989c36..5cca4046d34e046b915eea5e8d7a2d6b0ba70aa5 100644 (file)
@@ -20,7 +20,7 @@
 */
 
 _PUBLIC_ size_t ndr_ntlmssp_string_length(uint32_t negotiate_flags, const char *s);
-_PUBLIC_ uint32_t ndr_ntlmssp_negotiated_string_flags(uint32_t negotiate_flags);
+_PUBLIC_ libndr_flags ndr_ntlmssp_negotiated_string_flags(uint32_t negotiate_flags);
 _PUBLIC_ enum ndr_err_code ndr_push_AV_PAIR_LIST(struct ndr_push *ndr, int ndr_flags, const struct AV_PAIR_LIST *r);
 _PUBLIC_ enum ndr_err_code ndr_pull_AV_PAIR_LIST(struct ndr_pull *ndr, int ndr_flags, struct AV_PAIR_LIST *r);
 _PUBLIC_ void ndr_print_ntlmssp_nt_response(TALLOC_CTX *mem_ctx,
index e4f47bb046628877093e0d7c10071186c30b5526..928bed8e360b83671d5d8d22572f9468f8fa911d 100644 (file)
@@ -22,9 +22,9 @@
 #include "includes.h"
 #include "../librpc/gen_ndr/ndr_ntprinting.h"
 
-_PUBLIC_ uint32_t ndr_ntprinting_string_flags(uint32_t string_flags)
+_PUBLIC_ libndr_flags ndr_ntprinting_string_flags(libndr_flags string_flags)
 {
-       uint32_t flags = LIBNDR_FLAG_STR_NULLTERM;
+       libndr_flags flags = LIBNDR_FLAG_STR_NULLTERM;
 
        if (string_flags & LIBNDR_FLAG_STR_ASCII) {
                flags |= LIBNDR_FLAG_STR_ASCII;
@@ -42,7 +42,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_ntprinting_printer(struct ndr_pull *ndr, int
        uint32_t _ptr_devmode;
        TALLOC_CTX *_mem_save_devmode_0;
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
                if (ndr_flags & NDR_SCALARS) {
                        NDR_CHECK(ndr_pull_align(ndr, 5));
index 3b6ee0146065a85c421234fadbd0bd5fbab21681..7c52ea7f20d8e1914001a76e3ab895e2e5eebd82 100644 (file)
@@ -22,6 +22,6 @@
 #include "includes.h"
 #include "../librpc/gen_ndr/ndr_ntprinting.h"
 
-_PUBLIC_ uint32_t ndr_ntprinting_string_flags(uint32_t string_flags);
+_PUBLIC_ libndr_flags ndr_ntprinting_string_flags(libndr_flags string_flags);
 
 _PUBLIC_ enum ndr_err_code ndr_pull_ntprinting_printer(struct ndr_pull *ndr, int ndr_flags, struct ntprinting_printer *r);
index 2c684e2589f0b249ddb29d5c80322316ad63fa9c..f8d178bcc0323fb6545d30e1a0155c0a94ea5901 100644 (file)
@@ -26,7 +26,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_preg_file(struct ndr_push *ndr, int ndr_flag
 {
        uint32_t cntr_entries_0;
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
                if (ndr_flags & NDR_SCALARS) {
                        NDR_CHECK(ndr_push_align(ndr, 4));
@@ -46,7 +46,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_preg_file(struct ndr_push *ndr, int ndr_flag
 _PUBLIC_ enum ndr_err_code ndr_pull_preg_file(struct ndr_pull *ndr, int ndr_flags, struct preg_file *r)
 {
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
                if (ndr_flags & NDR_SCALARS) {
                        NDR_CHECK(ndr_pull_align(ndr, 4));
index ca229d027c30b08aaa00221432f95140def66609..16e16f40c6a91f0d4519ec9bbed4b4bad37901eb 100644 (file)
@@ -32,7 +32,7 @@
  * to work out where the coda starts (and in ndr_size_security_ace()
  * just below).
  */
-static size_t ndr_size_security_ace_core(const struct security_ace *ace, int flags)
+static size_t ndr_size_security_ace_core(const struct security_ace *ace, libndr_flags flags)
 {
        size_t ret;
 
@@ -55,7 +55,7 @@ static size_t ndr_size_security_ace_core(const struct security_ace *ace, int fla
 /*
   return the wire size of a security_ace
 */
-size_t ndr_size_security_ace(const struct security_ace *ace, int flags)
+size_t ndr_size_security_ace(const struct security_ace *ace, libndr_flags flags)
 {
        size_t base = ndr_size_security_ace_core(ace, flags);
        size_t ret = base;
@@ -87,7 +87,7 @@ size_t ndr_size_security_ace(const struct security_ace *ace, int flags)
  */
 size_t ndr_subcontext_size_of_ace_coda(const struct security_ace *ace,
                                       size_t ace_size,
-                                      int flags)
+                                      libndr_flags flags)
 {
        size_t core_size;
        if (ace_size == 0) {
@@ -103,7 +103,7 @@ size_t ndr_subcontext_size_of_ace_coda(const struct security_ace *ace,
 /*
   return the wire size of a security_acl
 */
-size_t ndr_size_security_acl(const struct security_acl *theacl, int flags)
+size_t ndr_size_security_acl(const struct security_acl *theacl, libndr_flags flags)
 {
        size_t ret;
        int i;
@@ -118,7 +118,7 @@ size_t ndr_size_security_acl(const struct security_acl *theacl, int flags)
 /*
   return the wire size of a security descriptor
 */
-size_t ndr_size_security_descriptor(const struct security_descriptor *sd, int flags)
+size_t ndr_size_security_descriptor(const struct security_descriptor *sd, libndr_flags flags)
 {
        size_t ret;
        if (!sd) return 0;
@@ -134,13 +134,13 @@ size_t ndr_size_security_descriptor(const struct security_descriptor *sd, int fl
 /*
   return the wire size of a dom_sid
 */
-size_t ndr_size_dom_sid(const struct dom_sid *sid, int flags)
+size_t ndr_size_dom_sid(const struct dom_sid *sid, libndr_flags flags)
 {
        if (!sid) return 0;
        return 8 + 4*sid->num_auths;
 }
 
-size_t ndr_size_dom_sid28(const struct dom_sid *sid, int flags)
+size_t ndr_size_dom_sid28(const struct dom_sid *sid, libndr_flags flags)
 {
        if (all_zero((const uint8_t *)sid, sizeof(struct dom_sid))) {
                return 0;
@@ -148,7 +148,7 @@ size_t ndr_size_dom_sid28(const struct dom_sid *sid, int flags)
        return ndr_size_dom_sid(sid, flags);
 }
 
-size_t ndr_size_dom_sid0(const struct dom_sid *sid, int flags)
+size_t ndr_size_dom_sid0(const struct dom_sid *sid, libndr_flags flags)
 {
        return ndr_size_dom_sid28(sid, flags);
 }
index c5fa82cdfdef88c599e4058714a86494e5603df2..4d3101b444d45bab682c360ca3e5cdced6465728 100644 (file)
@@ -703,7 +703,7 @@ uint32_t _ndr_size_spoolss_DeviceMode(struct spoolss_DeviceMode *devmode, uint32
        return ndr_size_spoolss_DeviceMode(devmode, flags);
 }
 
-_PUBLIC_ size_t ndr_size_spoolss_StringArray(const struct spoolss_StringArray *r, int flags)
+_PUBLIC_ size_t ndr_size_spoolss_StringArray(const struct spoolss_StringArray *r, libndr_flags flags)
 {
        if (!r) {
                return 4;
@@ -722,13 +722,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo101(struct ndr_push *ndr,
                NDR_CHECK(ndr_push_align(ndr, 8));
                NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->architecture));
                        ndr->flags = _flags_save_string;
@@ -736,19 +736,19 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo101(struct ndr_push *ndr,
                NDR_CHECK(ndr_push_relative_ptr1(ndr, r->file_info));
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->file_count));
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->default_datatype));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string_array = ndr->flags;
+                       libndr_flags _flags_save_string_array = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->previous_names));
                        ndr->flags = _flags_save_string_array;
@@ -756,25 +756,25 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo101(struct ndr_push *ndr,
                NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->driver_date));
                NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->driver_version));
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->manufacturer_name));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->manufacturer_url));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->hardware_id));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->provider));
                        ndr->flags = _flags_save_string;
@@ -783,7 +783,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo101(struct ndr_push *ndr,
        }
        if (ndr_flags & NDR_BUFFERS) {
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->driver_name) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
@@ -793,7 +793,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo101(struct ndr_push *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->architecture) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->architecture));
@@ -816,7 +816,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo101(struct ndr_push *ndr,
                        NDR_CHECK(ndr_push_relative_ptr2_end(ndr, r->file_info));
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->monitor_name) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
@@ -826,7 +826,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo101(struct ndr_push *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->default_datatype) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->default_datatype));
@@ -836,7 +836,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo101(struct ndr_push *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string_array = ndr->flags;
+                       libndr_flags _flags_save_string_array = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->previous_names) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->previous_names));
@@ -846,7 +846,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo101(struct ndr_push *ndr,
                        ndr->flags = _flags_save_string_array;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->manufacturer_name) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->manufacturer_name));
@@ -856,7 +856,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo101(struct ndr_push *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->manufacturer_url) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->manufacturer_url));
@@ -866,7 +866,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo101(struct ndr_push *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->hardware_id) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->hardware_id));
@@ -876,7 +876,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo101(struct ndr_push *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->provider) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->provider));
@@ -917,7 +917,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                NDR_CHECK(ndr_pull_align(ndr, 8));
                NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
                        if (_ptr_driver_name) {
@@ -929,7 +929,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_architecture));
                        if (_ptr_architecture) {
@@ -949,7 +949,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                }
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->file_count));
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
                        if (_ptr_monitor_name) {
@@ -961,7 +961,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_default_datatype));
                        if (_ptr_default_datatype) {
@@ -973,7 +973,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string_array = ndr->flags;
+                       libndr_flags _flags_save_string_array = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_previous_names));
                        if (_ptr_previous_names) {
@@ -987,7 +987,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->driver_date));
                NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->driver_version));
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_manufacturer_name));
                        if (_ptr_manufacturer_name) {
@@ -999,7 +999,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_manufacturer_url));
                        if (_ptr_manufacturer_url) {
@@ -1011,7 +1011,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_hardware_id));
                        if (_ptr_hardware_id) {
@@ -1023,7 +1023,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_provider));
                        if (_ptr_provider) {
@@ -1038,7 +1038,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
        }
        if (ndr_flags & NDR_BUFFERS) {
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->driver_name) {
                                uint32_t _relative_save_offset;
@@ -1056,7 +1056,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->architecture) {
                                uint32_t _relative_save_offset;
@@ -1101,7 +1101,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                        ndr->offset = _relative_save_offset;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->monitor_name) {
                                uint32_t _relative_save_offset;
@@ -1119,7 +1119,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->default_datatype) {
                                uint32_t _relative_save_offset;
@@ -1137,7 +1137,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string_array = ndr->flags;
+                       libndr_flags _flags_save_string_array = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->previous_names) {
                                uint32_t _relative_save_offset;
@@ -1155,7 +1155,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                        ndr->flags = _flags_save_string_array;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->manufacturer_name) {
                                uint32_t _relative_save_offset;
@@ -1173,7 +1173,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->manufacturer_url) {
                                uint32_t _relative_save_offset;
@@ -1191,7 +1191,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->hardware_id) {
                                uint32_t _relative_save_offset;
@@ -1209,7 +1209,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr,
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->provider) {
                                uint32_t _relative_save_offset;
@@ -1254,7 +1254,7 @@ void ndr_print_spoolss_Field(struct ndr_print *ndr, const char *name, const unio
        }
 }
 
-_PUBLIC_ size_t ndr_size_spoolss_PrinterData(const union spoolss_PrinterData *r, uint32_t level, int flags)
+_PUBLIC_ size_t ndr_size_spoolss_PrinterData(const union spoolss_PrinterData *r, uint32_t level, libndr_flags flags)
 {
        if (!r) {
                return 0;
@@ -1269,7 +1269,7 @@ void ndr_print_spoolss_security_descriptor(struct ndr_print *ndr, const char *na
 
 enum ndr_err_code ndr_pull_spoolss_security_descriptor(struct ndr_pull *ndr, int ndr_flags, struct security_descriptor *r)
 {
-       uint32_t _flags_save_STRUCT = ndr->flags;
+       libndr_flags _flags_save_STRUCT = ndr->flags;
        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NO_RELATIVE_REVERSE);
        NDR_CHECK(ndr_pull_security_descriptor(ndr, ndr_flags, r));
        ndr->flags = _flags_save_STRUCT;
@@ -1279,7 +1279,7 @@ enum ndr_err_code ndr_pull_spoolss_security_descriptor(struct ndr_pull *ndr, int
 enum ndr_err_code ndr_push_spoolss_security_descriptor(struct ndr_push *ndr, int ndr_flags, const struct security_descriptor *r)
 {
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_FLAG_LITTLE_ENDIAN|LIBNDR_FLAG_NO_RELATIVE_REVERSE);
                if (ndr_flags & NDR_SCALARS) {
                        NDR_CHECK(ndr_push_align(ndr, 5));
@@ -1323,79 +1323,79 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo2(struct ndr_push *ndr, i
        if (ndr_flags & NDR_SCALARS) {
                NDR_CHECK(ndr_push_align(ndr, 5));
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->servername));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->printername));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->sharename));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->portname));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->drivername));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->comment));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->location));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_spoolss_DeviceMode = ndr->flags;
+                       libndr_flags _flags_save_spoolss_DeviceMode = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN4);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->devmode));
                        ndr->flags = _flags_save_spoolss_DeviceMode;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->sepfile));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->printprocessor));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->datatype));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->parameters));
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_spoolss_security_descriptor = ndr->flags;
+                       libndr_flags _flags_save_spoolss_security_descriptor = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN4);
                        NDR_CHECK(ndr_push_relative_ptr1(ndr, r->secdesc));
                        ndr->flags = _flags_save_spoolss_security_descriptor;
@@ -1412,7 +1412,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo2(struct ndr_push *ndr, i
        }
        if (ndr_flags & NDR_BUFFERS) {
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->servername) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->servername));
@@ -1422,7 +1422,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo2(struct ndr_push *ndr, i
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->printername) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->printername));
@@ -1432,7 +1432,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo2(struct ndr_push *ndr, i
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->sharename) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->sharename));
@@ -1442,7 +1442,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo2(struct ndr_push *ndr, i
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->portname) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->portname));
@@ -1452,7 +1452,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo2(struct ndr_push *ndr, i
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->drivername) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->drivername));
@@ -1462,7 +1462,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo2(struct ndr_push *ndr, i
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->comment) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->comment));
@@ -1472,7 +1472,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo2(struct ndr_push *ndr, i
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->location) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->location));
@@ -1482,7 +1482,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo2(struct ndr_push *ndr, i
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->sepfile) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->sepfile));
@@ -1492,7 +1492,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo2(struct ndr_push *ndr, i
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->printprocessor) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->printprocessor));
@@ -1502,7 +1502,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo2(struct ndr_push *ndr, i
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->datatype) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->datatype));
@@ -1512,7 +1512,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo2(struct ndr_push *ndr, i
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
                        if (r->parameters) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->parameters));
@@ -1522,7 +1522,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo2(struct ndr_push *ndr, i
                        ndr->flags = _flags_save_string;
                }
                {
-                       uint32_t _flags_save_spoolss_DeviceMode = ndr->flags;
+                       libndr_flags _flags_save_spoolss_DeviceMode = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN4);
                        if (r->devmode) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->devmode));
@@ -1537,7 +1537,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo2(struct ndr_push *ndr, i
                        ndr->flags = _flags_save_spoolss_DeviceMode;
                }
                {
-                       uint32_t _flags_save_spoolss_security_descriptor = ndr->flags;
+                       libndr_flags _flags_save_spoolss_security_descriptor = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN4);
                        if (r->secdesc) {
                                NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->secdesc));
@@ -1582,7 +1582,7 @@ _PUBLIC_ void ndr_print_spoolss_Time(struct ndr_print *ndr, const char *name, co
        talloc_free(str);
 }
 
-_PUBLIC_ uint32_t ndr_spoolss_PrinterEnumValues_align(enum winreg_Type type)
+_PUBLIC_ libndr_flags ndr_spoolss_PrinterEnumValues_align(enum winreg_Type type)
 {
        switch(type) {
        case REG_NONE:
index 2ede07ac79fabe0417b2b3878460c6fff84e43ad..ef752ebf7ba2650e63ca28a94813ddec187ecdfd 100644 (file)
@@ -66,16 +66,16 @@ enum ndr_err_code ndr_pull_spoolss_EnumPrinterDataEx(struct ndr_pull *ndr, int f
 uint32_t ndr_size_spoolss_EnumPrinterDataEx_info(TALLOC_CTX *mem_ctx, 
                                                 uint32_t count, struct spoolss_PrinterEnumValues *info);
 uint32_t _ndr_size_spoolss_DeviceMode(struct spoolss_DeviceMode *devmode, uint32_t flags);
-size_t ndr_size_spoolss_StringArray(const struct spoolss_StringArray *r, int flags);
+size_t ndr_size_spoolss_StringArray(const struct spoolss_StringArray *r, libndr_flags flags);
 _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo101(struct ndr_push *ndr, int ndr_flags, const struct spoolss_DriverInfo101 *r);
 _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo101(struct ndr_pull *ndr, int ndr_flags, struct spoolss_DriverInfo101 *r);
 void ndr_print_spoolss_Field(struct ndr_print *ndr, const char *name, const union spoolss_Field *r);
-size_t ndr_size_spoolss_PrinterData(const union spoolss_PrinterData *r, uint32_t level, int flags);
+size_t ndr_size_spoolss_PrinterData(const union spoolss_PrinterData *r, uint32_t level, libndr_flags flags);
 void ndr_print_spoolss_security_descriptor(struct ndr_print *ndr, const char *name, const struct security_descriptor *r);
 enum ndr_err_code ndr_pull_spoolss_security_descriptor(struct ndr_pull *ndr, int ndr_flags, struct security_descriptor *r);
 enum ndr_err_code ndr_push_spoolss_security_descriptor(struct ndr_push *ndr, int ndr_flags, const struct security_descriptor *r);
 _PUBLIC_ void ndr_print_spoolss_Time(struct ndr_print *ndr, const char *name, const struct spoolss_Time *r);
-_PUBLIC_ uint32_t ndr_spoolss_PrinterEnumValues_align(enum winreg_Type type);
+_PUBLIC_ libndr_flags ndr_spoolss_PrinterEnumValues_align(enum winreg_Type type);
 
 uint32_t ndr_size_spoolss_EnumPerMachineConnections_info(TALLOC_CTX *mem_ctx, uint32_t count, struct spoolss_PrinterInfo4 *info);
 #undef _PRINTF_ATTRIBUTE
index 857972604b991152da9313e0b1933ceb1ab9ed40..7980ca14759ecbd8d5605cc0ad0fa7a4604233c1 100644 (file)
@@ -33,7 +33,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_string(struct ndr_pull *ndr, int ndr_flags,
        size_t conv_src_len = 0, converted_size;
        int do_convert = 1, chset = CH_UTF16;
        unsigned byte_mul = 2;
-       unsigned flags = ndr->flags;
+       libndr_flags flags = ndr->flags;
        unsigned c_len_term = 0;
 
        if (!(ndr_flags & NDR_SCALARS)) {
@@ -74,7 +74,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_string(struct ndr_pull *ndr, int ndr_flags,
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &len1));
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &ofs));
                if (ofs != 0) {
-                       return ndr_pull_error(ndr, NDR_ERR_STRING, "non-zero array offset with string flags 0x%"PRIx32"\n",
+                       return ndr_pull_error(ndr, NDR_ERR_STRING, "non-zero array offset with string flags 0x%"PRI_LIBNDR_FLAGS"\n",
                                              ndr->flags & LIBNDR_STRING_FLAGS);
                }
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &len2));
@@ -104,7 +104,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_string(struct ndr_pull *ndr, int ndr_flags,
        case LIBNDR_FLAG_STR_LEN4|LIBNDR_FLAG_STR_NOTERM:
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &ofs));
                if (ofs != 0) {
-                       return ndr_pull_error(ndr, NDR_ERR_STRING, "non-zero array offset with string flags 0x%"PRIx32"\n",
+                       return ndr_pull_error(ndr, NDR_ERR_STRING, "non-zero array offset with string flags 0x%"PRI_LIBNDR_FLAGS"\n",
                                              ndr->flags & LIBNDR_STRING_FLAGS);
                }
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &len1));
@@ -141,7 +141,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_string(struct ndr_pull *ndr, int ndr_flags,
 
        case LIBNDR_FLAG_STR_NOTERM:
                if (!(ndr->flags & LIBNDR_FLAG_REMAINING)) {
-                       return ndr_pull_error(ndr, NDR_ERR_STRING, "Bad string flags 0x%"PRIx32" (missing NDR_REMAINING)\n",
+                       return ndr_pull_error(ndr, NDR_ERR_STRING, "Bad string flags 0x%"PRI_LIBNDR_FLAGS" (missing NDR_REMAINING)\n",
                                              ndr->flags & LIBNDR_STRING_FLAGS);
                }
                conv_src_len = ndr->data_size - ndr->offset;
@@ -149,7 +149,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_string(struct ndr_pull *ndr, int ndr_flags,
                break;
 
        default:
-               return ndr_pull_error(ndr, NDR_ERR_STRING, "Bad string flags 0x%"PRIx32"\n",
+               return ndr_pull_error(ndr, NDR_ERR_STRING, "Bad string flags 0x%"PRI_LIBNDR_FLAGS"\n",
                                      ndr->flags & LIBNDR_STRING_FLAGS);
        }
 
@@ -173,7 +173,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_string(struct ndr_pull *ndr, int ndr_flags,
                                           &as,
                                           &converted_size)) {
                        return ndr_pull_error(ndr, NDR_ERR_CHARCNV,
-                                             "Bad character conversion with flags 0x%"PRIx32, flags);
+                                             "Bad character conversion with flags 0x%"PRI_LIBNDR_FLAGS, flags);
                }
        }
 
@@ -204,7 +204,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_string(struct ndr_push *ndr, int ndr_flags,
        ssize_t s_len, c_len;
        size_t d_len;
        int do_convert = 1, chset = CH_UTF16;
-       uint32_t flags = ndr->flags;
+       libndr_flags flags = ndr->flags;
        unsigned byte_mul = 2;
        uint8_t *dest = NULL;
 
@@ -252,7 +252,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_string(struct ndr_push *ndr, int ndr_flags,
                                          &dest, &d_len))
        {
                return ndr_push_error(ndr, NDR_ERR_CHARCNV,
-                                     "Bad character push conversion with flags 0x%"PRIx32, flags);
+                                     "Bad character push conversion with flags 0x%"PRI_LIBNDR_FLAGS, flags);
        }
 
        if (flags & LIBNDR_FLAG_STR_BYTESIZE) {
@@ -299,7 +299,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_string(struct ndr_push *ndr, int ndr_flags,
                        break;
                }
 
-               return ndr_push_error(ndr, NDR_ERR_STRING, "Bad string flags 0x%"PRIx32"\n",
+               return ndr_push_error(ndr, NDR_ERR_STRING, "Bad string flags 0x%"PRI_LIBNDR_FLAGS"\n",
                                      ndr->flags & LIBNDR_STRING_FLAGS);
        }
 
@@ -314,7 +314,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_string(struct ndr_push *ndr, int ndr_flags,
 _PUBLIC_ size_t ndr_string_array_size(struct ndr_push *ndr, const char *s)
 {
        size_t c_len;
-       unsigned flags = ndr->flags;
+       libndr_flags flags = ndr->flags;
        unsigned byte_mul = 2;
        unsigned c_len_term = 1;
 
@@ -406,8 +406,8 @@ _PUBLIC_ enum ndr_err_code ndr_pull_string_array(struct ndr_pull *ndr, int ndr_f
 {
        const char **a = NULL;
        uint32_t count;
-       unsigned flags = ndr->flags;
-       unsigned saved_flags = ndr->flags;
+       libndr_flags flags = ndr->flags;
+       libndr_flags saved_flags = ndr->flags;
        uint32_t alloc_size;
 
        if (!(ndr_flags & NDR_SCALARS)) {
@@ -456,7 +456,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_string_array(struct ndr_pull *ndr, int ndr_f
 
        case LIBNDR_FLAG_STR_NOTERM:
                if (!(ndr->flags & LIBNDR_FLAG_REMAINING)) {
-                       return ndr_pull_error(ndr, NDR_ERR_STRING, "Bad string flags 0x%"PRIx32" (missing NDR_REMAINING)\n",
+                       return ndr_pull_error(ndr, NDR_ERR_STRING, "Bad string flags 0x%"PRI_LIBNDR_FLAGS" (missing NDR_REMAINING)\n",
                                              ndr->flags & LIBNDR_STRING_FLAGS);
                }
                /*
@@ -498,7 +498,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_string_array(struct ndr_pull *ndr, int ndr_f
                break;
 
        default:
-               return ndr_pull_error(ndr, NDR_ERR_STRING, "Bad string flags 0x%"PRIx32"\n",
+               return ndr_pull_error(ndr, NDR_ERR_STRING, "Bad string flags 0x%"PRI_LIBNDR_FLAGS"\n",
                                      ndr->flags & LIBNDR_STRING_FLAGS);
        }
 
@@ -512,8 +512,8 @@ _PUBLIC_ enum ndr_err_code ndr_pull_string_array(struct ndr_pull *ndr, int ndr_f
 _PUBLIC_ enum ndr_err_code ndr_push_string_array(struct ndr_push *ndr, int ndr_flags, const char **a)
 {
        uint32_t count;
-       unsigned flags = ndr->flags;
-       unsigned saved_flags = ndr->flags;
+       libndr_flags flags = ndr->flags;
+       libndr_flags saved_flags = ndr->flags;
 
        if (!(ndr_flags & NDR_SCALARS)) {
                return NDR_ERR_SUCCESS;
@@ -533,7 +533,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_string_array(struct ndr_push *ndr, int ndr_f
 
        case LIBNDR_FLAG_STR_NOTERM:
                if (!(ndr->flags & LIBNDR_FLAG_REMAINING)) {
-                       return ndr_push_error(ndr, NDR_ERR_STRING, "Bad string flags 0x%"PRIx32" (missing NDR_REMAINING)\n",
+                       return ndr_push_error(ndr, NDR_ERR_STRING, "Bad string flags 0x%"PRI_LIBNDR_FLAGS" (missing NDR_REMAINING)\n",
                                              ndr->flags & LIBNDR_STRING_FLAGS);
                }
 
@@ -550,7 +550,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_string_array(struct ndr_push *ndr, int ndr_f
                break;
 
        default:
-               return ndr_push_error(ndr, NDR_ERR_STRING, "Bad string flags 0x%"PRIx32"\n",
+               return ndr_push_error(ndr, NDR_ERR_STRING, "Bad string flags 0x%"PRI_LIBNDR_FLAGS"\n",
                                      ndr->flags & LIBNDR_STRING_FLAGS);
        }
 
@@ -577,7 +577,7 @@ _PUBLIC_ void ndr_print_string_array(struct ndr_print *ndr, const char *name, co
        ndr->depth--;
 }
 
-_PUBLIC_ size_t ndr_size_string_array(const char **a, uint32_t count, int flags)
+_PUBLIC_ size_t ndr_size_string_array(const char **a, uint32_t count, libndr_flags flags)
 {
        uint32_t i;
        size_t size = 0;
index 288e640381bf08b7c2512e08ceeaaea5a5b1c59d..ac9aff008c67ab9a66d60eb4c3e86068ebafa336 100644 (file)
@@ -26,7 +26,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_witness_notifyResponse(struct ndr_push *ndr,
 {
        uint32_t cntr_messages_0;
        {
-               uint32_t _flags_save_STRUCT = ndr->flags;
+               libndr_flags _flags_save_STRUCT = ndr->flags;
                ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
                NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
                if (ndr_flags & NDR_SCALARS) {
@@ -36,7 +36,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_witness_notifyResponse(struct ndr_push *ndr,
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num));
                        NDR_CHECK(ndr_push_unique_ptr(ndr, r->messages));
                        if (r->messages) {
-                               uint32_t _flags_save_witness_notifyResponse_message = ndr->flags;
+                               libndr_flags _flags_save_witness_notifyResponse_message = ndr->flags;
                                ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
                                        {
                                                struct ndr_push *_ndr_messages;
@@ -60,7 +60,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_witness_notifyResponse(struct ndr_push *ndr,
 
 _PUBLIC_ enum ndr_err_code ndr_pull_witness_notifyResponse(struct ndr_pull *ndr, int ndr_flags, struct witness_notifyResponse *r)
 {
-       uint32_t _flags_save_STRUCT = ndr->flags;
+       libndr_flags _flags_save_STRUCT = ndr->flags;
        ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
        NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
        if (ndr_flags & NDR_SCALARS) {
@@ -69,7 +69,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_witness_notifyResponse(struct ndr_pull *ndr,
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->length));
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num));
                {
-                       uint32_t _flags_save_witness_notifyResponse_message = ndr->flags;
+                       libndr_flags _flags_save_witness_notifyResponse_message = ndr->flags;
                        uint32_t _ptr_messages;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
                        NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_messages));
index 641e16161a0b3f10f307c0d27c4c953cbfff6005..5a343e06f29c974b36f7854da87b5af757d3d6ce 100644 (file)
@@ -68,7 +68,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_xattr_DOSATTRIB(struct ndr_push *ndr,
 
                NDR_CHECK(ndr_push_align(ndr, 4));
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, attrib_hex));
                        ndr->flags = _flags_save_string;
@@ -90,7 +90,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_xattr_DOSATTRIB(struct ndr_pull *ndr, int nd
        if (ndr_flags & NDR_SCALARS) {
                NDR_CHECK(ndr_pull_align(ndr, 4));
                {
-                       uint32_t _flags_save_string = ndr->flags;
+                       libndr_flags _flags_save_string = ndr->flags;
                        ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM);
                        NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->attrib_hex));
                        ndr->flags = _flags_save_string;
index c75c86fa35126a66c48f111f57f8b60bcd4fd4ee..b69324477e67a88463f1a848c70e4009c7c0740a 100644 (file)
@@ -661,7 +661,7 @@ bld.SAMBA_LIBRARY('ndr',
     public_deps='samba-errors talloc samba-util util_str_hex',
     public_headers='gen_ndr/misc.h gen_ndr/ndr_misc.h ndr/libndr.h:ndr.h',
     header_path= [('*gen_ndr*', 'gen_ndr')],
-    vnum='3.0.2',
+    vnum='4.0.0',
     abi_directory='ABI',
     abi_match='!ndr_table_* ndr_* GUID_* _ndr_pull_error* _ndr_push_error*',
     )
index 6cd7162232863b7fe648d6fbc00e5c8cc835ecc3..8832b9b3127399a2d99ed451794992434235c8b1 100644 (file)
@@ -84,6 +84,7 @@ my $scalar_alignment = {
        'dnsp_name' => 1,
        'dnsp_string' => 1,
        'HRESULT' => 4,
+       'libndr_flags' => 4,
 };
 
 sub GetElementLevelTable($$$)
index a631bad3031c35763f5174299a88a4cac662ad64..3f7f250209017dabbdf18b3f107ce6609d0841e0 100644 (file)
@@ -159,7 +159,7 @@ sub start_flags($$$)
        if (defined $flags) {
                $self->pidl("{");
                $self->indent;
-               $self->pidl("uint32_t _flags_save_$e->{TYPE} = $ndr->flags;");
+               $self->pidl("libndr_flags _flags_save_$e->{TYPE} = $ndr->flags;");
                $self->pidl("ndr_set_flags(&$ndr->flags, $flags);");
        }
 }
@@ -1892,7 +1892,7 @@ sub DeclStruct($$$$)
 sub ArgsStructNdrSize($$$)
 {
        my ($d, $name, $varname) = @_;
-       return "const struct $name *$varname, int flags";
+       return "const struct $name *$varname, libndr_flags flags";
 }
 
 $typefamily{STRUCT} = {
@@ -2254,7 +2254,7 @@ sub DeclUnion($$$$)
 sub ArgsUnionNdrSize($$)
 {
        my ($d,$name) = @_;
-       return "const union $name *r, uint32_t level, int flags";
+       return "const union $name *r, uint32_t level, libndr_flags flags";
 }
 
 $typefamily{UNION} = {
index 67ff44d6f29abd0bfae69cb0af383935db621691..ac54c4e9b3857594473c5134c415df41721a2999 100644 (file)
@@ -543,7 +543,7 @@ sub PythonFunctionStruct($$$$)
        $self->pidl("}");
        $self->pidl("");
 
-       $self->pidl("static PyObject *py_$name\_ndr_pack(PyObject *py_obj, int ndr_inout_flags, uint32_t ndr_push_flags)");
+       $self->pidl("static PyObject *py_$name\_ndr_pack(PyObject *py_obj, int ndr_inout_flags, libndr_flags ndr_push_flags)");
        $self->pidl("{");
        $self->indent;
        $self->pidl("$ndr_call");
@@ -594,7 +594,7 @@ sub PythonFunctionStruct($$$$)
        $self->pidl("const char * const kwnames[] = { \"bigendian\", \"ndr64\", NULL };");
        $self->pidl("PyObject *bigendian_obj = NULL;");
        $self->pidl("PyObject *ndr64_obj = NULL;");
-       $self->pidl("uint32_t ndr_push_flags = 0;");
+       $self->pidl("libndr_flags ndr_push_flags = 0;");
        $self->pidl("");
        $self->pidl("if (!PyArg_ParseTupleAndKeywords(args, kwargs, \"|OO:__ndr_pack_in__\",");
        $self->indent;
@@ -629,7 +629,7 @@ sub PythonFunctionStruct($$$$)
        $self->pidl("const char * const kwnames[] = { \"bigendian\", \"ndr64\", NULL };");
        $self->pidl("PyObject *bigendian_obj = NULL;");
        $self->pidl("PyObject *ndr64_obj = NULL;");
-       $self->pidl("uint32_t ndr_push_flags = 0;");
+       $self->pidl("libndr_flags ndr_push_flags = 0;");
        $self->pidl("");
        $self->pidl("if (!PyArg_ParseTupleAndKeywords(args, kwargs, \"|OO:__ndr_pack_out__\",");
        $self->indent;
@@ -658,7 +658,7 @@ sub PythonFunctionStruct($$$$)
        $self->pidl("}");
        $self->pidl("");
 
-       $self->pidl("static PyObject *py_$name\_ndr_unpack(PyObject *py_obj, const DATA_BLOB *blob, int ndr_inout_flags, uint32_t ndr_pull_flags, bool allow_remaining)");
+       $self->pidl("static PyObject *py_$name\_ndr_unpack(PyObject *py_obj, const DATA_BLOB *blob, int ndr_inout_flags, libndr_flags ndr_pull_flags, bool allow_remaining)");
        $self->pidl("{");
        $self->indent;
        $self->pidl("$ndr_call");
@@ -735,7 +735,7 @@ sub PythonFunctionStruct($$$$)
        $self->pidl("const char * const kwnames[] = { \"data_blob\", \"bigendian\", \"ndr64\", \"allow_remaining\", NULL };");
        $self->pidl("PyObject *bigendian_obj = NULL;");
        $self->pidl("PyObject *ndr64_obj = NULL;");
-       $self->pidl("uint32_t ndr_pull_flags = LIBNDR_FLAG_REF_ALLOC;");
+       $self->pidl("libndr_flags ndr_pull_flags = LIBNDR_FLAG_REF_ALLOC;");
        $self->pidl("PyObject *allow_remaining_obj = NULL;");
        $self->pidl("bool allow_remaining = false;");
        $self->pidl("");
@@ -783,7 +783,7 @@ sub PythonFunctionStruct($$$$)
        $self->pidl("const char * const kwnames[] = { \"data_blob\", \"bigendian\", \"ndr64\", \"allow_remaining\", NULL };");
        $self->pidl("PyObject *bigendian_obj = NULL;");
        $self->pidl("PyObject *ndr64_obj = NULL;");
-       $self->pidl("uint32_t ndr_pull_flags = LIBNDR_FLAG_REF_ALLOC;");
+       $self->pidl("libndr_flags ndr_pull_flags = LIBNDR_FLAG_REF_ALLOC;");
        $self->pidl("PyObject *allow_remaining_obj = NULL;");
        $self->pidl("bool allow_remaining = false;");
        $self->pidl("");
index 436a03741db2d695cc3f20df537c647070248013..c6e95675eabbf4bef6793933a0ebc059dd7def78 100644 (file)
@@ -72,6 +72,7 @@ my %scalars = (
        "ipv6address"   => "const char *",
        "dnsp_name"     => "const char *",
        "dnsp_string"   => "const char *",
+       "libndr_flags"  => "libndr_flags",
 );
 
 my %aliases = (
index e2a2c33ca5afe67bd59402e415798658884cb98e..cc14e3a668a60cd8e2e5cfc62963523e72de3223 100644 (file)
@@ -34,11 +34,11 @@ struct ndr_pull_test_data {
        ndr_print_fn_t print_fn;
        ndr_print_function_t print_function;
        int ndr_flags;
-       int flags;
+       libndr_flags flags;
        enum ndr_err_code ndr_err;
 };
 
-static enum ndr_err_code torture_ndr_push_struct_blob_flags(DATA_BLOB *blob, TALLOC_CTX *mem_ctx, uint32_t flags, uint32_t ndr_flags, const void *p, ndr_push_flags_fn_t fn)
+static enum ndr_err_code torture_ndr_push_struct_blob_flags(DATA_BLOB *blob, TALLOC_CTX *mem_ctx, uint32_t flags, libndr_flags ndr_flags, const void *p, ndr_push_flags_fn_t fn)
 {
        struct ndr_push *ndr;
        ndr = ndr_push_init_ctx(mem_ctx);
@@ -156,7 +156,7 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pullpush_test(
        DATA_BLOB db,
        size_t struct_size,
        int ndr_flags,
-       int flags,
+       libndr_flags flags,
        const char *check_fn_name,
        bool (*check_fn) (struct torture_context *ctx, void *data))
 {
@@ -276,7 +276,7 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_inout_test(
                                        const char *db_out_name,
                                        DATA_BLOB db_out,
                                        size_t struct_size,
-                                       int flags,
+                                       libndr_flags flags,
                                        const char *check_fn_name,
                                        bool (*check_fn) (struct torture_context *ctx, void *data))
 {
@@ -345,7 +345,7 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test(
        DATA_BLOB db,
        size_t struct_size,
        int ndr_flags,
-       int flags,
+       libndr_flags flags,
        enum ndr_err_code ndr_err)
 {
        struct torture_test *test;
index 8d553b80e15b45e3df16cfbd136a338545c54b3f..805f51711c9502f84ecc34f44c198b3070f6558f 100644 (file)
@@ -35,7 +35,7 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pullpush_test(
                                        DATA_BLOB db,
                                        size_t struct_size,
                                        int ndr_flags,
-                                       int flags,
+                                       libndr_flags flags,
                                        const char *check_fn_name,
                                        bool (*check_fn) (struct torture_context *, void *data));
 
@@ -49,7 +49,7 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_inout_test(
                                        const char *db_out_name,
                                        DATA_BLOB db_out,
                                        size_t struct_size,
-                                       int flags,
+                                       libndr_flags flags,
                                        const char *check_fn_name,
                                        bool (*check_fn) (struct torture_context *ctx, void *data));
 
@@ -61,7 +61,7 @@ _PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_invalid_data_test(
        DATA_BLOB db,
        size_t struct_size,
        int ndr_flags,
-       int flags,
+       libndr_flags flags,
        enum ndr_err_code ndr_err);
 
 #define torture_suite_add_ndr_pull_test(suite,name,data,check_fn) \
index 9742c8e8fdbe024c0277ecf2c2fd76d4656db32b..16d3fc37967f75fa8daad88d324ae5dc08ffa63f 100644 (file)
@@ -18,14 +18,14 @@ static const char utf8[] = { 0x6b, 0x61, 0x6d, 0x65, 0x6c, 0xc3, 0xa5,
                             0xc3, 0xb2, 0x00 };
 
 /* purely for convenience */
-static const int fl_ascii_null = LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM;
-static const int fl_ascii_noterm = LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NOTERM|LIBNDR_FLAG_REMAINING;
-static const int fl_utf8_null = LIBNDR_FLAG_STR_UTF8|LIBNDR_FLAG_STR_NULLTERM;
-static const int fl_raw8_null = LIBNDR_FLAG_STR_RAW8|LIBNDR_FLAG_STR_NULLTERM;
+static const libndr_flags fl_ascii_null = LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM;
+static const libndr_flags fl_ascii_noterm = LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NOTERM|LIBNDR_FLAG_REMAINING;
+static const libndr_flags fl_utf8_null = LIBNDR_FLAG_STR_UTF8|LIBNDR_FLAG_STR_NULLTERM;
+static const libndr_flags fl_raw8_null = LIBNDR_FLAG_STR_RAW8|LIBNDR_FLAG_STR_NULLTERM;
 
 static bool
 test_ndr_push_string (struct torture_context *tctx, const char *string,
-                      int flags, enum ndr_err_code exp_ndr_err,
+                      libndr_flags flags, enum ndr_err_code exp_ndr_err,
                       bool strcmp_pass)
 {
        TALLOC_CTX *mem_ctx;
@@ -33,7 +33,7 @@ test_ndr_push_string (struct torture_context *tctx, const char *string,
        enum ndr_err_code err;
 
        torture_comment(tctx,
-                        "test_ndr_push_string %s flags 0x%x expecting "
+                        "test_ndr_push_string %s flags 0x%"PRI_LIBNDR_FLAGS" expecting "
                        "err 0x%x and strcmp %s\n", string, flags, exp_ndr_err,
                        strcmp_pass?"pass":"fail");
        if (exp_ndr_err != NDR_ERR_SUCCESS) {
@@ -74,7 +74,7 @@ test_ndr_push_string (struct torture_context *tctx, const char *string,
 
 static bool
 test_ndr_pull_string (struct torture_context *tctx, const char *string,
-                      int flags, enum ndr_err_code exp_ndr_err,
+                      libndr_flags flags, enum ndr_err_code exp_ndr_err,
                       bool strcmp_pass)
 {
        TALLOC_CTX *mem_ctx;
@@ -84,7 +84,7 @@ test_ndr_pull_string (struct torture_context *tctx, const char *string,
        const char *result = NULL;
 
        torture_comment(tctx,
-                        "test_ndr_pull_string '%s' flags 0x%x expecting "
+                        "test_ndr_pull_string '%s' flags 0x%"PRI_LIBNDR_FLAGS" expecting "
                        "err 0x%x and strcmp %s\n", string, flags, exp_ndr_err,
                        strcmp_pass?"pass":"fail");
        if (exp_ndr_err != NDR_ERR_SUCCESS) {