LCOV - code coverage report
Current view: top level - bin/default/librpc/gen_ndr - ndr_auth.c (source / functions) Hit Total Coverage
Test: coverage report for v4-17-test 1498b464 Lines: 449 738 60.8 %
Date: 2024-06-13 04:01:37 Functions: 10 30 33.3 %

          Line data    Source code
       1             : /* parser auto-generated by pidl */
       2             : 
       3             : #include "includes.h"
       4             : #include "bin/default/librpc/gen_ndr/ndr_auth.h"
       5             : 
       6             : #include "librpc/gen_ndr/ndr_misc.h"
       7             : #include "librpc/gen_ndr/ndr_security.h"
       8             : #include "librpc/gen_ndr/ndr_lsa.h"
       9             : #include "librpc/gen_ndr/ndr_krb5pac.h"
      10           0 : _PUBLIC_ enum ndr_err_code ndr_push_auth_method(struct ndr_push *ndr, int ndr_flags, enum auth_method r)
      11             : {
      12           0 :         NDR_CHECK(ndr_push_enum_uint1632(ndr, NDR_SCALARS, r));
      13           0 :         return NDR_ERR_SUCCESS;
      14             : }
      15             : 
      16           0 : _PUBLIC_ enum ndr_err_code ndr_pull_auth_method(struct ndr_pull *ndr, int ndr_flags, enum auth_method *r)
      17             : {
      18             :         uint16_t v;
      19           0 :         NDR_CHECK(ndr_pull_enum_uint1632(ndr, NDR_SCALARS, &v));
      20           0 :         *r = v;
      21           0 :         return NDR_ERR_SUCCESS;
      22             : }
      23             : 
      24           0 : _PUBLIC_ void ndr_print_auth_method(struct ndr_print *ndr, const char *name, enum auth_method r)
      25             : {
      26           0 :         const char *val = NULL;
      27             : 
      28           0 :         switch (r) {
      29           0 :                 case SEC_AUTH_METHOD_UNAUTHENTICATED: val = "SEC_AUTH_METHOD_UNAUTHENTICATED"; break;
      30           0 :                 case SEC_AUTH_METHOD_NTLM: val = "SEC_AUTH_METHOD_NTLM"; break;
      31           0 :                 case SEC_AUTH_METHOD_KERBEROS: val = "SEC_AUTH_METHOD_KERBEROS"; break;
      32             :         }
      33           0 :         ndr_print_enum(ndr, name, "ENUM", val, r);
      34           0 : }
      35             : 
      36       57725 : _PUBLIC_ enum ndr_err_code ndr_push_auth_user_info(struct ndr_push *ndr, int ndr_flags, const struct auth_user_info *r)
      37             : {
      38       57725 :         NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
      39       57725 :         if (ndr_flags & NDR_SCALARS) {
      40       57725 :                 NDR_CHECK(ndr_push_align(ndr, 5));
      41       57725 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->account_name));
      42       57725 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->user_principal_name));
      43       57725 :                 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->user_principal_constructed));
      44       57725 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain_name));
      45       57725 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->dns_domain_name));
      46       57725 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->full_name));
      47       57725 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->logon_script));
      48       57725 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->profile_path));
      49       57725 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->home_directory));
      50       57725 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->home_drive));
      51       57725 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->logon_server));
      52       57725 :                 NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->last_logon));
      53       57725 :                 NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->last_logoff));
      54       57725 :                 NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->acct_expiry));
      55       57725 :                 NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->last_password_change));
      56       57725 :                 NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->allow_password_change));
      57       57725 :                 NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->force_password_change));
      58       57725 :                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->logon_count));
      59       57725 :                 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->bad_password_count));
      60       57725 :                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->acct_flags));
      61       57725 :                 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->authenticated));
      62       57725 :                 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
      63             :         }
      64       57725 :         if (ndr_flags & NDR_BUFFERS) {
      65       57725 :                 if (r->account_name) {
      66       57725 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->account_name, CH_UTF8)));
      67       57725 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
      68       57725 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->account_name, CH_UTF8)));
      69       57725 :                         NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->account_name, ndr_charset_length(r->account_name, CH_UTF8), sizeof(uint8_t), CH_UTF8));
      70             :                 }
      71       57725 :                 if (r->user_principal_name) {
      72       35969 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->user_principal_name, CH_UTF8)));
      73       35969 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
      74       35969 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->user_principal_name, CH_UTF8)));
      75       35969 :                         NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->user_principal_name, ndr_charset_length(r->user_principal_name, CH_UTF8), sizeof(uint8_t), CH_UTF8));
      76             :                 }
      77       57725 :                 if (r->domain_name) {
      78       57725 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->domain_name, CH_UTF8)));
      79       57725 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
      80       57725 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->domain_name, CH_UTF8)));
      81       57725 :                         NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->domain_name, ndr_charset_length(r->domain_name, CH_UTF8), sizeof(uint8_t), CH_UTF8));
      82             :                 }
      83       57725 :                 if (r->dns_domain_name) {
      84       35969 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->dns_domain_name, CH_UTF8)));
      85       35969 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
      86       35969 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->dns_domain_name, CH_UTF8)));
      87       35969 :                         NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->dns_domain_name, ndr_charset_length(r->dns_domain_name, CH_UTF8), sizeof(uint8_t), CH_UTF8));
      88             :                 }
      89       57725 :                 if (r->full_name) {
      90       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->full_name, CH_UTF8)));
      91       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
      92       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->full_name, CH_UTF8)));
      93       57509 :                         NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->full_name, ndr_charset_length(r->full_name, CH_UTF8), sizeof(uint8_t), CH_UTF8));
      94             :                 }
      95       57725 :                 if (r->logon_script) {
      96       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->logon_script, CH_UTF8)));
      97       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
      98       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->logon_script, CH_UTF8)));
      99       57509 :                         NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->logon_script, ndr_charset_length(r->logon_script, CH_UTF8), sizeof(uint8_t), CH_UTF8));
     100             :                 }
     101       57725 :                 if (r->profile_path) {
     102       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->profile_path, CH_UTF8)));
     103       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
     104       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->profile_path, CH_UTF8)));
     105       57509 :                         NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->profile_path, ndr_charset_length(r->profile_path, CH_UTF8), sizeof(uint8_t), CH_UTF8));
     106             :                 }
     107       57725 :                 if (r->home_directory) {
     108       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->home_directory, CH_UTF8)));
     109       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
     110       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->home_directory, CH_UTF8)));
     111       57509 :                         NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->home_directory, ndr_charset_length(r->home_directory, CH_UTF8), sizeof(uint8_t), CH_UTF8));
     112             :                 }
     113       57725 :                 if (r->home_drive) {
     114       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->home_drive, CH_UTF8)));
     115       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
     116       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->home_drive, CH_UTF8)));
     117       57509 :                         NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->home_drive, ndr_charset_length(r->home_drive, CH_UTF8), sizeof(uint8_t), CH_UTF8));
     118             :                 }
     119       57725 :                 if (r->logon_server) {
     120       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->logon_server, CH_UTF8)));
     121       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
     122       57509 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->logon_server, CH_UTF8)));
     123       57509 :                         NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->logon_server, ndr_charset_length(r->logon_server, CH_UTF8), sizeof(uint8_t), CH_UTF8));
     124             :                 }
     125             :         }
     126       57725 :         return NDR_ERR_SUCCESS;
     127             : }
     128             : 
     129       43513 : _PUBLIC_ enum ndr_err_code ndr_pull_auth_user_info(struct ndr_pull *ndr, int ndr_flags, struct auth_user_info *r)
     130             : {
     131             :         uint32_t _ptr_account_name;
     132       43513 :         uint32_t size_account_name_1 = 0;
     133       43513 :         uint32_t length_account_name_1 = 0;
     134       43513 :         TALLOC_CTX *_mem_save_account_name_0 = NULL;
     135             :         uint32_t _ptr_user_principal_name;
     136       43513 :         uint32_t size_user_principal_name_1 = 0;
     137       43513 :         uint32_t length_user_principal_name_1 = 0;
     138       43513 :         TALLOC_CTX *_mem_save_user_principal_name_0 = NULL;
     139             :         uint32_t _ptr_domain_name;
     140       43513 :         uint32_t size_domain_name_1 = 0;
     141       43513 :         uint32_t length_domain_name_1 = 0;
     142       43513 :         TALLOC_CTX *_mem_save_domain_name_0 = NULL;
     143             :         uint32_t _ptr_dns_domain_name;
     144       43513 :         uint32_t size_dns_domain_name_1 = 0;
     145       43513 :         uint32_t length_dns_domain_name_1 = 0;
     146       43513 :         TALLOC_CTX *_mem_save_dns_domain_name_0 = NULL;
     147             :         uint32_t _ptr_full_name;
     148       43513 :         uint32_t size_full_name_1 = 0;
     149       43513 :         uint32_t length_full_name_1 = 0;
     150       43513 :         TALLOC_CTX *_mem_save_full_name_0 = NULL;
     151             :         uint32_t _ptr_logon_script;
     152       43513 :         uint32_t size_logon_script_1 = 0;
     153       43513 :         uint32_t length_logon_script_1 = 0;
     154       43513 :         TALLOC_CTX *_mem_save_logon_script_0 = NULL;
     155             :         uint32_t _ptr_profile_path;
     156       43513 :         uint32_t size_profile_path_1 = 0;
     157       43513 :         uint32_t length_profile_path_1 = 0;
     158       43513 :         TALLOC_CTX *_mem_save_profile_path_0 = NULL;
     159             :         uint32_t _ptr_home_directory;
     160       43513 :         uint32_t size_home_directory_1 = 0;
     161       43513 :         uint32_t length_home_directory_1 = 0;
     162       43513 :         TALLOC_CTX *_mem_save_home_directory_0 = NULL;
     163             :         uint32_t _ptr_home_drive;
     164       43513 :         uint32_t size_home_drive_1 = 0;
     165       43513 :         uint32_t length_home_drive_1 = 0;
     166       43513 :         TALLOC_CTX *_mem_save_home_drive_0 = NULL;
     167             :         uint32_t _ptr_logon_server;
     168       43513 :         uint32_t size_logon_server_1 = 0;
     169       43513 :         uint32_t length_logon_server_1 = 0;
     170       43513 :         TALLOC_CTX *_mem_save_logon_server_0 = NULL;
     171       43513 :         NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
     172       43513 :         if (ndr_flags & NDR_SCALARS) {
     173       43513 :                 NDR_CHECK(ndr_pull_align(ndr, 5));
     174       43513 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account_name));
     175       43513 :                 if (_ptr_account_name) {
     176       43513 :                         NDR_PULL_ALLOC(ndr, r->account_name);
     177             :                 } else {
     178           0 :                         r->account_name = NULL;
     179             :                 }
     180       43513 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user_principal_name));
     181       43513 :                 if (_ptr_user_principal_name) {
     182       24487 :                         NDR_PULL_ALLOC(ndr, r->user_principal_name);
     183             :                 } else {
     184       19026 :                         r->user_principal_name = NULL;
     185             :                 }
     186       43513 :                 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->user_principal_constructed));
     187       43513 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain_name));
     188       43513 :                 if (_ptr_domain_name) {
     189       43513 :                         NDR_PULL_ALLOC(ndr, r->domain_name);
     190             :                 } else {
     191           0 :                         r->domain_name = NULL;
     192             :                 }
     193       43513 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dns_domain_name));
     194       43513 :                 if (_ptr_dns_domain_name) {
     195       24487 :                         NDR_PULL_ALLOC(ndr, r->dns_domain_name);
     196             :                 } else {
     197       19026 :                         r->dns_domain_name = NULL;
     198             :                 }
     199       43513 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_full_name));
     200       43513 :                 if (_ptr_full_name) {
     201       43311 :                         NDR_PULL_ALLOC(ndr, r->full_name);
     202             :                 } else {
     203         202 :                         r->full_name = NULL;
     204             :                 }
     205       43513 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_logon_script));
     206       43513 :                 if (_ptr_logon_script) {
     207       43311 :                         NDR_PULL_ALLOC(ndr, r->logon_script);
     208             :                 } else {
     209         202 :                         r->logon_script = NULL;
     210             :                 }
     211       43513 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_profile_path));
     212       43513 :                 if (_ptr_profile_path) {
     213       43311 :                         NDR_PULL_ALLOC(ndr, r->profile_path);
     214             :                 } else {
     215         202 :                         r->profile_path = NULL;
     216             :                 }
     217       43513 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_home_directory));
     218       43513 :                 if (_ptr_home_directory) {
     219       43311 :                         NDR_PULL_ALLOC(ndr, r->home_directory);
     220             :                 } else {
     221         202 :                         r->home_directory = NULL;
     222             :                 }
     223       43513 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_home_drive));
     224       43513 :                 if (_ptr_home_drive) {
     225       43311 :                         NDR_PULL_ALLOC(ndr, r->home_drive);
     226             :                 } else {
     227         202 :                         r->home_drive = NULL;
     228             :                 }
     229       43513 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_logon_server));
     230       43513 :                 if (_ptr_logon_server) {
     231       43311 :                         NDR_PULL_ALLOC(ndr, r->logon_server);
     232             :                 } else {
     233         202 :                         r->logon_server = NULL;
     234             :                 }
     235       43513 :                 NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->last_logon));
     236       43513 :                 NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->last_logoff));
     237       43513 :                 NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->acct_expiry));
     238       43513 :                 NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->last_password_change));
     239       43513 :                 NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->allow_password_change));
     240       43513 :                 NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->force_password_change));
     241       43513 :                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->logon_count));
     242       43513 :                 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->bad_password_count));
     243       43513 :                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->acct_flags));
     244       43513 :                 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->authenticated));
     245       43513 :                 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
     246             :         }
     247       43513 :         if (ndr_flags & NDR_BUFFERS) {
     248       43513 :                 if (r->account_name) {
     249       43513 :                         _mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
     250       43513 :                         NDR_PULL_SET_MEM_CTX(ndr, r->account_name, 0);
     251       43513 :                         NDR_CHECK(ndr_pull_array_size(ndr, &r->account_name));
     252       43513 :                         NDR_CHECK(ndr_pull_array_length(ndr, &r->account_name));
     253       43513 :                         NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->account_name, &size_account_name_1));
     254       43513 :                         NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->account_name, &length_account_name_1));
     255       43513 :                         if (length_account_name_1 > size_account_name_1) {
     256           0 :                                 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_account_name_1, length_account_name_1);
     257             :                         }
     258       43513 :                         NDR_CHECK(ndr_check_string_terminator(ndr, length_account_name_1, sizeof(uint8_t)));
     259       43513 :                         NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->account_name, length_account_name_1, sizeof(uint8_t), CH_UTF8));
     260       43513 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, 0);
     261             :                 }
     262       43513 :                 if (r->user_principal_name) {
     263       24487 :                         _mem_save_user_principal_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
     264       24487 :                         NDR_PULL_SET_MEM_CTX(ndr, r->user_principal_name, 0);
     265       24487 :                         NDR_CHECK(ndr_pull_array_size(ndr, &r->user_principal_name));
     266       24487 :                         NDR_CHECK(ndr_pull_array_length(ndr, &r->user_principal_name));
     267       24487 :                         NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->user_principal_name, &size_user_principal_name_1));
     268       24487 :                         NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->user_principal_name, &length_user_principal_name_1));
     269       24487 :                         if (length_user_principal_name_1 > size_user_principal_name_1) {
     270           0 :                                 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_user_principal_name_1, length_user_principal_name_1);
     271             :                         }
     272       24487 :                         NDR_CHECK(ndr_check_string_terminator(ndr, length_user_principal_name_1, sizeof(uint8_t)));
     273       24487 :                         NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->user_principal_name, length_user_principal_name_1, sizeof(uint8_t), CH_UTF8));
     274       24487 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_principal_name_0, 0);
     275             :                 }
     276       43513 :                 if (r->domain_name) {
     277       43513 :                         _mem_save_domain_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
     278       43513 :                         NDR_PULL_SET_MEM_CTX(ndr, r->domain_name, 0);
     279       43513 :                         NDR_CHECK(ndr_pull_array_size(ndr, &r->domain_name));
     280       43513 :                         NDR_CHECK(ndr_pull_array_length(ndr, &r->domain_name));
     281       43513 :                         NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->domain_name, &size_domain_name_1));
     282       43513 :                         NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->domain_name, &length_domain_name_1));
     283       43513 :                         if (length_domain_name_1 > size_domain_name_1) {
     284           0 :                                 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_domain_name_1, length_domain_name_1);
     285             :                         }
     286       43513 :                         NDR_CHECK(ndr_check_string_terminator(ndr, length_domain_name_1, sizeof(uint8_t)));
     287       43513 :                         NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->domain_name, length_domain_name_1, sizeof(uint8_t), CH_UTF8));
     288       43513 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_name_0, 0);
     289             :                 }
     290       43513 :                 if (r->dns_domain_name) {
     291       24487 :                         _mem_save_dns_domain_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
     292       24487 :                         NDR_PULL_SET_MEM_CTX(ndr, r->dns_domain_name, 0);
     293       24487 :                         NDR_CHECK(ndr_pull_array_size(ndr, &r->dns_domain_name));
     294       24487 :                         NDR_CHECK(ndr_pull_array_length(ndr, &r->dns_domain_name));
     295       24487 :                         NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->dns_domain_name, &size_dns_domain_name_1));
     296       24487 :                         NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->dns_domain_name, &length_dns_domain_name_1));
     297       24487 :                         if (length_dns_domain_name_1 > size_dns_domain_name_1) {
     298           0 :                                 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_dns_domain_name_1, length_dns_domain_name_1);
     299             :                         }
     300       24487 :                         NDR_CHECK(ndr_check_string_terminator(ndr, length_dns_domain_name_1, sizeof(uint8_t)));
     301       24487 :                         NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->dns_domain_name, length_dns_domain_name_1, sizeof(uint8_t), CH_UTF8));
     302       24487 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dns_domain_name_0, 0);
     303             :                 }
     304       43513 :                 if (r->full_name) {
     305       43311 :                         _mem_save_full_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
     306       43311 :                         NDR_PULL_SET_MEM_CTX(ndr, r->full_name, 0);
     307       43311 :                         NDR_CHECK(ndr_pull_array_size(ndr, &r->full_name));
     308       43311 :                         NDR_CHECK(ndr_pull_array_length(ndr, &r->full_name));
     309       43311 :                         NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->full_name, &size_full_name_1));
     310       43311 :                         NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->full_name, &length_full_name_1));
     311       43311 :                         if (length_full_name_1 > size_full_name_1) {
     312           0 :                                 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_full_name_1, length_full_name_1);
     313             :                         }
     314       43311 :                         NDR_CHECK(ndr_check_string_terminator(ndr, length_full_name_1, sizeof(uint8_t)));
     315       43311 :                         NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->full_name, length_full_name_1, sizeof(uint8_t), CH_UTF8));
     316       43311 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_full_name_0, 0);
     317             :                 }
     318       43513 :                 if (r->logon_script) {
     319       43311 :                         _mem_save_logon_script_0 = NDR_PULL_GET_MEM_CTX(ndr);
     320       43311 :                         NDR_PULL_SET_MEM_CTX(ndr, r->logon_script, 0);
     321       43311 :                         NDR_CHECK(ndr_pull_array_size(ndr, &r->logon_script));
     322       43311 :                         NDR_CHECK(ndr_pull_array_length(ndr, &r->logon_script));
     323       43311 :                         NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->logon_script, &size_logon_script_1));
     324       43311 :                         NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->logon_script, &length_logon_script_1));
     325       43311 :                         if (length_logon_script_1 > size_logon_script_1) {
     326           0 :                                 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_logon_script_1, length_logon_script_1);
     327             :                         }
     328       43311 :                         NDR_CHECK(ndr_check_string_terminator(ndr, length_logon_script_1, sizeof(uint8_t)));
     329       43311 :                         NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->logon_script, length_logon_script_1, sizeof(uint8_t), CH_UTF8));
     330       43311 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_logon_script_0, 0);
     331             :                 }
     332       43513 :                 if (r->profile_path) {
     333       43311 :                         _mem_save_profile_path_0 = NDR_PULL_GET_MEM_CTX(ndr);
     334       43311 :                         NDR_PULL_SET_MEM_CTX(ndr, r->profile_path, 0);
     335       43311 :                         NDR_CHECK(ndr_pull_array_size(ndr, &r->profile_path));
     336       43311 :                         NDR_CHECK(ndr_pull_array_length(ndr, &r->profile_path));
     337       43311 :                         NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->profile_path, &size_profile_path_1));
     338       43311 :                         NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->profile_path, &length_profile_path_1));
     339       43311 :                         if (length_profile_path_1 > size_profile_path_1) {
     340           0 :                                 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_profile_path_1, length_profile_path_1);
     341             :                         }
     342       43311 :                         NDR_CHECK(ndr_check_string_terminator(ndr, length_profile_path_1, sizeof(uint8_t)));
     343       43311 :                         NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->profile_path, length_profile_path_1, sizeof(uint8_t), CH_UTF8));
     344       43311 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_profile_path_0, 0);
     345             :                 }
     346       43513 :                 if (r->home_directory) {
     347       43311 :                         _mem_save_home_directory_0 = NDR_PULL_GET_MEM_CTX(ndr);
     348       43311 :                         NDR_PULL_SET_MEM_CTX(ndr, r->home_directory, 0);
     349       43311 :                         NDR_CHECK(ndr_pull_array_size(ndr, &r->home_directory));
     350       43311 :                         NDR_CHECK(ndr_pull_array_length(ndr, &r->home_directory));
     351       43311 :                         NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->home_directory, &size_home_directory_1));
     352       43311 :                         NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->home_directory, &length_home_directory_1));
     353       43311 :                         if (length_home_directory_1 > size_home_directory_1) {
     354           0 :                                 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_home_directory_1, length_home_directory_1);
     355             :                         }
     356       43311 :                         NDR_CHECK(ndr_check_string_terminator(ndr, length_home_directory_1, sizeof(uint8_t)));
     357       43311 :                         NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->home_directory, length_home_directory_1, sizeof(uint8_t), CH_UTF8));
     358       43311 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_home_directory_0, 0);
     359             :                 }
     360       43513 :                 if (r->home_drive) {
     361       43311 :                         _mem_save_home_drive_0 = NDR_PULL_GET_MEM_CTX(ndr);
     362       43311 :                         NDR_PULL_SET_MEM_CTX(ndr, r->home_drive, 0);
     363       43311 :                         NDR_CHECK(ndr_pull_array_size(ndr, &r->home_drive));
     364       43311 :                         NDR_CHECK(ndr_pull_array_length(ndr, &r->home_drive));
     365       43311 :                         NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->home_drive, &size_home_drive_1));
     366       43311 :                         NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->home_drive, &length_home_drive_1));
     367       43311 :                         if (length_home_drive_1 > size_home_drive_1) {
     368           0 :                                 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_home_drive_1, length_home_drive_1);
     369             :                         }
     370       43311 :                         NDR_CHECK(ndr_check_string_terminator(ndr, length_home_drive_1, sizeof(uint8_t)));
     371       43311 :                         NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->home_drive, length_home_drive_1, sizeof(uint8_t), CH_UTF8));
     372       43311 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_home_drive_0, 0);
     373             :                 }
     374       43513 :                 if (r->logon_server) {
     375       43311 :                         _mem_save_logon_server_0 = NDR_PULL_GET_MEM_CTX(ndr);
     376       43311 :                         NDR_PULL_SET_MEM_CTX(ndr, r->logon_server, 0);
     377       43311 :                         NDR_CHECK(ndr_pull_array_size(ndr, &r->logon_server));
     378       43311 :                         NDR_CHECK(ndr_pull_array_length(ndr, &r->logon_server));
     379       43311 :                         NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->logon_server, &size_logon_server_1));
     380       43311 :                         NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->logon_server, &length_logon_server_1));
     381       43311 :                         if (length_logon_server_1 > size_logon_server_1) {
     382           0 :                                 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_logon_server_1, length_logon_server_1);
     383             :                         }
     384       43311 :                         NDR_CHECK(ndr_check_string_terminator(ndr, length_logon_server_1, sizeof(uint8_t)));
     385       43311 :                         NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->logon_server, length_logon_server_1, sizeof(uint8_t), CH_UTF8));
     386       43311 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_logon_server_0, 0);
     387             :                 }
     388             :         }
     389       43513 :         return NDR_ERR_SUCCESS;
     390             : }
     391             : 
     392           0 : static void ndr_print_flags_auth_user_info(struct ndr_print *ndr, const char *name, int unused, const struct auth_user_info *r)
     393             : {
     394           0 :         ndr_print_auth_user_info(ndr, name, r);
     395           0 : }
     396             : 
     397           0 : _PUBLIC_ void ndr_print_auth_user_info(struct ndr_print *ndr, const char *name, const struct auth_user_info *r)
     398             : {
     399           0 :         ndr_print_struct(ndr, name, "auth_user_info");
     400           0 :         if (r == NULL) { ndr_print_null(ndr); return; }
     401           0 :         ndr->depth++;
     402           0 :         ndr_print_ptr(ndr, "account_name", r->account_name);
     403           0 :         ndr->depth++;
     404           0 :         if (r->account_name) {
     405           0 :                 ndr_print_string(ndr, "account_name", r->account_name);
     406             :         }
     407           0 :         ndr->depth--;
     408           0 :         ndr_print_ptr(ndr, "user_principal_name", r->user_principal_name);
     409           0 :         ndr->depth++;
     410           0 :         if (r->user_principal_name) {
     411           0 :                 ndr_print_string(ndr, "user_principal_name", r->user_principal_name);
     412             :         }
     413           0 :         ndr->depth--;
     414           0 :         ndr_print_uint8(ndr, "user_principal_constructed", r->user_principal_constructed);
     415           0 :         ndr_print_ptr(ndr, "domain_name", r->domain_name);
     416           0 :         ndr->depth++;
     417           0 :         if (r->domain_name) {
     418           0 :                 ndr_print_string(ndr, "domain_name", r->domain_name);
     419             :         }
     420           0 :         ndr->depth--;
     421           0 :         ndr_print_ptr(ndr, "dns_domain_name", r->dns_domain_name);
     422           0 :         ndr->depth++;
     423           0 :         if (r->dns_domain_name) {
     424           0 :                 ndr_print_string(ndr, "dns_domain_name", r->dns_domain_name);
     425             :         }
     426           0 :         ndr->depth--;
     427           0 :         ndr_print_ptr(ndr, "full_name", r->full_name);
     428           0 :         ndr->depth++;
     429           0 :         if (r->full_name) {
     430           0 :                 ndr_print_string(ndr, "full_name", r->full_name);
     431             :         }
     432           0 :         ndr->depth--;
     433           0 :         ndr_print_ptr(ndr, "logon_script", r->logon_script);
     434           0 :         ndr->depth++;
     435           0 :         if (r->logon_script) {
     436           0 :                 ndr_print_string(ndr, "logon_script", r->logon_script);
     437             :         }
     438           0 :         ndr->depth--;
     439           0 :         ndr_print_ptr(ndr, "profile_path", r->profile_path);
     440           0 :         ndr->depth++;
     441           0 :         if (r->profile_path) {
     442           0 :                 ndr_print_string(ndr, "profile_path", r->profile_path);
     443             :         }
     444           0 :         ndr->depth--;
     445           0 :         ndr_print_ptr(ndr, "home_directory", r->home_directory);
     446           0 :         ndr->depth++;
     447           0 :         if (r->home_directory) {
     448           0 :                 ndr_print_string(ndr, "home_directory", r->home_directory);
     449             :         }
     450           0 :         ndr->depth--;
     451           0 :         ndr_print_ptr(ndr, "home_drive", r->home_drive);
     452           0 :         ndr->depth++;
     453           0 :         if (r->home_drive) {
     454           0 :                 ndr_print_string(ndr, "home_drive", r->home_drive);
     455             :         }
     456           0 :         ndr->depth--;
     457           0 :         ndr_print_ptr(ndr, "logon_server", r->logon_server);
     458           0 :         ndr->depth++;
     459           0 :         if (r->logon_server) {
     460           0 :                 ndr_print_string(ndr, "logon_server", r->logon_server);
     461             :         }
     462           0 :         ndr->depth--;
     463           0 :         ndr_print_NTTIME(ndr, "last_logon", r->last_logon);
     464           0 :         ndr_print_NTTIME(ndr, "last_logoff", r->last_logoff);
     465           0 :         ndr_print_NTTIME(ndr, "acct_expiry", r->acct_expiry);
     466           0 :         ndr_print_NTTIME(ndr, "last_password_change", r->last_password_change);
     467           0 :         ndr_print_NTTIME(ndr, "allow_password_change", r->allow_password_change);
     468           0 :         ndr_print_NTTIME(ndr, "force_password_change", r->force_password_change);
     469           0 :         ndr_print_uint16(ndr, "logon_count", r->logon_count);
     470           0 :         ndr_print_uint16(ndr, "bad_password_count", r->bad_password_count);
     471           0 :         ndr_print_uint32(ndr, "acct_flags", r->acct_flags);
     472           0 :         ndr_print_uint8(ndr, "authenticated", r->authenticated);
     473           0 :         ndr->depth--;
     474             : }
     475             : 
     476           0 : _PUBLIC_ enum ndr_err_code ndr_push_auth_user_info_torture(struct ndr_push *ndr, int ndr_flags, const struct auth_user_info_torture *r)
     477             : {
     478             :         uint32_t cntr_dc_sids_0;
     479           0 :         NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
     480           0 :         if (ndr_flags & NDR_SCALARS) {
     481           0 :                 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->num_dc_sids));
     482           0 :                 NDR_CHECK(ndr_push_align(ndr, 4));
     483           0 :                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_dc_sids));
     484           0 :                 for (cntr_dc_sids_0 = 0; cntr_dc_sids_0 < (r->num_dc_sids); cntr_dc_sids_0++) {
     485           0 :                         NDR_CHECK(ndr_push_dom_sid(ndr, NDR_SCALARS, &r->dc_sids[cntr_dc_sids_0]));
     486             :                 }
     487           0 :                 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
     488             :         }
     489           0 :         if (ndr_flags & NDR_BUFFERS) {
     490             :         }
     491           0 :         return NDR_ERR_SUCCESS;
     492             : }
     493             : 
     494           0 : _PUBLIC_ enum ndr_err_code ndr_pull_auth_user_info_torture(struct ndr_pull *ndr, int ndr_flags, struct auth_user_info_torture *r)
     495             : {
     496           0 :         uint32_t size_dc_sids_0 = 0;
     497             :         uint32_t cntr_dc_sids_0;
     498           0 :         TALLOC_CTX *_mem_save_dc_sids_0 = NULL;
     499           0 :         NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
     500           0 :         if (ndr_flags & NDR_SCALARS) {
     501           0 :                 NDR_CHECK(ndr_pull_array_size(ndr, &r->dc_sids));
     502           0 :                 NDR_CHECK(ndr_pull_align(ndr, 4));
     503           0 :                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_dc_sids));
     504           0 :                 NDR_CHECK(ndr_get_array_size(ndr, (void*)&r->dc_sids, &size_dc_sids_0));
     505           0 :                 NDR_PULL_ALLOC_N(ndr, r->dc_sids, size_dc_sids_0);
     506           0 :                 _mem_save_dc_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
     507           0 :                 NDR_PULL_SET_MEM_CTX(ndr, r->dc_sids, 0);
     508           0 :                 for (cntr_dc_sids_0 = 0; cntr_dc_sids_0 < (size_dc_sids_0); cntr_dc_sids_0++) {
     509           0 :                         NDR_CHECK(ndr_pull_dom_sid(ndr, NDR_SCALARS, &r->dc_sids[cntr_dc_sids_0]));
     510             :                 }
     511           0 :                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dc_sids_0, 0);
     512           0 :                 if (r->dc_sids) {
     513           0 :                         NDR_CHECK(ndr_check_steal_array_size(ndr, (void*)&r->dc_sids, r->num_dc_sids));
     514             :                 }
     515           0 :                 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
     516             :         }
     517           0 :         if (ndr_flags & NDR_BUFFERS) {
     518             :         }
     519           0 :         return NDR_ERR_SUCCESS;
     520             : }
     521             : 
     522           0 : static void ndr_print_flags_auth_user_info_torture(struct ndr_print *ndr, const char *name, int unused, const struct auth_user_info_torture *r)
     523             : {
     524           0 :         ndr_print_auth_user_info_torture(ndr, name, r);
     525           0 : }
     526             : 
     527           0 : _PUBLIC_ void ndr_print_auth_user_info_torture(struct ndr_print *ndr, const char *name, const struct auth_user_info_torture *r)
     528             : {
     529             :         uint32_t cntr_dc_sids_0;
     530           0 :         ndr_print_struct(ndr, name, "auth_user_info_torture");
     531           0 :         if (r == NULL) { ndr_print_null(ndr); return; }
     532           0 :         ndr->depth++;
     533           0 :         ndr_print_uint32(ndr, "num_dc_sids", r->num_dc_sids);
     534           0 :         ndr->print(ndr, "%s: ARRAY(%d)", "dc_sids", (int)r->num_dc_sids);
     535           0 :         ndr->depth++;
     536           0 :         for (cntr_dc_sids_0 = 0; cntr_dc_sids_0 < (r->num_dc_sids); cntr_dc_sids_0++) {
     537           0 :                 ndr_print_dom_sid(ndr, "dc_sids", &r->dc_sids[cntr_dc_sids_0]);
     538             :         }
     539           0 :         ndr->depth--;
     540           0 :         ndr->depth--;
     541             : }
     542             : 
     543       39587 : _PUBLIC_ enum ndr_err_code ndr_push_auth_user_info_unix(struct ndr_push *ndr, int ndr_flags, const struct auth_user_info_unix *r)
     544             : {
     545       39587 :         NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
     546       39587 :         if (ndr_flags & NDR_SCALARS) {
     547       39587 :                 NDR_CHECK(ndr_push_align(ndr, 5));
     548       39587 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->unix_name));
     549       39587 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sanitized_username));
     550       39587 :                 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
     551             :         }
     552       39587 :         if (ndr_flags & NDR_BUFFERS) {
     553       39587 :                 if (r->unix_name) {
     554       39587 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->unix_name, CH_UTF8)));
     555       39587 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
     556       39587 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->unix_name, CH_UTF8)));
     557       39587 :                         NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->unix_name, ndr_charset_length(r->unix_name, CH_UTF8), sizeof(uint8_t), CH_UTF8));
     558             :                 }
     559       39587 :                 if (r->sanitized_username) {
     560       39587 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->sanitized_username, CH_UTF8)));
     561       39587 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
     562       39587 :                         NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, ndr_charset_length(r->sanitized_username, CH_UTF8)));
     563       39587 :                         NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->sanitized_username, ndr_charset_length(r->sanitized_username, CH_UTF8), sizeof(uint8_t), CH_UTF8));
     564             :                 }
     565             :         }
     566       39587 :         return NDR_ERR_SUCCESS;
     567             : }
     568             : 
     569       26918 : _PUBLIC_ enum ndr_err_code ndr_pull_auth_user_info_unix(struct ndr_pull *ndr, int ndr_flags, struct auth_user_info_unix *r)
     570             : {
     571             :         uint32_t _ptr_unix_name;
     572       26918 :         uint32_t size_unix_name_1 = 0;
     573       26918 :         uint32_t length_unix_name_1 = 0;
     574       26918 :         TALLOC_CTX *_mem_save_unix_name_0 = NULL;
     575             :         uint32_t _ptr_sanitized_username;
     576       26918 :         uint32_t size_sanitized_username_1 = 0;
     577       26918 :         uint32_t length_sanitized_username_1 = 0;
     578       26918 :         TALLOC_CTX *_mem_save_sanitized_username_0 = NULL;
     579       26918 :         NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
     580       26918 :         if (ndr_flags & NDR_SCALARS) {
     581       26918 :                 NDR_CHECK(ndr_pull_align(ndr, 5));
     582       26918 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unix_name));
     583       26918 :                 if (_ptr_unix_name) {
     584       26918 :                         NDR_PULL_ALLOC(ndr, r->unix_name);
     585             :                 } else {
     586           0 :                         r->unix_name = NULL;
     587             :                 }
     588       26918 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sanitized_username));
     589       26918 :                 if (_ptr_sanitized_username) {
     590       26918 :                         NDR_PULL_ALLOC(ndr, r->sanitized_username);
     591             :                 } else {
     592           0 :                         r->sanitized_username = NULL;
     593             :                 }
     594       26918 :                 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
     595             :         }
     596       26918 :         if (ndr_flags & NDR_BUFFERS) {
     597       26918 :                 if (r->unix_name) {
     598       26918 :                         _mem_save_unix_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
     599       26918 :                         NDR_PULL_SET_MEM_CTX(ndr, r->unix_name, 0);
     600       26918 :                         NDR_CHECK(ndr_pull_array_size(ndr, &r->unix_name));
     601       26918 :                         NDR_CHECK(ndr_pull_array_length(ndr, &r->unix_name));
     602       26918 :                         NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->unix_name, &size_unix_name_1));
     603       26918 :                         NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->unix_name, &length_unix_name_1));
     604       26918 :                         if (length_unix_name_1 > size_unix_name_1) {
     605           0 :                                 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_unix_name_1, length_unix_name_1);
     606             :                         }
     607       26918 :                         NDR_CHECK(ndr_check_string_terminator(ndr, length_unix_name_1, sizeof(uint8_t)));
     608       26918 :                         NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->unix_name, length_unix_name_1, sizeof(uint8_t), CH_UTF8));
     609       26918 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unix_name_0, 0);
     610             :                 }
     611       26918 :                 if (r->sanitized_username) {
     612       26918 :                         _mem_save_sanitized_username_0 = NDR_PULL_GET_MEM_CTX(ndr);
     613       26918 :                         NDR_PULL_SET_MEM_CTX(ndr, r->sanitized_username, 0);
     614       26918 :                         NDR_CHECK(ndr_pull_array_size(ndr, &r->sanitized_username));
     615       26918 :                         NDR_CHECK(ndr_pull_array_length(ndr, &r->sanitized_username));
     616       26918 :                         NDR_CHECK(ndr_steal_array_size(ndr, (void*)&r->sanitized_username, &size_sanitized_username_1));
     617       26918 :                         NDR_CHECK(ndr_steal_array_length(ndr, (void*)&r->sanitized_username, &length_sanitized_username_1));
     618       26918 :                         if (length_sanitized_username_1 > size_sanitized_username_1) {
     619           0 :                                 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", size_sanitized_username_1, length_sanitized_username_1);
     620             :                         }
     621       26918 :                         NDR_CHECK(ndr_check_string_terminator(ndr, length_sanitized_username_1, sizeof(uint8_t)));
     622       26918 :                         NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->sanitized_username, length_sanitized_username_1, sizeof(uint8_t), CH_UTF8));
     623       26918 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sanitized_username_0, 0);
     624             :                 }
     625             :         }
     626       26918 :         return NDR_ERR_SUCCESS;
     627             : }
     628             : 
     629           0 : static void ndr_print_flags_auth_user_info_unix(struct ndr_print *ndr, const char *name, int unused, const struct auth_user_info_unix *r)
     630             : {
     631           0 :         ndr_print_auth_user_info_unix(ndr, name, r);
     632           0 : }
     633             : 
     634           0 : _PUBLIC_ void ndr_print_auth_user_info_unix(struct ndr_print *ndr, const char *name, const struct auth_user_info_unix *r)
     635             : {
     636           0 :         ndr_print_struct(ndr, name, "auth_user_info_unix");
     637           0 :         if (r == NULL) { ndr_print_null(ndr); return; }
     638           0 :         ndr->depth++;
     639           0 :         ndr_print_ptr(ndr, "unix_name", r->unix_name);
     640           0 :         ndr->depth++;
     641           0 :         if (r->unix_name) {
     642           0 :                 ndr_print_string(ndr, "unix_name", r->unix_name);
     643             :         }
     644           0 :         ndr->depth--;
     645           0 :         ndr_print_ptr(ndr, "sanitized_username", r->sanitized_username);
     646           0 :         ndr->depth++;
     647           0 :         if (r->sanitized_username) {
     648           0 :                 ndr_print_string(ndr, "sanitized_username", r->sanitized_username);
     649             :         }
     650           0 :         ndr->depth--;
     651           0 :         ndr->depth--;
     652             : }
     653             : 
     654       57725 : static enum ndr_err_code ndr_push_ticket_type(struct ndr_push *ndr, int ndr_flags, enum ticket_type r)
     655             : {
     656       57725 :         NDR_CHECK(ndr_push_enum_uint1632(ndr, NDR_SCALARS, r));
     657       57725 :         return NDR_ERR_SUCCESS;
     658             : }
     659             : 
     660       43513 : static enum ndr_err_code ndr_pull_ticket_type(struct ndr_pull *ndr, int ndr_flags, enum ticket_type *r)
     661             : {
     662             :         uint16_t v;
     663       43513 :         NDR_CHECK(ndr_pull_enum_uint1632(ndr, NDR_SCALARS, &v));
     664       43513 :         *r = v;
     665       43513 :         return NDR_ERR_SUCCESS;
     666             : }
     667             : 
     668           0 : _PUBLIC_ void ndr_print_ticket_type(struct ndr_print *ndr, const char *name, enum ticket_type r)
     669             : {
     670           0 :         const char *val = NULL;
     671             : 
     672           0 :         switch (r) {
     673           0 :                 case TICKET_TYPE_UNKNOWN: val = "TICKET_TYPE_UNKNOWN"; break;
     674           0 :                 case TICKET_TYPE_TGT: val = "TICKET_TYPE_TGT"; break;
     675           0 :                 case TICKET_TYPE_NON_TGT: val = "TICKET_TYPE_NON_TGT"; break;
     676             :         }
     677           0 :         ndr_print_enum(ndr, name, "ENUM", val, r);
     678           0 : }
     679             : 
     680           0 : _PUBLIC_ enum ndr_err_code ndr_push_auth_user_info_dc(struct ndr_push *ndr, int ndr_flags, const struct auth_user_info_dc *r)
     681             : {
     682             :         uint32_t cntr_sids_0;
     683           0 :         NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
     684           0 :         if (ndr_flags & NDR_SCALARS) {
     685           0 :                 NDR_CHECK(ndr_push_align(ndr, 5));
     686           0 :                 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_sids));
     687           0 :                 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, r->num_sids));
     688           0 :                 for (cntr_sids_0 = 0; cntr_sids_0 < (r->num_sids); cntr_sids_0++) {
     689           0 :                         NDR_CHECK(ndr_push_dom_sid(ndr, NDR_SCALARS, &r->sids[cntr_sids_0]));
     690             :                 }
     691           0 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info));
     692           0 :                 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->user_session_key));
     693           0 :                 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->lm_session_key));
     694           0 :                 NDR_CHECK(ndr_push_ticket_type(ndr, NDR_SCALARS, r->ticket_type));
     695           0 :                 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
     696             :         }
     697           0 :         if (ndr_flags & NDR_BUFFERS) {
     698           0 :                 if (r->info) {
     699           0 :                         NDR_CHECK(ndr_push_auth_user_info(ndr, NDR_SCALARS|NDR_BUFFERS, r->info));
     700             :                 }
     701             :         }
     702           0 :         return NDR_ERR_SUCCESS;
     703             : }
     704             : 
     705           0 : _PUBLIC_ enum ndr_err_code ndr_pull_auth_user_info_dc(struct ndr_pull *ndr, int ndr_flags, struct auth_user_info_dc *r)
     706             : {
     707           0 :         uint32_t size_sids_0 = 0;
     708             :         uint32_t cntr_sids_0;
     709           0 :         TALLOC_CTX *_mem_save_sids_0 = NULL;
     710             :         uint32_t _ptr_info;
     711           0 :         TALLOC_CTX *_mem_save_info_0 = NULL;
     712           0 :         NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
     713           0 :         if (ndr_flags & NDR_SCALARS) {
     714           0 :                 NDR_CHECK(ndr_pull_align(ndr, 5));
     715           0 :                 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_sids));
     716           0 :                 NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
     717           0 :                 NDR_CHECK(ndr_get_array_size(ndr, (void*)&r->sids, &size_sids_0));
     718           0 :                 NDR_PULL_ALLOC_N(ndr, r->sids, size_sids_0);
     719           0 :                 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
     720           0 :                 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
     721           0 :                 for (cntr_sids_0 = 0; cntr_sids_0 < (size_sids_0); cntr_sids_0++) {
     722           0 :                         NDR_CHECK(ndr_pull_dom_sid(ndr, NDR_SCALARS, &r->sids[cntr_sids_0]));
     723             :                 }
     724           0 :                 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, 0);
     725           0 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
     726           0 :                 if (_ptr_info) {
     727           0 :                         NDR_PULL_ALLOC(ndr, r->info);
     728             :                 } else {
     729           0 :                         r->info = NULL;
     730             :                 }
     731           0 :                 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->user_session_key));
     732           0 :                 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->lm_session_key));
     733           0 :                 NDR_CHECK(ndr_pull_ticket_type(ndr, NDR_SCALARS, &r->ticket_type));
     734           0 :                 if (r->sids) {
     735           0 :                         NDR_CHECK(ndr_check_steal_array_size(ndr, (void*)&r->sids, r->num_sids));
     736             :                 }
     737           0 :                 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
     738             :         }
     739           0 :         if (ndr_flags & NDR_BUFFERS) {
     740           0 :                 if (r->info) {
     741           0 :                         _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
     742           0 :                         NDR_PULL_SET_MEM_CTX(ndr, r->info, 0);
     743           0 :                         NDR_CHECK(ndr_pull_auth_user_info(ndr, NDR_SCALARS|NDR_BUFFERS, r->info));
     744           0 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
     745             :                 }
     746             :         }
     747           0 :         return NDR_ERR_SUCCESS;
     748             : }
     749             : 
     750           0 : static void ndr_print_flags_auth_user_info_dc(struct ndr_print *ndr, const char *name, int unused, const struct auth_user_info_dc *r)
     751             : {
     752           0 :         ndr_print_auth_user_info_dc(ndr, name, r);
     753           0 : }
     754             : 
     755           0 : _PUBLIC_ void ndr_print_auth_user_info_dc(struct ndr_print *ndr, const char *name, const struct auth_user_info_dc *r)
     756             : {
     757             :         uint32_t cntr_sids_0;
     758           0 :         ndr_print_struct(ndr, name, "auth_user_info_dc");
     759           0 :         if (r == NULL) { ndr_print_null(ndr); return; }
     760           0 :         ndr->depth++;
     761           0 :         ndr_print_uint32(ndr, "num_sids", r->num_sids);
     762           0 :         ndr->print(ndr, "%s: ARRAY(%d)", "sids", (int)r->num_sids);
     763           0 :         ndr->depth++;
     764           0 :         for (cntr_sids_0 = 0; cntr_sids_0 < (r->num_sids); cntr_sids_0++) {
     765           0 :                 ndr_print_dom_sid(ndr, "sids", &r->sids[cntr_sids_0]);
     766             :         }
     767           0 :         ndr->depth--;
     768           0 :         ndr_print_ptr(ndr, "info", r->info);
     769           0 :         ndr->depth++;
     770           0 :         if (r->info) {
     771           0 :                 ndr_print_auth_user_info(ndr, "info", r->info);
     772             :         }
     773           0 :         ndr->depth--;
     774           0 :         ndr_print_ticket_type(ndr, "ticket_type", r->ticket_type);
     775           0 :         ndr->depth--;
     776             : }
     777             : 
     778       57725 : _PUBLIC_ enum ndr_err_code ndr_push_auth_session_info(struct ndr_push *ndr, int ndr_flags, const struct auth_session_info *r)
     779             : {
     780       57725 :         NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
     781       57725 :         if (ndr_flags & NDR_SCALARS) {
     782       57725 :                 NDR_CHECK(ndr_push_align(ndr, 5));
     783       57725 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->security_token));
     784       57725 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->unix_token));
     785       57725 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info));
     786       57725 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->unix_info));
     787       57725 :                 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
     788             :                 /* [ignore] 'torture' */
     789       57725 :                 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->session_key));
     790       57725 :                 NDR_CHECK(ndr_push_uint3264(ndr, NDR_SCALARS, 0));
     791             :                 /* [ignore] 'credentials' */
     792       57725 :                 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->unique_session_token));
     793       57725 :                 NDR_CHECK(ndr_push_ticket_type(ndr, NDR_SCALARS, r->ticket_type));
     794       57725 :                 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
     795             :         }
     796       57725 :         if (ndr_flags & NDR_BUFFERS) {
     797       57725 :                 if (r->security_token) {
     798       57725 :                         NDR_CHECK(ndr_push_security_token(ndr, NDR_SCALARS, r->security_token));
     799             :                 }
     800       57725 :                 if (r->unix_token) {
     801       39587 :                         NDR_CHECK(ndr_push_security_unix_token(ndr, NDR_SCALARS, r->unix_token));
     802             :                 }
     803       57725 :                 if (r->info) {
     804       57725 :                         NDR_CHECK(ndr_push_auth_user_info(ndr, NDR_SCALARS|NDR_BUFFERS, r->info));
     805             :                 }
     806       57725 :                 if (r->unix_info) {
     807       39587 :                         NDR_CHECK(ndr_push_auth_user_info_unix(ndr, NDR_SCALARS|NDR_BUFFERS, r->unix_info));
     808             :                 }
     809             :                 /* [ignore] 'torture' */
     810             :                 /* [ignore] 'credentials' */
     811             :         }
     812       57725 :         return NDR_ERR_SUCCESS;
     813             : }
     814             : 
     815       43513 : _PUBLIC_ enum ndr_err_code ndr_pull_auth_session_info(struct ndr_pull *ndr, int ndr_flags, struct auth_session_info *r)
     816             : {
     817             :         uint32_t _ptr_security_token;
     818       43513 :         TALLOC_CTX *_mem_save_security_token_0 = NULL;
     819             :         uint32_t _ptr_unix_token;
     820       43513 :         TALLOC_CTX *_mem_save_unix_token_0 = NULL;
     821             :         uint32_t _ptr_info;
     822       43513 :         TALLOC_CTX *_mem_save_info_0 = NULL;
     823             :         uint32_t _ptr_unix_info;
     824       43513 :         TALLOC_CTX *_mem_save_unix_info_0 = NULL;
     825             :         uint32_t _ptr_torture;
     826             :         uint32_t _ptr_credentials;
     827       43513 :         NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
     828       43513 :         if (ndr_flags & NDR_SCALARS) {
     829       43513 :                 NDR_CHECK(ndr_pull_align(ndr, 5));
     830       43513 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_security_token));
     831       43513 :                 if (_ptr_security_token) {
     832       43513 :                         NDR_PULL_ALLOC(ndr, r->security_token);
     833             :                 } else {
     834           0 :                         r->security_token = NULL;
     835             :                 }
     836       43513 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unix_token));
     837       43513 :                 if (_ptr_unix_token) {
     838       26918 :                         NDR_PULL_ALLOC(ndr, r->unix_token);
     839             :                 } else {
     840       16595 :                         r->unix_token = NULL;
     841             :                 }
     842       43513 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
     843       43513 :                 if (_ptr_info) {
     844       43513 :                         NDR_PULL_ALLOC(ndr, r->info);
     845             :                 } else {
     846           0 :                         r->info = NULL;
     847             :                 }
     848       43513 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unix_info));
     849       43513 :                 if (_ptr_unix_info) {
     850       26918 :                         NDR_PULL_ALLOC(ndr, r->unix_info);
     851             :                 } else {
     852       16595 :                         r->unix_info = NULL;
     853             :                 }
     854       43513 :                 NDR_CHECK(ndr_pull_uint3264(ndr, NDR_SCALARS, &_ptr_torture));
     855       43513 :                 _ptr_torture = 0;
     856       43513 :                 if (_ptr_torture) {
     857             :                 } else {
     858       43513 :                         r->torture = NULL;
     859             :                 }
     860             :                 /* [ignore] 'torture' */
     861       43513 :                 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->session_key));
     862       43513 :                 NDR_CHECK(ndr_pull_uint3264(ndr, NDR_SCALARS, &_ptr_credentials));
     863       43513 :                 _ptr_credentials = 0;
     864       43513 :                 if (_ptr_credentials) {
     865             :                 } else {
     866       43513 :                         r->credentials = NULL;
     867             :                 }
     868             :                 /* [ignore] 'credentials' */
     869       43513 :                 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->unique_session_token));
     870       43513 :                 NDR_CHECK(ndr_pull_ticket_type(ndr, NDR_SCALARS, &r->ticket_type));
     871       43513 :                 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
     872             :         }
     873       43513 :         if (ndr_flags & NDR_BUFFERS) {
     874       43513 :                 if (r->security_token) {
     875       43513 :                         _mem_save_security_token_0 = NDR_PULL_GET_MEM_CTX(ndr);
     876       43513 :                         NDR_PULL_SET_MEM_CTX(ndr, r->security_token, 0);
     877       43513 :                         NDR_CHECK(ndr_pull_security_token(ndr, NDR_SCALARS, r->security_token));
     878       43513 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_security_token_0, 0);
     879             :                 }
     880       43513 :                 if (r->unix_token) {
     881       26918 :                         _mem_save_unix_token_0 = NDR_PULL_GET_MEM_CTX(ndr);
     882       26918 :                         NDR_PULL_SET_MEM_CTX(ndr, r->unix_token, 0);
     883       26918 :                         NDR_CHECK(ndr_pull_security_unix_token(ndr, NDR_SCALARS, r->unix_token));
     884       26918 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unix_token_0, 0);
     885             :                 }
     886       43513 :                 if (r->info) {
     887       43513 :                         _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
     888       43513 :                         NDR_PULL_SET_MEM_CTX(ndr, r->info, 0);
     889       43513 :                         NDR_CHECK(ndr_pull_auth_user_info(ndr, NDR_SCALARS|NDR_BUFFERS, r->info));
     890       43513 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
     891             :                 }
     892       43513 :                 if (r->unix_info) {
     893       26918 :                         _mem_save_unix_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
     894       26918 :                         NDR_PULL_SET_MEM_CTX(ndr, r->unix_info, 0);
     895       26918 :                         NDR_CHECK(ndr_pull_auth_user_info_unix(ndr, NDR_SCALARS|NDR_BUFFERS, r->unix_info));
     896       26918 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unix_info_0, 0);
     897             :                 }
     898             :                 /* [ignore] 'torture' */
     899             :                 /* [ignore] 'credentials' */
     900             :         }
     901       43513 :         return NDR_ERR_SUCCESS;
     902             : }
     903             : 
     904           0 : static void ndr_print_flags_auth_session_info(struct ndr_print *ndr, const char *name, int unused, const struct auth_session_info *r)
     905             : {
     906           0 :         ndr_print_auth_session_info(ndr, name, r);
     907           0 : }
     908             : 
     909           0 : _PUBLIC_ void ndr_print_auth_session_info(struct ndr_print *ndr, const char *name, const struct auth_session_info *r)
     910             : {
     911           0 :         ndr_print_struct(ndr, name, "auth_session_info");
     912           0 :         if (r == NULL) { ndr_print_null(ndr); return; }
     913           0 :         ndr->depth++;
     914           0 :         ndr_print_ptr(ndr, "security_token", r->security_token);
     915           0 :         ndr->depth++;
     916           0 :         if (r->security_token) {
     917           0 :                 ndr_print_security_token(ndr, "security_token", r->security_token);
     918             :         }
     919           0 :         ndr->depth--;
     920           0 :         ndr_print_ptr(ndr, "unix_token", r->unix_token);
     921           0 :         ndr->depth++;
     922           0 :         if (r->unix_token) {
     923           0 :                 ndr_print_security_unix_token(ndr, "unix_token", r->unix_token);
     924             :         }
     925           0 :         ndr->depth--;
     926           0 :         ndr_print_ptr(ndr, "info", r->info);
     927           0 :         ndr->depth++;
     928           0 :         if (r->info) {
     929           0 :                 ndr_print_auth_user_info(ndr, "info", r->info);
     930             :         }
     931           0 :         ndr->depth--;
     932           0 :         ndr_print_ptr(ndr, "unix_info", r->unix_info);
     933           0 :         ndr->depth++;
     934           0 :         if (r->unix_info) {
     935           0 :                 ndr_print_auth_user_info_unix(ndr, "unix_info", r->unix_info);
     936             :         }
     937           0 :         ndr->depth--;
     938           0 :         ndr_print_ptr(ndr, "torture", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?NULL:r->torture);
     939             :         /* [ignore] 'torture' */
     940           0 :         ndr_print_ptr(ndr, "credentials", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?NULL:r->credentials);
     941             :         /* [ignore] 'credentials' */
     942           0 :         ndr_print_GUID(ndr, "unique_session_token", &r->unique_session_token);
     943           0 :         ndr_print_ticket_type(ndr, "ticket_type", r->ticket_type);
     944           0 :         ndr->depth--;
     945             : }
     946             : 
     947       11056 : _PUBLIC_ enum ndr_err_code ndr_push_auth_session_info_transport(struct ndr_push *ndr, int ndr_flags, const struct auth_session_info_transport *r)
     948             : {
     949       11056 :         NDR_PUSH_CHECK_FLAGS(ndr, ndr_flags);
     950       11056 :         if (ndr_flags & NDR_SCALARS) {
     951       11056 :                 NDR_CHECK(ndr_push_align(ndr, 5));
     952       11056 :                 NDR_CHECK(ndr_push_unique_ptr(ndr, r->session_info));
     953       11056 :                 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->exported_gssapi_credentials));
     954       11056 :                 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
     955             :         }
     956       11056 :         if (ndr_flags & NDR_BUFFERS) {
     957       11056 :                 if (r->session_info) {
     958       11056 :                         NDR_CHECK(ndr_push_auth_session_info(ndr, NDR_SCALARS|NDR_BUFFERS, r->session_info));
     959             :                 }
     960             :         }
     961       11056 :         return NDR_ERR_SUCCESS;
     962             : }
     963             : 
     964        6446 : _PUBLIC_ enum ndr_err_code ndr_pull_auth_session_info_transport(struct ndr_pull *ndr, int ndr_flags, struct auth_session_info_transport *r)
     965             : {
     966             :         uint32_t _ptr_session_info;
     967        6446 :         TALLOC_CTX *_mem_save_session_info_0 = NULL;
     968        6446 :         NDR_PULL_CHECK_FLAGS(ndr, ndr_flags);
     969        6446 :         if (ndr_flags & NDR_SCALARS) {
     970        6446 :                 NDR_CHECK(ndr_pull_align(ndr, 5));
     971        6446 :                 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_session_info));
     972        6446 :                 if (_ptr_session_info) {
     973        6446 :                         NDR_PULL_ALLOC(ndr, r->session_info);
     974             :                 } else {
     975           0 :                         r->session_info = NULL;
     976             :                 }
     977        6446 :                 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->exported_gssapi_credentials));
     978        6446 :                 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
     979             :         }
     980        6446 :         if (ndr_flags & NDR_BUFFERS) {
     981        6446 :                 if (r->session_info) {
     982        6446 :                         _mem_save_session_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
     983        6446 :                         NDR_PULL_SET_MEM_CTX(ndr, r->session_info, 0);
     984        6446 :                         NDR_CHECK(ndr_pull_auth_session_info(ndr, NDR_SCALARS|NDR_BUFFERS, r->session_info));
     985        6446 :                         NDR_PULL_SET_MEM_CTX(ndr, _mem_save_session_info_0, 0);
     986             :                 }
     987             :         }
     988        6446 :         return NDR_ERR_SUCCESS;
     989             : }
     990             : 
     991           0 : static void ndr_print_flags_auth_session_info_transport(struct ndr_print *ndr, const char *name, int unused, const struct auth_session_info_transport *r)
     992             : {
     993           0 :         ndr_print_auth_session_info_transport(ndr, name, r);
     994           0 : }
     995             : 
     996           0 : _PUBLIC_ void ndr_print_auth_session_info_transport(struct ndr_print *ndr, const char *name, const struct auth_session_info_transport *r)
     997             : {
     998           0 :         ndr_print_struct(ndr, name, "auth_session_info_transport");
     999           0 :         if (r == NULL) { ndr_print_null(ndr); return; }
    1000           0 :         ndr->depth++;
    1001           0 :         ndr_print_ptr(ndr, "session_info", r->session_info);
    1002           0 :         ndr->depth++;
    1003           0 :         if (r->session_info) {
    1004           0 :                 ndr_print_auth_session_info(ndr, "session_info", r->session_info);
    1005             :         }
    1006           0 :         ndr->depth--;
    1007           0 :         ndr->depth--;
    1008             : }
    1009             : 
    1010             : #ifndef SKIP_NDR_TABLE_auth
    1011             : static const struct ndr_interface_public_struct auth_public_structs[] = {
    1012             :         {
    1013             :                 .name = "auth_user_info",
    1014             :                 .struct_size = sizeof(struct auth_user_info ),
    1015             :                 .ndr_push = (ndr_push_flags_fn_t) ndr_push_auth_user_info,
    1016             :                 .ndr_pull = (ndr_pull_flags_fn_t) ndr_pull_auth_user_info,
    1017             :                 .ndr_print = (ndr_print_function_t) ndr_print_flags_auth_user_info,
    1018             :         },
    1019             :         {
    1020             :                 .name = "auth_user_info_torture",
    1021             :                 .struct_size = sizeof(struct auth_user_info_torture ),
    1022             :                 .ndr_push = (ndr_push_flags_fn_t) ndr_push_auth_user_info_torture,
    1023             :                 .ndr_pull = (ndr_pull_flags_fn_t) ndr_pull_auth_user_info_torture,
    1024             :                 .ndr_print = (ndr_print_function_t) ndr_print_flags_auth_user_info_torture,
    1025             :         },
    1026             :         {
    1027             :                 .name = "auth_user_info_unix",
    1028             :                 .struct_size = sizeof(struct auth_user_info_unix ),
    1029             :                 .ndr_push = (ndr_push_flags_fn_t) ndr_push_auth_user_info_unix,
    1030             :                 .ndr_pull = (ndr_pull_flags_fn_t) ndr_pull_auth_user_info_unix,
    1031             :                 .ndr_print = (ndr_print_function_t) ndr_print_flags_auth_user_info_unix,
    1032             :         },
    1033             :         {
    1034             :                 .name = "auth_user_info_dc",
    1035             :                 .struct_size = sizeof(struct auth_user_info_dc ),
    1036             :                 .ndr_push = (ndr_push_flags_fn_t) ndr_push_auth_user_info_dc,
    1037             :                 .ndr_pull = (ndr_pull_flags_fn_t) ndr_pull_auth_user_info_dc,
    1038             :                 .ndr_print = (ndr_print_function_t) ndr_print_flags_auth_user_info_dc,
    1039             :         },
    1040             :         {
    1041             :                 .name = "auth_session_info",
    1042             :                 .struct_size = sizeof(struct auth_session_info ),
    1043             :                 .ndr_push = (ndr_push_flags_fn_t) ndr_push_auth_session_info,
    1044             :                 .ndr_pull = (ndr_pull_flags_fn_t) ndr_pull_auth_session_info,
    1045             :                 .ndr_print = (ndr_print_function_t) ndr_print_flags_auth_session_info,
    1046             :         },
    1047             :         {
    1048             :                 .name = "auth_session_info_transport",
    1049             :                 .struct_size = sizeof(struct auth_session_info_transport ),
    1050             :                 .ndr_push = (ndr_push_flags_fn_t) ndr_push_auth_session_info_transport,
    1051             :                 .ndr_pull = (ndr_pull_flags_fn_t) ndr_pull_auth_session_info_transport,
    1052             :                 .ndr_print = (ndr_print_function_t) ndr_print_flags_auth_session_info_transport,
    1053             :         },
    1054             :         { .name = NULL }
    1055             : };
    1056             : 
    1057             : static const struct ndr_interface_call auth_calls[] = {
    1058             :         { .name = NULL }
    1059             : };
    1060             : 
    1061             : static const char * const auth_endpoint_strings[] = {
    1062             :         "ncacn_np:[\\pipe\\auth]", 
    1063             : };
    1064             : 
    1065             : static const struct ndr_interface_string_array auth_endpoints = {
    1066             :         .count  = 1,
    1067             :         .names  = auth_endpoint_strings
    1068             : };
    1069             : 
    1070             : static const char * const auth_authservice_strings[] = {
    1071             :         "host", 
    1072             : };
    1073             : 
    1074             : static const struct ndr_interface_string_array auth_authservices = {
    1075             :         .count  = 1,
    1076             :         .names  = auth_authservice_strings
    1077             : };
    1078             : 
    1079             : 
    1080             : const struct ndr_interface_table ndr_table_auth = {
    1081             :         .name           = "auth",
    1082             :         .num_calls      = 0,
    1083             :         .calls          = auth_calls,
    1084             :         .num_public_structs     = 6,
    1085             :         .public_structs         = auth_public_structs,
    1086             :         .endpoints      = &auth_endpoints,
    1087             :         .authservices   = &auth_authservices
    1088             : };
    1089             : 
    1090             : #endif /* SKIP_NDR_TABLE_auth */

Generated by: LCOV version 1.13