LCOV - code coverage report
Current view: top level - bin/default/source3/librpc/gen_ndr - ndr_rpc_host.c (source / functions) Hit Total Coverage
Test: coverage report for v4-17-test 1498b464 Lines: 77 113 68.1 %
Date: 2024-06-13 04:01:37 Functions: 4 8 50.0 %

          Line data    Source code
       1             : /* parser auto-generated by pidl */
       2             : 
       3             : #include "includes.h"
       4             : #include "bin/default/source3/librpc/gen_ndr/ndr_rpc_host.h"
       5             : 
       6             : #include "librpc/gen_ndr/ndr_named_pipe_auth.h"
       7             : #include "librpc/gen_ndr/ndr_dcerpc.h"
       8         789 : _PUBLIC_ enum ndr_err_code ndr_push_rpc_host_client(struct ndr_push *ndr, int ndr_flags, const struct rpc_host_client *r)
       9             : {
      10         789 :         NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
      11         789 :         if (ndr_flags & NDR_SCALARS) {
      12         789 :                 NDR_CHECK(ndr_push_align(ndr, 5));
      13         789 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->binding));
      14         789 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->npa_info7));
      15         789 :                 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->bind_packet));
      16         789 :                 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
      17             :         }
      18         789 :         if (ndr_flags & NDR_BUFFERS) {
      19         789 :                 if (r->binding) {
      20         789 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->binding, CH_UTF8)));
      21         789 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
      22         789 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->binding, CH_UTF8)));
      23         789 :                         NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->binding, ndr_charset_length(r->binding, CH_UTF8), sizeof(uint8_t), CH_UTF8));
      24             :                 }
      25         789 :                 if (r->npa_info7) {
      26         789 :                         NDR_CHECK(ndr_push_named_pipe_auth_req_info7(ndr, NDR_SCALARS|NDR_BUFFERS, r->npa_info7));
      27             :                 }
      28             :         }
      29         789 :         return NDR_ERR_SUCCESS;
      30             : }
      31             : 
      32         758 : _PUBLIC_ enum ndr_err_code ndr_pull_rpc_host_client(struct ndr_pull *ndr, int ndr_flags, struct rpc_host_client *r)
      33             : {
      34             :         uint32_t _ptr_binding;
      35         758 :         uint32_t size_binding_1 = 0;
      36         758 :         uint32_t length_binding_1 = 0;
      37         758 :         TALLOC_CTX *_mem_save_binding_0 = NULL;
      38             :         uint32_t _ptr_npa_info7;
      39         758 :         TALLOC_CTX *_mem_save_npa_info7_0 = NULL;
      40         758 :         NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
      41         758 :         if (ndr_flags & NDR_SCALARS) {
      42         758 :                 NDR_CHECK(ndr_pull_align(ndr, 5));
      43         758 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_binding));
      44         758 :                 if (_ptr_binding) {
      45         758 :                         NDR_PULL_ALLOC(ndr, r->binding);
      46             :                 } else {
      47           0 :                         r->binding = NULL;
      48             :                 }
      49         758 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_npa_info7));
      50         758 :                 if (_ptr_npa_info7) {
      51         758 :                         NDR_PULL_ALLOC(ndr, r->npa_info7);
      52             :                 } else {
      53           0 :                         r->npa_info7 = NULL;
      54             :                 }
      55         758 :                 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->bind_packet));
      56         758 :                 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
      57             :         }
      58         758 :         if (ndr_flags & NDR_BUFFERS) {
      59         758 :                 if (r->binding) {
      60         758 :                         _mem_save_binding_0 = NDR_PULL_GET_MEM_CTX(ndr);
      61         758 :                         NDR_PULL_SET_MEM_CTX(ndr, r->binding, 0);
      62         758 :                         NDR_CHECK(ndr_pull_array_size(ndr, &r->binding));
      63         758 :                         NDR_CHECK(ndr_pull_array_length(ndr, &r->binding));
      64         758 :                         NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->binding, &size_binding_1));
      65         758 :                         NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->binding, &length_binding_1));
      66         758 :                         if (length_binding_1 > size_binding_1) {
      67           0 :                                 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_binding_1, length_binding_1);
      68             :                         }
      69         758 :                         NDR_CHECK(ndr_check_string_terminator(ndr, length_binding_1, sizeof(uint8_t)));
      70         758 :                         NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->binding, length_binding_1, sizeof(uint8_t), CH_UTF8));
      71         758 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_binding_0, 0);
      72             :                 }
      73         758 :                 if (r->npa_info7) {
      74         758 :                         _mem_save_npa_info7_0 = NDR_PULL_GET_MEM_CTX(ndr);
      75         758 :                         NDR_PULL_SET_MEM_CTX(ndr, r->npa_info7, 0);
      76         758 :                         NDR_CHECK(ndr_pull_named_pipe_auth_req_info7(ndr, NDR_SCALARS|NDR_BUFFERS, r->npa_info7));
      77         758 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_npa_info7_0, 0);
      78             :                 }
      79             :         }
      80         758 :         return NDR_ERR_SUCCESS;
      81             : }
      82             : 
      83           0 : static void ndr_print_flags_rpc_host_client(struct ndr_print *ndr, const char *name, int unused, const struct rpc_host_client *r)
      84             : {
      85           0 :         ndr_print_rpc_host_client(ndr, name, r);
      86           0 : }
      87             : 
      88           0 : _PUBLIC_ void ndr_print_rpc_host_client(struct ndr_print *ndr, const char *name, const struct rpc_host_client *r)
      89             : {
      90           0 :         ndr_print_struct(ndr, name, "rpc_host_client");
      91           0 :         if (r == NULL) { ndr_print_null(ndr); return; }
      92           0 :         ndr->depth++;
      93           0 :         ndr_print_ptr(ndr, "binding", r->binding);
      94           0 :         ndr->depth++;
      95           0 :         if (r->binding) {
      96           0 :                 ndr_print_string(ndr, "binding", r->binding);
      97             :         }
      98           0 :         ndr->depth--;
      99           0 :         ndr_print_ptr(ndr, "npa_info7", r->npa_info7);
     100           0 :         ndr->depth++;
     101           0 :         if (r->npa_info7) {
     102           0 :                 ndr_print_named_pipe_auth_req_info7(ndr, "npa_info7", r->npa_info7);
     103             :         }
     104           0 :         ndr->depth--;
     105           0 :         ndr_print_DATA_BLOB(ndr, "bind_packet", r->bind_packet);
     106           0 :         ndr->depth--;
     107             : }
     108             : 
     109         881 : _PUBLIC_ enum ndr_err_code ndr_push_rpc_worker_status(struct ndr_push *ndr, int ndr_flags, const struct rpc_worker_status *r)
     110             : {
     111             :         {
     112         881 :                 uint32_t _flags_save_STRUCT = ndr->flags;
     113         881 :                 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
     114         881 :                 NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
     115         881 :                 if (ndr_flags & NDR_SCALARS) {
     116         881 :                         NDR_CHECK(ndr_push_align(ndr, 4));
     117         881 :                         NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->server_index));
     118         881 :                         NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->worker_index));
     119         881 :                         NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_clients));
     120         881 :                         NDR_CHECK(ndr_push_trailer_align(ndr, 4));
     121             :                 }
     122         881 :                 if (ndr_flags & NDR_BUFFERS) {
     123             :                 }
     124         881 :                 ndr->flags = _flags_save_STRUCT;
     125             :         }
     126         881 :         return NDR_ERR_SUCCESS;
     127             : }
     128             : 
     129         926 : _PUBLIC_ enum ndr_err_code ndr_pull_rpc_worker_status(struct ndr_pull *ndr, int ndr_flags, struct rpc_worker_status *r)
     130             : {
     131             :         {
     132         926 :                 uint32_t _flags_save_STRUCT = ndr->flags;
     133         926 :                 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
     134         926 :                 NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
     135         926 :                 if (ndr_flags & NDR_SCALARS) {
     136         926 :                         NDR_CHECK(ndr_pull_align(ndr, 4));
     137         926 :                         NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->server_index));
     138         926 :                         NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->worker_index));
     139         926 :                         NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_clients));
     140         926 :                         NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
     141             :                 }
     142         926 :                 if (ndr_flags & NDR_BUFFERS) {
     143             :                 }
     144         926 :                 ndr->flags = _flags_save_STRUCT;
     145             :         }
     146         926 :         return NDR_ERR_SUCCESS;
     147             : }
     148             : 
     149           0 : static void ndr_print_flags_rpc_worker_status(struct ndr_print *ndr, const char *name, int unused, const struct rpc_worker_status *r)
     150             : {
     151           0 :         ndr_print_rpc_worker_status(ndr, name, r);
     152           0 : }
     153             : 
     154           0 : _PUBLIC_ void ndr_print_rpc_worker_status(struct ndr_print *ndr, const char *name, const struct rpc_worker_status *r)
     155             : {
     156           0 :         ndr_print_struct(ndr, name, "rpc_worker_status");
     157           0 :         if (r == NULL) { ndr_print_null(ndr); return; }
     158             :         {
     159           0 :                 uint32_t _flags_save_STRUCT = ndr->flags;
     160           0 :                 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_NOALIGN);
     161           0 :                 ndr->depth++;
     162           0 :                 ndr_print_uint8(ndr, "server_index", r->server_index);
     163           0 :                 ndr_print_uint32(ndr, "worker_index", r->worker_index);
     164           0 :                 ndr_print_uint32(ndr, "num_clients", r->num_clients);
     165           0 :                 ndr->depth--;
     166           0 :                 ndr->flags = _flags_save_STRUCT;
     167             :         }
     168             : }
     169             : 
     170             : #ifndef SKIP_NDR_TABLE_rpc_host_msg
     171             : static const struct ndr_interface_public_struct rpc_host_msg_public_structs[] = {
     172             :         {
     173             :                 .name = "rpc_host_client",
     174             :                 .struct_size = sizeof(struct rpc_host_client ),
     175             :                 .ndr_push = (ndr_push_flags_fn_t) ndr_push_rpc_host_client,
     176             :                 .ndr_pull = (ndr_pull_flags_fn_t) ndr_pull_rpc_host_client,
     177             :                 .ndr_print = (ndr_print_function_t) ndr_print_flags_rpc_host_client,
     178             :         },
     179             :         {
     180             :                 .name = "rpc_worker_status",
     181             :                 .struct_size = sizeof(struct rpc_worker_status ),
     182             :                 .ndr_push = (ndr_push_flags_fn_t) ndr_push_rpc_worker_status,
     183             :                 .ndr_pull = (ndr_pull_flags_fn_t) ndr_pull_rpc_worker_status,
     184             :                 .ndr_print = (ndr_print_function_t) ndr_print_flags_rpc_worker_status,
     185             :         },
     186             :         { .name = NULL }
     187             : };
     188             : 
     189             : static const struct ndr_interface_call rpc_host_msg_calls[] = {
     190             :         { .name = NULL }
     191             : };
     192             : 
     193             : static const char * const rpc_host_msg_endpoint_strings[] = {
     194             :         "ncacn_np:[\\pipe\\rpc_host_msg]", 
     195             : };
     196             : 
     197             : static const struct ndr_interface_string_array rpc_host_msg_endpoints = {
     198             :         .count  = 1,
     199             :         .names  = rpc_host_msg_endpoint_strings
     200             : };
     201             : 
     202             : static const char * const rpc_host_msg_authservice_strings[] = {
     203             :         "host", 
     204             : };
     205             : 
     206             : static const struct ndr_interface_string_array rpc_host_msg_authservices = {
     207             :         .count  = 1,
     208             :         .names  = rpc_host_msg_authservice_strings
     209             : };
     210             : 
     211             : 
     212             : const struct ndr_interface_table ndr_table_rpc_host_msg = {
     213             :         .name           = "rpc_host_msg",
     214             :         .num_calls      = 0,
     215             :         .calls          = rpc_host_msg_calls,
     216             :         .num_public_structs     = 2,
     217             :         .public_structs         = rpc_host_msg_public_structs,
     218             :         .endpoints      = &rpc_host_msg_endpoints,
     219             :         .authservices   = &rpc_host_msg_authservices
     220             : };
     221             : 
     222             : #endif /* SKIP_NDR_TABLE_rpc_host_msg */

Generated by: LCOV version 1.13