/* parser auto-generated by pidl */ #include "includes.h" #include "bin/default/librpc/gen_ndr/ndr_oxidresolver.h" #include "librpc/gen_ndr/ndr_misc.h" #include "librpc/gen_ndr/ndr_orpc.h" static enum ndr_err_code ndr_push_COMINFO(struct ndr_push *ndr, int ndr_flags, const struct COMINFO *r) { NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags); if (ndr_flags & NDR_SCALARS) { NDR_CHECK(ndr_push_align(ndr, 4)); NDR_CHECK(ndr_push_COMVERSION(ndr, NDR_SCALARS, &r->version)); NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown1)); NDR_CHECK(ndr_push_trailer_align(ndr, 4)); } if (ndr_flags & NDR_BUFFERS) { } return NDR_ERR_SUCCESS; } static enum ndr_err_code ndr_pull_COMINFO(struct ndr_pull *ndr, int ndr_flags, struct COMINFO *r) { NDR_PULL_CHECK_FLAGS(ndr, ndr_flags); if (ndr_flags & NDR_SCALARS) { NDR_CHECK(ndr_pull_align(ndr, 4)); NDR_CHECK(ndr_pull_COMVERSION(ndr, NDR_SCALARS, &r->version)); NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown1)); NDR_CHECK(ndr_pull_trailer_align(ndr, 4)); } if (ndr_flags & NDR_BUFFERS) { } return NDR_ERR_SUCCESS; } _PUBLIC_ void ndr_print_COMINFO(struct ndr_print *ndr, const char *name, const struct COMINFO *r) { ndr_print_struct(ndr, name, "COMINFO"); if (r == NULL) { ndr_print_null(ndr); return; } ndr->depth++; ndr_print_COMVERSION(ndr, "version", &r->version); ndr_print_uint32(ndr, "unknown1", r->unknown1); ndr->depth--; } static enum ndr_err_code ndr_push_ResolveOxid(struct ndr_push *ndr, int flags, const struct ResolveOxid *r) { uint32_t cntr_arRequestedProtseqs_0; NDR_PUSH_CHECK_FN_FLAGS(ndr, flags); if (flags & NDR_IN) { NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->in.pOxid)); NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.cRequestedProtseqs)); NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.cRequestedProtseqs)); for (cntr_arRequestedProtseqs_0 = 0; cntr_arRequestedProtseqs_0 < (r->in.cRequestedProtseqs); cntr_arRequestedProtseqs_0++) { NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.arRequestedProtseqs[cntr_arRequestedProtseqs_0])); } } if (flags & NDR_OUT) { if (r->out.ppdsaOxidBindings == NULL) { return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); } if (r->out.pipidRemUnknown == NULL) { return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); } if (r->out.pAuthnHint == NULL) { return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); } NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.ppdsaOxidBindings)); if (*r->out.ppdsaOxidBindings) { NDR_CHECK(ndr_push_DUALSTRINGARRAY(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.ppdsaOxidBindings)); } NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, r->out.pipidRemUnknown)); NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.pAuthnHint)); NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result)); } return NDR_ERR_SUCCESS; } static enum ndr_err_code ndr_pull_ResolveOxid(struct ndr_pull *ndr, int flags, struct ResolveOxid *r) { uint32_t size_arRequestedProtseqs_0 = 0; uint32_t cntr_arRequestedProtseqs_0; uint32_t _ptr_ppdsaOxidBindings; TALLOC_CTX *_mem_save_arRequestedProtseqs_0 = NULL; TALLOC_CTX *_mem_save_ppdsaOxidBindings_0 = NULL; TALLOC_CTX *_mem_save_ppdsaOxidBindings_1 = NULL; TALLOC_CTX *_mem_save_pipidRemUnknown_0 = NULL; TALLOC_CTX *_mem_save_pAuthnHint_0 = NULL; NDR_PULL_CHECK_FN_FLAGS(ndr, flags); if (flags & NDR_IN) { NDR_ZERO_STRUCT(r->out); NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->in.pOxid)); NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.cRequestedProtseqs)); NDR_CHECK(ndr_pull_array_size(ndr, &r->in.arRequestedProtseqs)); size_arRequestedProtseqs_0 = ndr_get_array_size(ndr, &r->in.arRequestedProtseqs); NDR_PULL_ALLOC_N(ndr, r->in.arRequestedProtseqs, size_arRequestedProtseqs_0); _mem_save_arRequestedProtseqs_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->in.arRequestedProtseqs, 0); for (cntr_arRequestedProtseqs_0 = 0; cntr_arRequestedProtseqs_0 < (size_arRequestedProtseqs_0); cntr_arRequestedProtseqs_0++) { NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.arRequestedProtseqs[cntr_arRequestedProtseqs_0])); } NDR_PULL_SET_MEM_CTX(ndr, _mem_save_arRequestedProtseqs_0, 0); NDR_PULL_ALLOC(ndr, r->out.ppdsaOxidBindings); NDR_ZERO_STRUCTP(r->out.ppdsaOxidBindings); NDR_PULL_ALLOC(ndr, r->out.pipidRemUnknown); NDR_ZERO_STRUCTP(r->out.pipidRemUnknown); NDR_PULL_ALLOC(ndr, r->out.pAuthnHint); NDR_ZERO_STRUCTP(r->out.pAuthnHint); if (r->in.arRequestedProtseqs) { NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.arRequestedProtseqs, r->in.cRequestedProtseqs)); } } if (flags & NDR_OUT) { #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) { NDR_PULL_ALLOC(ndr, r->out.ppdsaOxidBindings); } _mem_save_ppdsaOxidBindings_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->out.ppdsaOxidBindings, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ppdsaOxidBindings)); if (_ptr_ppdsaOxidBindings) { NDR_PULL_ALLOC(ndr, *r->out.ppdsaOxidBindings); } else { *r->out.ppdsaOxidBindings = NULL; } if (*r->out.ppdsaOxidBindings) { _mem_save_ppdsaOxidBindings_1 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, *r->out.ppdsaOxidBindings, 0); NDR_CHECK(ndr_pull_DUALSTRINGARRAY(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.ppdsaOxidBindings)); NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ppdsaOxidBindings_1, 0); } NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ppdsaOxidBindings_0, LIBNDR_FLAG_REF_ALLOC); if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) { NDR_PULL_ALLOC(ndr, r->out.pipidRemUnknown); } _mem_save_pipidRemUnknown_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->out.pipidRemUnknown, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, r->out.pipidRemUnknown)); NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pipidRemUnknown_0, LIBNDR_FLAG_REF_ALLOC); if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) { NDR_PULL_ALLOC(ndr, r->out.pAuthnHint); } _mem_save_pAuthnHint_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->out.pAuthnHint, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.pAuthnHint)); NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pAuthnHint_0, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result)); } return NDR_ERR_SUCCESS; } _PUBLIC_ void ndr_print_ResolveOxid(struct ndr_print *ndr, const char *name, int flags, const struct ResolveOxid *r) { uint32_t cntr_arRequestedProtseqs_0; ndr_print_struct(ndr, name, "ResolveOxid"); if (r == NULL) { ndr_print_null(ndr); return; } ndr->depth++; if (flags & NDR_SET_VALUES) { ndr->flags |= LIBNDR_PRINT_SET_VALUES; } if (flags & NDR_IN) { ndr_print_struct(ndr, "in", "ResolveOxid"); ndr->depth++; ndr_print_hyper(ndr, "pOxid", r->in.pOxid); ndr_print_uint16(ndr, "cRequestedProtseqs", r->in.cRequestedProtseqs); ndr->print(ndr, "%s: ARRAY(%d)", "arRequestedProtseqs", (int)r->in.cRequestedProtseqs); ndr->depth++; for (cntr_arRequestedProtseqs_0 = 0; cntr_arRequestedProtseqs_0 < (r->in.cRequestedProtseqs); cntr_arRequestedProtseqs_0++) { ndr_print_uint16(ndr, "arRequestedProtseqs", r->in.arRequestedProtseqs[cntr_arRequestedProtseqs_0]); } ndr->depth--; ndr->depth--; } if (flags & NDR_OUT) { ndr_print_struct(ndr, "out", "ResolveOxid"); ndr->depth++; ndr_print_ptr(ndr, "ppdsaOxidBindings", r->out.ppdsaOxidBindings); ndr->depth++; ndr_print_ptr(ndr, "ppdsaOxidBindings", *r->out.ppdsaOxidBindings); ndr->depth++; if (*r->out.ppdsaOxidBindings) { ndr_print_DUALSTRINGARRAY(ndr, "ppdsaOxidBindings", *r->out.ppdsaOxidBindings); } ndr->depth--; ndr->depth--; ndr_print_ptr(ndr, "pipidRemUnknown", r->out.pipidRemUnknown); ndr->depth++; ndr_print_GUID(ndr, "pipidRemUnknown", r->out.pipidRemUnknown); ndr->depth--; ndr_print_ptr(ndr, "pAuthnHint", r->out.pAuthnHint); ndr->depth++; ndr_print_uint32(ndr, "pAuthnHint", *r->out.pAuthnHint); ndr->depth--; ndr_print_WERROR(ndr, "result", r->out.result); ndr->depth--; } ndr->depth--; } static enum ndr_err_code ndr_push_SimplePing(struct ndr_push *ndr, int flags, const struct SimplePing *r) { NDR_PUSH_CHECK_FN_FLAGS(ndr, flags); if (flags & NDR_IN) { if (r->in.SetId == NULL) { return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); } NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, *r->in.SetId)); } if (flags & NDR_OUT) { NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result)); } return NDR_ERR_SUCCESS; } static enum ndr_err_code ndr_pull_SimplePing(struct ndr_pull *ndr, int flags, struct SimplePing *r) { TALLOC_CTX *_mem_save_SetId_0 = NULL; NDR_PULL_CHECK_FN_FLAGS(ndr, flags); if (flags & NDR_IN) { if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) { NDR_PULL_ALLOC(ndr, r->in.SetId); } _mem_save_SetId_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->in.SetId, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, r->in.SetId)); NDR_PULL_SET_MEM_CTX(ndr, _mem_save_SetId_0, LIBNDR_FLAG_REF_ALLOC); } if (flags & NDR_OUT) { #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION if (r->in.SetId == NULL) { NDR_PULL_ALLOC(ndr, r->in.SetId); NDR_ZERO_STRUCTP(r->in.SetId); } #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */ NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result)); } return NDR_ERR_SUCCESS; } _PUBLIC_ void ndr_print_SimplePing(struct ndr_print *ndr, const char *name, int flags, const struct SimplePing *r) { ndr_print_struct(ndr, name, "SimplePing"); if (r == NULL) { ndr_print_null(ndr); return; } ndr->depth++; if (flags & NDR_SET_VALUES) { ndr->flags |= LIBNDR_PRINT_SET_VALUES; } if (flags & NDR_IN) { ndr_print_struct(ndr, "in", "SimplePing"); ndr->depth++; ndr_print_ptr(ndr, "SetId", r->in.SetId); ndr->depth++; ndr_print_hyper(ndr, "SetId", *r->in.SetId); ndr->depth--; ndr->depth--; } if (flags & NDR_OUT) { ndr_print_struct(ndr, "out", "SimplePing"); ndr->depth++; ndr_print_WERROR(ndr, "result", r->out.result); ndr->depth--; } ndr->depth--; } static enum ndr_err_code ndr_push_ComplexPing(struct ndr_push *ndr, int flags, const struct ComplexPing *r) { uint32_t cntr_AddToSet_0; uint32_t cntr_DelFromSet_0; NDR_PUSH_CHECK_FN_FLAGS(ndr, flags); if (flags & NDR_IN) { if (r->in.SetId == NULL) { return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); } NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, *r->in.SetId)); NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.SequenceNum)); NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.cAddToSet)); NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.cDelFromSet)); NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.cAddToSet)); for (cntr_AddToSet_0 = 0; cntr_AddToSet_0 < (r->in.cAddToSet); cntr_AddToSet_0++) { NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.AddToSet[cntr_AddToSet_0])); } NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.cDelFromSet)); for (cntr_DelFromSet_0 = 0; cntr_DelFromSet_0 < (r->in.cDelFromSet); cntr_DelFromSet_0++) { NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->in.DelFromSet[cntr_DelFromSet_0])); } } if (flags & NDR_OUT) { if (r->out.SetId == NULL) { return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); } if (r->out.PingBackoffFactor == NULL) { return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); } NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, *r->out.SetId)); NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, *r->out.PingBackoffFactor)); NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result)); } return NDR_ERR_SUCCESS; } static enum ndr_err_code ndr_pull_ComplexPing(struct ndr_pull *ndr, int flags, struct ComplexPing *r) { uint32_t size_AddToSet_0 = 0; uint32_t cntr_AddToSet_0; uint32_t size_DelFromSet_0 = 0; uint32_t cntr_DelFromSet_0; TALLOC_CTX *_mem_save_SetId_0 = NULL; TALLOC_CTX *_mem_save_AddToSet_0 = NULL; TALLOC_CTX *_mem_save_DelFromSet_0 = NULL; TALLOC_CTX *_mem_save_PingBackoffFactor_0 = NULL; NDR_PULL_CHECK_FN_FLAGS(ndr, flags); if (flags & NDR_IN) { NDR_ZERO_STRUCT(r->out); if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) { NDR_PULL_ALLOC(ndr, r->in.SetId); } _mem_save_SetId_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->in.SetId, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, r->in.SetId)); NDR_PULL_SET_MEM_CTX(ndr, _mem_save_SetId_0, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.SequenceNum)); NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.cAddToSet)); NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.cDelFromSet)); NDR_CHECK(ndr_pull_array_size(ndr, &r->in.AddToSet)); size_AddToSet_0 = ndr_get_array_size(ndr, &r->in.AddToSet); NDR_PULL_ALLOC_N(ndr, r->in.AddToSet, size_AddToSet_0); _mem_save_AddToSet_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->in.AddToSet, 0); for (cntr_AddToSet_0 = 0; cntr_AddToSet_0 < (size_AddToSet_0); cntr_AddToSet_0++) { NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.AddToSet[cntr_AddToSet_0])); } NDR_PULL_SET_MEM_CTX(ndr, _mem_save_AddToSet_0, 0); NDR_CHECK(ndr_pull_array_size(ndr, &r->in.DelFromSet)); size_DelFromSet_0 = ndr_get_array_size(ndr, &r->in.DelFromSet); NDR_PULL_ALLOC_N(ndr, r->in.DelFromSet, size_DelFromSet_0); _mem_save_DelFromSet_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->in.DelFromSet, 0); for (cntr_DelFromSet_0 = 0; cntr_DelFromSet_0 < (size_DelFromSet_0); cntr_DelFromSet_0++) { NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->in.DelFromSet[cntr_DelFromSet_0])); } NDR_PULL_SET_MEM_CTX(ndr, _mem_save_DelFromSet_0, 0); NDR_PULL_ALLOC(ndr, r->out.SetId); *r->out.SetId = *r->in.SetId; NDR_PULL_ALLOC(ndr, r->out.PingBackoffFactor); NDR_ZERO_STRUCTP(r->out.PingBackoffFactor); if (r->in.AddToSet) { NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.AddToSet, r->in.cAddToSet)); } if (r->in.DelFromSet) { NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.DelFromSet, r->in.cDelFromSet)); } } if (flags & NDR_OUT) { #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION if (r->in.SetId == NULL) { NDR_PULL_ALLOC(ndr, r->in.SetId); NDR_ZERO_STRUCTP(r->in.SetId); } #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) { NDR_PULL_ALLOC(ndr, r->out.SetId); } _mem_save_SetId_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->out.SetId, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, r->out.SetId)); NDR_PULL_SET_MEM_CTX(ndr, _mem_save_SetId_0, LIBNDR_FLAG_REF_ALLOC); if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) { NDR_PULL_ALLOC(ndr, r->out.PingBackoffFactor); } _mem_save_PingBackoffFactor_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->out.PingBackoffFactor, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, r->out.PingBackoffFactor)); NDR_PULL_SET_MEM_CTX(ndr, _mem_save_PingBackoffFactor_0, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result)); } return NDR_ERR_SUCCESS; } _PUBLIC_ void ndr_print_ComplexPing(struct ndr_print *ndr, const char *name, int flags, const struct ComplexPing *r) { uint32_t cntr_AddToSet_0; uint32_t cntr_DelFromSet_0; ndr_print_struct(ndr, name, "ComplexPing"); if (r == NULL) { ndr_print_null(ndr); return; } ndr->depth++; if (flags & NDR_SET_VALUES) { ndr->flags |= LIBNDR_PRINT_SET_VALUES; } if (flags & NDR_IN) { ndr_print_struct(ndr, "in", "ComplexPing"); ndr->depth++; ndr_print_ptr(ndr, "SetId", r->in.SetId); ndr->depth++; ndr_print_hyper(ndr, "SetId", *r->in.SetId); ndr->depth--; ndr_print_uint16(ndr, "SequenceNum", r->in.SequenceNum); ndr_print_uint16(ndr, "cAddToSet", r->in.cAddToSet); ndr_print_uint16(ndr, "cDelFromSet", r->in.cDelFromSet); ndr->print(ndr, "%s: ARRAY(%d)", "AddToSet", (int)r->in.cAddToSet); ndr->depth++; for (cntr_AddToSet_0 = 0; cntr_AddToSet_0 < (r->in.cAddToSet); cntr_AddToSet_0++) { ndr_print_GUID(ndr, "AddToSet", &r->in.AddToSet[cntr_AddToSet_0]); } ndr->depth--; ndr->print(ndr, "%s: ARRAY(%d)", "DelFromSet", (int)r->in.cDelFromSet); ndr->depth++; for (cntr_DelFromSet_0 = 0; cntr_DelFromSet_0 < (r->in.cDelFromSet); cntr_DelFromSet_0++) { ndr_print_GUID(ndr, "DelFromSet", &r->in.DelFromSet[cntr_DelFromSet_0]); } ndr->depth--; ndr->depth--; } if (flags & NDR_OUT) { ndr_print_struct(ndr, "out", "ComplexPing"); ndr->depth++; ndr_print_ptr(ndr, "SetId", r->out.SetId); ndr->depth++; ndr_print_hyper(ndr, "SetId", *r->out.SetId); ndr->depth--; ndr_print_ptr(ndr, "PingBackoffFactor", r->out.PingBackoffFactor); ndr->depth++; ndr_print_uint16(ndr, "PingBackoffFactor", *r->out.PingBackoffFactor); ndr->depth--; ndr_print_WERROR(ndr, "result", r->out.result); ndr->depth--; } ndr->depth--; } static enum ndr_err_code ndr_push_ServerAlive(struct ndr_push *ndr, int flags, const struct ServerAlive *r) { NDR_PUSH_CHECK_FN_FLAGS(ndr, flags); if (flags & NDR_IN) { } if (flags & NDR_OUT) { NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result)); } return NDR_ERR_SUCCESS; } static enum ndr_err_code ndr_pull_ServerAlive(struct ndr_pull *ndr, int flags, struct ServerAlive *r) { NDR_PULL_CHECK_FN_FLAGS(ndr, flags); if (flags & NDR_IN) { } if (flags & NDR_OUT) { #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */ NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result)); } return NDR_ERR_SUCCESS; } _PUBLIC_ void ndr_print_ServerAlive(struct ndr_print *ndr, const char *name, int flags, const struct ServerAlive *r) { ndr_print_struct(ndr, name, "ServerAlive"); if (r == NULL) { ndr_print_null(ndr); return; } ndr->depth++; if (flags & NDR_SET_VALUES) { ndr->flags |= LIBNDR_PRINT_SET_VALUES; } if (flags & NDR_IN) { ndr_print_struct(ndr, "in", "ServerAlive"); ndr->depth++; ndr->depth--; } if (flags & NDR_OUT) { ndr_print_struct(ndr, "out", "ServerAlive"); ndr->depth++; ndr_print_WERROR(ndr, "result", r->out.result); ndr->depth--; } ndr->depth--; } static enum ndr_err_code ndr_push_ResolveOxid2(struct ndr_push *ndr, int flags, const struct ResolveOxid2 *r) { uint32_t cntr_arRequestedProtseqs_0; NDR_PUSH_CHECK_FN_FLAGS(ndr, flags); if (flags & NDR_IN) { NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->in.pOxid)); NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.cRequestedProtseqs)); NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->in.cRequestedProtseqs)); for (cntr_arRequestedProtseqs_0 = 0; cntr_arRequestedProtseqs_0 < (r->in.cRequestedProtseqs); cntr_arRequestedProtseqs_0++) { NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.arRequestedProtseqs[cntr_arRequestedProtseqs_0])); } } if (flags & NDR_OUT) { if (r->out.pdsaOxidBindings == NULL) { return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); } if (r->out.ipidRemUnknown == NULL) { return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); } if (r->out.AuthnHint == NULL) { return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); } if (r->out.ComVersion == NULL) { return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); } NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.pdsaOxidBindings)); if (*r->out.pdsaOxidBindings) { NDR_CHECK(ndr_push_DUALSTRINGARRAY(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.pdsaOxidBindings)); } NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, r->out.ipidRemUnknown)); NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.AuthnHint)); NDR_CHECK(ndr_push_COMVERSION(ndr, NDR_SCALARS, r->out.ComVersion)); NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result)); } return NDR_ERR_SUCCESS; } static enum ndr_err_code ndr_pull_ResolveOxid2(struct ndr_pull *ndr, int flags, struct ResolveOxid2 *r) { uint32_t size_arRequestedProtseqs_0 = 0; uint32_t cntr_arRequestedProtseqs_0; uint32_t _ptr_pdsaOxidBindings; TALLOC_CTX *_mem_save_arRequestedProtseqs_0 = NULL; TALLOC_CTX *_mem_save_pdsaOxidBindings_0 = NULL; TALLOC_CTX *_mem_save_pdsaOxidBindings_1 = NULL; TALLOC_CTX *_mem_save_ipidRemUnknown_0 = NULL; TALLOC_CTX *_mem_save_AuthnHint_0 = NULL; TALLOC_CTX *_mem_save_ComVersion_0 = NULL; NDR_PULL_CHECK_FN_FLAGS(ndr, flags); if (flags & NDR_IN) { NDR_ZERO_STRUCT(r->out); NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->in.pOxid)); NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.cRequestedProtseqs)); NDR_CHECK(ndr_pull_array_size(ndr, &r->in.arRequestedProtseqs)); size_arRequestedProtseqs_0 = ndr_get_array_size(ndr, &r->in.arRequestedProtseqs); NDR_PULL_ALLOC_N(ndr, r->in.arRequestedProtseqs, size_arRequestedProtseqs_0); _mem_save_arRequestedProtseqs_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->in.arRequestedProtseqs, 0); for (cntr_arRequestedProtseqs_0 = 0; cntr_arRequestedProtseqs_0 < (size_arRequestedProtseqs_0); cntr_arRequestedProtseqs_0++) { NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.arRequestedProtseqs[cntr_arRequestedProtseqs_0])); } NDR_PULL_SET_MEM_CTX(ndr, _mem_save_arRequestedProtseqs_0, 0); NDR_PULL_ALLOC(ndr, r->out.pdsaOxidBindings); NDR_ZERO_STRUCTP(r->out.pdsaOxidBindings); NDR_PULL_ALLOC(ndr, r->out.ipidRemUnknown); NDR_ZERO_STRUCTP(r->out.ipidRemUnknown); NDR_PULL_ALLOC(ndr, r->out.AuthnHint); NDR_ZERO_STRUCTP(r->out.AuthnHint); NDR_PULL_ALLOC(ndr, r->out.ComVersion); NDR_ZERO_STRUCTP(r->out.ComVersion); if (r->in.arRequestedProtseqs) { NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.arRequestedProtseqs, r->in.cRequestedProtseqs)); } } if (flags & NDR_OUT) { #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) { NDR_PULL_ALLOC(ndr, r->out.pdsaOxidBindings); } _mem_save_pdsaOxidBindings_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->out.pdsaOxidBindings, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_pdsaOxidBindings)); if (_ptr_pdsaOxidBindings) { NDR_PULL_ALLOC(ndr, *r->out.pdsaOxidBindings); } else { *r->out.pdsaOxidBindings = NULL; } if (*r->out.pdsaOxidBindings) { _mem_save_pdsaOxidBindings_1 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, *r->out.pdsaOxidBindings, 0); NDR_CHECK(ndr_pull_DUALSTRINGARRAY(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.pdsaOxidBindings)); NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pdsaOxidBindings_1, 0); } NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pdsaOxidBindings_0, LIBNDR_FLAG_REF_ALLOC); if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) { NDR_PULL_ALLOC(ndr, r->out.ipidRemUnknown); } _mem_save_ipidRemUnknown_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->out.ipidRemUnknown, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, r->out.ipidRemUnknown)); NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ipidRemUnknown_0, LIBNDR_FLAG_REF_ALLOC); if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) { NDR_PULL_ALLOC(ndr, r->out.AuthnHint); } _mem_save_AuthnHint_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->out.AuthnHint, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.AuthnHint)); NDR_PULL_SET_MEM_CTX(ndr, _mem_save_AuthnHint_0, LIBNDR_FLAG_REF_ALLOC); if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) { NDR_PULL_ALLOC(ndr, r->out.ComVersion); } _mem_save_ComVersion_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->out.ComVersion, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_COMVERSION(ndr, NDR_SCALARS, r->out.ComVersion)); NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ComVersion_0, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result)); } return NDR_ERR_SUCCESS; } _PUBLIC_ void ndr_print_ResolveOxid2(struct ndr_print *ndr, const char *name, int flags, const struct ResolveOxid2 *r) { uint32_t cntr_arRequestedProtseqs_0; ndr_print_struct(ndr, name, "ResolveOxid2"); if (r == NULL) { ndr_print_null(ndr); return; } ndr->depth++; if (flags & NDR_SET_VALUES) { ndr->flags |= LIBNDR_PRINT_SET_VALUES; } if (flags & NDR_IN) { ndr_print_struct(ndr, "in", "ResolveOxid2"); ndr->depth++; ndr_print_hyper(ndr, "pOxid", r->in.pOxid); ndr_print_uint16(ndr, "cRequestedProtseqs", r->in.cRequestedProtseqs); ndr->print(ndr, "%s: ARRAY(%d)", "arRequestedProtseqs", (int)r->in.cRequestedProtseqs); ndr->depth++; for (cntr_arRequestedProtseqs_0 = 0; cntr_arRequestedProtseqs_0 < (r->in.cRequestedProtseqs); cntr_arRequestedProtseqs_0++) { ndr_print_uint16(ndr, "arRequestedProtseqs", r->in.arRequestedProtseqs[cntr_arRequestedProtseqs_0]); } ndr->depth--; ndr->depth--; } if (flags & NDR_OUT) { ndr_print_struct(ndr, "out", "ResolveOxid2"); ndr->depth++; ndr_print_ptr(ndr, "pdsaOxidBindings", r->out.pdsaOxidBindings); ndr->depth++; ndr_print_ptr(ndr, "pdsaOxidBindings", *r->out.pdsaOxidBindings); ndr->depth++; if (*r->out.pdsaOxidBindings) { ndr_print_DUALSTRINGARRAY(ndr, "pdsaOxidBindings", *r->out.pdsaOxidBindings); } ndr->depth--; ndr->depth--; ndr_print_ptr(ndr, "ipidRemUnknown", r->out.ipidRemUnknown); ndr->depth++; ndr_print_GUID(ndr, "ipidRemUnknown", r->out.ipidRemUnknown); ndr->depth--; ndr_print_ptr(ndr, "AuthnHint", r->out.AuthnHint); ndr->depth++; ndr_print_uint32(ndr, "AuthnHint", *r->out.AuthnHint); ndr->depth--; ndr_print_ptr(ndr, "ComVersion", r->out.ComVersion); ndr->depth++; ndr_print_COMVERSION(ndr, "ComVersion", r->out.ComVersion); ndr->depth--; ndr_print_WERROR(ndr, "result", r->out.result); ndr->depth--; } ndr->depth--; } static enum ndr_err_code ndr_push_ServerAlive2(struct ndr_push *ndr, int flags, const struct ServerAlive2 *r) { NDR_PUSH_CHECK_FN_FLAGS(ndr, flags); if (flags & NDR_IN) { } if (flags & NDR_OUT) { if (r->out.info == NULL) { return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); } if (r->out.dualstring == NULL) { return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); } if (r->out.pReserved == NULL) { return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer"); } NDR_CHECK(ndr_push_COMINFO(ndr, NDR_SCALARS, r->out.info)); NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.dualstring)); if (*r->out.dualstring) { NDR_CHECK(ndr_push_DUALSTRINGARRAY(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.dualstring)); } NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, *r->out.pReserved)); NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result)); } return NDR_ERR_SUCCESS; } static enum ndr_err_code ndr_pull_ServerAlive2(struct ndr_pull *ndr, int flags, struct ServerAlive2 *r) { uint32_t _ptr_dualstring; TALLOC_CTX *_mem_save_info_0 = NULL; TALLOC_CTX *_mem_save_dualstring_0 = NULL; TALLOC_CTX *_mem_save_dualstring_1 = NULL; TALLOC_CTX *_mem_save_pReserved_0 = NULL; NDR_PULL_CHECK_FN_FLAGS(ndr, flags); if (flags & NDR_IN) { NDR_ZERO_STRUCT(r->out); NDR_PULL_ALLOC(ndr, r->out.info); NDR_ZERO_STRUCTP(r->out.info); NDR_PULL_ALLOC(ndr, r->out.dualstring); NDR_ZERO_STRUCTP(r->out.dualstring); NDR_PULL_ALLOC(ndr, r->out.pReserved); NDR_ZERO_STRUCTP(r->out.pReserved); } if (flags & NDR_OUT) { #ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION #endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */ if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) { NDR_PULL_ALLOC(ndr, r->out.info); } _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_COMINFO(ndr, NDR_SCALARS, r->out.info)); NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC); if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) { NDR_PULL_ALLOC(ndr, r->out.dualstring); } _mem_save_dualstring_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->out.dualstring, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dualstring)); if (_ptr_dualstring) { NDR_PULL_ALLOC(ndr, *r->out.dualstring); } else { *r->out.dualstring = NULL; } if (*r->out.dualstring) { _mem_save_dualstring_1 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, *r->out.dualstring, 0); NDR_CHECK(ndr_pull_DUALSTRINGARRAY(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.dualstring)); NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dualstring_1, 0); } NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dualstring_0, LIBNDR_FLAG_REF_ALLOC); if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) { NDR_PULL_ALLOC(ndr, r->out.pReserved); } _mem_save_pReserved_0 = NDR_PULL_GET_MEM_CTX(ndr); NDR_PULL_SET_MEM_CTX(ndr, r->out.pReserved, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, r->out.pReserved)); NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pReserved_0, LIBNDR_FLAG_REF_ALLOC); NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result)); } return NDR_ERR_SUCCESS; } _PUBLIC_ void ndr_print_ServerAlive2(struct ndr_print *ndr, const char *name, int flags, const struct ServerAlive2 *r) { ndr_print_struct(ndr, name, "ServerAlive2"); if (r == NULL) { ndr_print_null(ndr); return; } ndr->depth++; if (flags & NDR_SET_VALUES) { ndr->flags |= LIBNDR_PRINT_SET_VALUES; } if (flags & NDR_IN) { ndr_print_struct(ndr, "in", "ServerAlive2"); ndr->depth++; ndr->depth--; } if (flags & NDR_OUT) { ndr_print_struct(ndr, "out", "ServerAlive2"); ndr->depth++; ndr_print_ptr(ndr, "info", r->out.info); ndr->depth++; ndr_print_COMINFO(ndr, "info", r->out.info); ndr->depth--; ndr_print_ptr(ndr, "dualstring", r->out.dualstring); ndr->depth++; ndr_print_ptr(ndr, "dualstring", *r->out.dualstring); ndr->depth++; if (*r->out.dualstring) { ndr_print_DUALSTRINGARRAY(ndr, "dualstring", *r->out.dualstring); } ndr->depth--; ndr->depth--; ndr_print_ptr(ndr, "pReserved", r->out.pReserved); ndr->depth++; ndr_print_uint8(ndr, "pReserved", *r->out.pReserved); ndr->depth--; ndr_print_WERROR(ndr, "result", r->out.result); ndr->depth--; } ndr->depth--; } #ifndef SKIP_NDR_TABLE_IOXIDResolver static const struct ndr_interface_public_struct IOXIDResolver_public_structs[] = { { .name = NULL } }; static const struct ndr_interface_call IOXIDResolver_calls[] = { { "ResolveOxid", sizeof(struct ResolveOxid), (ndr_push_flags_fn_t) ndr_push_ResolveOxid, (ndr_pull_flags_fn_t) ndr_pull_ResolveOxid, (ndr_print_function_t) ndr_print_ResolveOxid, { 0, NULL }, { 0, NULL }, }, { "SimplePing", sizeof(struct SimplePing), (ndr_push_flags_fn_t) ndr_push_SimplePing, (ndr_pull_flags_fn_t) ndr_pull_SimplePing, (ndr_print_function_t) ndr_print_SimplePing, { 0, NULL }, { 0, NULL }, }, { "ComplexPing", sizeof(struct ComplexPing), (ndr_push_flags_fn_t) ndr_push_ComplexPing, (ndr_pull_flags_fn_t) ndr_pull_ComplexPing, (ndr_print_function_t) ndr_print_ComplexPing, { 0, NULL }, { 0, NULL }, }, { "ServerAlive", sizeof(struct ServerAlive), (ndr_push_flags_fn_t) ndr_push_ServerAlive, (ndr_pull_flags_fn_t) ndr_pull_ServerAlive, (ndr_print_function_t) ndr_print_ServerAlive, { 0, NULL }, { 0, NULL }, }, { "ResolveOxid2", sizeof(struct ResolveOxid2), (ndr_push_flags_fn_t) ndr_push_ResolveOxid2, (ndr_pull_flags_fn_t) ndr_pull_ResolveOxid2, (ndr_print_function_t) ndr_print_ResolveOxid2, { 0, NULL }, { 0, NULL }, }, { "ServerAlive2", sizeof(struct ServerAlive2), (ndr_push_flags_fn_t) ndr_push_ServerAlive2, (ndr_pull_flags_fn_t) ndr_pull_ServerAlive2, (ndr_print_function_t) ndr_print_ServerAlive2, { 0, NULL }, { 0, NULL }, }, { .name = NULL } }; static const char * const IOXIDResolver_endpoint_strings[] = { "ncacn_np:[\\pipe\\epmapper]", "ncacn_ip_tcp:[135]", "ncalrpc:", }; static const struct ndr_interface_string_array IOXIDResolver_endpoints = { .count = 3, .names = IOXIDResolver_endpoint_strings }; static const char * const IOXIDResolver_authservice_strings[] = { "host", }; static const struct ndr_interface_string_array IOXIDResolver_authservices = { .count = 1, .names = IOXIDResolver_authservice_strings }; const struct ndr_interface_table ndr_table_IOXIDResolver = { .name = "IOXIDResolver", .syntax_id = { {0x99fcfec4,0x5260,0x101b,{0xbb,0xcb},{0x00,0xaa,0x00,0x21,0x34,0x7a}}, NDR_IOXIDRESOLVER_VERSION }, .helpstring = NDR_IOXIDRESOLVER_HELPSTRING, .num_calls = 6, .calls = IOXIDResolver_calls, .num_public_structs = 0, .public_structs = IOXIDResolver_public_structs, .endpoints = &IOXIDResolver_endpoints, .authservices = &IOXIDResolver_authservices }; #endif /* SKIP_NDR_TABLE_IOXIDResolver */