[SCM] Samba Shared Repository - branch v3-3-test updated -
release-3-2-0pre2-3313-g4439edb
Günther Deschner
gd at samba.org
Fri Jul 18 15:00:23 GMT 2008
The branch, v3-3-test has been updated
via 4439edb0465630091e53fdcc2d647acc7abf1045 (commit)
via 075fad24f787c7b40769870170f2b8c02a7d6ff8 (commit)
via fd7c1d01648d9434a3cdd77b7c026a09ba2437b4 (commit)
from 3228088a0954ac25584d06a681f4e0615dee425c (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test
- Log -----------------------------------------------------------------
commit 4439edb0465630091e53fdcc2d647acc7abf1045
Author: Günther Deschner <gd at samba.org>
Date: Thu Jul 17 13:37:50 2008 +0200
netapi: add new USER_INFO_X structures to public headers.
Guenther
commit 075fad24f787c7b40769870170f2b8c02a7d6ff8
Author: Günther Deschner <gd at samba.org>
Date: Thu Jul 17 11:21:43 2008 +0200
re-run make idl.
Guenther
commit fd7c1d01648d9434a3cdd77b7c026a09ba2437b4
Author: Günther Deschner <gd at samba.org>
Date: Thu Jul 17 11:21:28 2008 +0200
netapi: add more USER_INFO_X structures to IDL.
Guenther
-----------------------------------------------------------------------
Summary of changes:
source/lib/netapi/netapi.h | 140 +++++++
source/librpc/gen_ndr/libnetapi.h | 140 +++++++
source/librpc/gen_ndr/ndr_libnetapi.c | 690 +++++++++++++++++++++++++++++++++
source/librpc/gen_ndr/ndr_libnetapi.h | 24 ++
source/librpc/idl/libnetapi.idl | 140 +++++++
5 files changed, 1134 insertions(+), 0 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source/lib/netapi/netapi.h b/source/lib/netapi/netapi.h
index 3612fa8..2260c28 100644
--- a/source/lib/netapi/netapi.h
+++ b/source/lib/netapi/netapi.h
@@ -94,6 +94,146 @@ struct USER_INFO_1 {
const char * usri1_script_path;
};
+struct USER_INFO_2 {
+ const char * usri2_name;
+ const char * usri2_password;
+ uint32_t usri2_password_age;
+ uint32_t usri2_priv;
+ const char * usri2_home_dir;
+ const char * usri2_comment;
+ uint32_t usri2_flags;
+ const char * usri2_script_path;
+ uint32_t usri2_auth_flags;
+ const char * usri2_full_name;
+ const char * usri2_usr_comment;
+ const char * usri2_parms;
+ const char * usri2_workstations;
+ uint32_t usri2_last_logon;
+ uint32_t usri2_last_logoff;
+ uint32_t usri2_acct_expires;
+ uint32_t usri2_max_storage;
+ uint32_t usri2_units_per_week;
+ uint8_t *usri2_logon_hours;/* [unique] */
+ uint32_t usri2_bad_pw_count;
+ uint32_t usri2_num_logons;
+ const char * usri2_logon_server;
+ uint32_t usri2_country_code;
+ uint32_t usri2_code_page;
+};
+
+struct USER_INFO_3 {
+ const char * usri3_name;
+ uint32_t usri3_password_age;
+ uint32_t usri3_priv;
+ const char * usri3_home_dir;
+ const char * usri3_comment;
+ uint32_t usri3_flags;
+ const char * usri3_script_path;
+ uint32_t usri3_auth_flags;
+ const char * usri3_full_name;
+ const char * usri3_usr_comment;
+ const char * usri3_parms;
+ const char * usri3_workstations;
+ uint32_t usri3_last_logon;
+ uint32_t usri3_last_logoff;
+ uint32_t usri3_acct_expires;
+ uint32_t usri3_max_storage;
+ uint32_t usri3_units_per_week;
+ uint8_t *usri3_logon_hours;/* [unique] */
+ uint32_t usri3_bad_pw_count;
+ uint32_t usri3_num_logons;
+ const char * usri3_logon_server;
+ uint32_t usri3_country_code;
+ uint32_t usri3_code_page;
+ uint32_t usri3_user_id;
+ uint32_t usri3_primary_group_id;
+ const char * usri3_profile;
+ const char * usri3_home_dir_drive;
+ uint32_t usri3_password_expired;
+};
+
+struct USER_INFO_4 {
+ const char * usri4_name;
+ const char * usri4_password;
+ uint32_t usri4_password_age;
+ uint32_t usri4_priv;
+ const char * usri4_home_dir;
+ const char * usri4_comment;
+ uint32_t usri4_flags;
+ const char * usri4_script_path;
+ uint32_t usri4_auth_flags;
+ const char * usri4_full_name;
+ const char * usri4_usr_comment;
+ const char * usri4_parms;
+ const char * usri4_workstations;
+ uint32_t usri4_last_logon;
+ uint32_t usri4_last_logoff;
+ uint32_t usri4_acct_expires;
+ uint32_t usri4_max_storage;
+ uint32_t usri4_units_per_week;
+ uint8_t *usri4_logon_hours;/* [unique] */
+ uint32_t usri4_bad_pw_count;
+ uint32_t usri4_num_logons;
+ const char * usri4_logon_server;
+ uint32_t usri4_country_code;
+ uint32_t usri4_code_page;
+ struct dom_sid *usri4_user_sid;/* [unique] */
+ uint32_t usri4_primary_group_id;
+ const char * usri4_profile;
+ const char * usri4_home_dir_drive;
+ uint32_t usri4_password_expired;
+};
+
+struct USER_INFO_10 {
+ const char * usri10_name;
+ const char * usri10_comment;
+ const char * usri10_usr_comment;
+ const char * usri10_full_name;
+};
+
+struct USER_INFO_11 {
+ const char * usri11_name;
+ const char * usri11_comment;
+ const char * usri11_usr_comment;
+ const char * usri11_full_name;
+ uint32_t usri11_priv;
+ uint32_t usri11_auth_flags;
+ uint32_t usri11_password_age;
+ const char * usri11_home_dir;
+ const char * usri11_parms;
+ uint32_t usri11_last_logon;
+ uint32_t usri11_last_logoff;
+ uint32_t usri11_bad_pw_count;
+ uint32_t usri11_num_logons;
+ const char * usri11_logon_server;
+ uint32_t usri11_country_code;
+ const char * usri11_workstations;
+ uint32_t usri11_max_storage;
+ uint32_t usri11_units_per_week;
+ uint8_t *usri11_logon_hours;/* [unique] */
+ uint32_t usri11_code_page;
+};
+
+struct USER_INFO_20 {
+ const char * usri20_name;
+ const char * usri20_full_name;
+ const char * usri20_comment;
+ uint32_t usri20_flags;
+ uint32_t usri20_user_id;
+};
+
+struct USER_INFO_23 {
+ const char * usri23_name;
+ const char * usri23_full_name;
+ const char * usri23_comment;
+ uint32_t usri23_flags;
+ struct domsid *usri23_user_sid;/* [unique] */
+};
+
+struct USER_INFO_1007 {
+ const char * usri1007_comment;
+};
+
struct NET_DISPLAY_USER {
const char * usri1_name;
const char * usri1_comment;
diff --git a/source/librpc/gen_ndr/libnetapi.h b/source/librpc/gen_ndr/libnetapi.h
index 5c305ac..e5c03b6 100644
--- a/source/librpc/gen_ndr/libnetapi.h
+++ b/source/librpc/gen_ndr/libnetapi.h
@@ -64,6 +64,146 @@ struct USER_INFO_1 {
const char * usri1_script_path;
};
+struct USER_INFO_2 {
+ const char * usri2_name;
+ const char * usri2_password;
+ uint32_t usri2_password_age;
+ uint32_t usri2_priv;
+ const char * usri2_home_dir;
+ const char * usri2_comment;
+ uint32_t usri2_flags;
+ const char * usri2_script_path;
+ uint32_t usri2_auth_flags;
+ const char * usri2_full_name;
+ const char * usri2_usr_comment;
+ const char * usri2_parms;
+ const char * usri2_workstations;
+ uint32_t usri2_last_logon;
+ uint32_t usri2_last_logoff;
+ uint32_t usri2_acct_expires;
+ uint32_t usri2_max_storage;
+ uint32_t usri2_units_per_week;
+ uint8_t *usri2_logon_hours;/* [unique] */
+ uint32_t usri2_bad_pw_count;
+ uint32_t usri2_num_logons;
+ const char * usri2_logon_server;
+ uint32_t usri2_country_code;
+ uint32_t usri2_code_page;
+};
+
+struct USER_INFO_3 {
+ const char * usri3_name;
+ uint32_t usri3_password_age;
+ uint32_t usri3_priv;
+ const char * usri3_home_dir;
+ const char * usri3_comment;
+ uint32_t usri3_flags;
+ const char * usri3_script_path;
+ uint32_t usri3_auth_flags;
+ const char * usri3_full_name;
+ const char * usri3_usr_comment;
+ const char * usri3_parms;
+ const char * usri3_workstations;
+ uint32_t usri3_last_logon;
+ uint32_t usri3_last_logoff;
+ uint32_t usri3_acct_expires;
+ uint32_t usri3_max_storage;
+ uint32_t usri3_units_per_week;
+ uint8_t *usri3_logon_hours;/* [unique] */
+ uint32_t usri3_bad_pw_count;
+ uint32_t usri3_num_logons;
+ const char * usri3_logon_server;
+ uint32_t usri3_country_code;
+ uint32_t usri3_code_page;
+ uint32_t usri3_user_id;
+ uint32_t usri3_primary_group_id;
+ const char * usri3_profile;
+ const char * usri3_home_dir_drive;
+ uint32_t usri3_password_expired;
+};
+
+struct USER_INFO_4 {
+ const char * usri4_name;
+ const char * usri4_password;
+ uint32_t usri4_password_age;
+ uint32_t usri4_priv;
+ const char * usri4_home_dir;
+ const char * usri4_comment;
+ uint32_t usri4_flags;
+ const char * usri4_script_path;
+ uint32_t usri4_auth_flags;
+ const char * usri4_full_name;
+ const char * usri4_usr_comment;
+ const char * usri4_parms;
+ const char * usri4_workstations;
+ uint32_t usri4_last_logon;
+ uint32_t usri4_last_logoff;
+ uint32_t usri4_acct_expires;
+ uint32_t usri4_max_storage;
+ uint32_t usri4_units_per_week;
+ uint8_t *usri4_logon_hours;/* [unique] */
+ uint32_t usri4_bad_pw_count;
+ uint32_t usri4_num_logons;
+ const char * usri4_logon_server;
+ uint32_t usri4_country_code;
+ uint32_t usri4_code_page;
+ struct dom_sid *usri4_user_sid;/* [unique] */
+ uint32_t usri4_primary_group_id;
+ const char * usri4_profile;
+ const char * usri4_home_dir_drive;
+ uint32_t usri4_password_expired;
+};
+
+struct USER_INFO_10 {
+ const char * usri10_name;
+ const char * usri10_comment;
+ const char * usri10_usr_comment;
+ const char * usri10_full_name;
+};
+
+struct USER_INFO_11 {
+ const char * usri11_name;
+ const char * usri11_comment;
+ const char * usri11_usr_comment;
+ const char * usri11_full_name;
+ uint32_t usri11_priv;
+ uint32_t usri11_auth_flags;
+ uint32_t usri11_password_age;
+ const char * usri11_home_dir;
+ const char * usri11_parms;
+ uint32_t usri11_last_logon;
+ uint32_t usri11_last_logoff;
+ uint32_t usri11_bad_pw_count;
+ uint32_t usri11_num_logons;
+ const char * usri11_logon_server;
+ uint32_t usri11_country_code;
+ const char * usri11_workstations;
+ uint32_t usri11_max_storage;
+ uint32_t usri11_units_per_week;
+ uint8_t *usri11_logon_hours;/* [unique] */
+ uint32_t usri11_code_page;
+};
+
+struct USER_INFO_20 {
+ const char * usri20_name;
+ const char * usri20_full_name;
+ const char * usri20_comment;
+ uint32_t usri20_flags;
+ uint32_t usri20_user_id;
+};
+
+struct USER_INFO_23 {
+ const char * usri23_name;
+ const char * usri23_full_name;
+ const char * usri23_comment;
+ uint32_t usri23_flags;
+ struct domsid *usri23_user_sid;/* [unique] */
+};
+
+struct USER_INFO_1007 {
+ const char * usri1007_comment;
+};
+
struct NET_DISPLAY_USER {
const char * usri1_name;
const char * usri1_comment;
diff --git a/source/librpc/gen_ndr/ndr_libnetapi.c b/source/librpc/gen_ndr/ndr_libnetapi.c
index d2453c6..246b5fb 100644
--- a/source/librpc/gen_ndr/ndr_libnetapi.c
+++ b/source/librpc/gen_ndr/ndr_libnetapi.c
@@ -252,6 +252,696 @@ _PUBLIC_ void ndr_print_USER_INFO_1(struct ndr_print *ndr, const char *name, con
ndr->depth--;
}
+_PUBLIC_ enum ndr_err_code ndr_push_USER_INFO_2(struct ndr_push *ndr, int ndr_flags, const struct USER_INFO_2 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri2_name));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri2_password));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri2_password_age));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri2_priv));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri2_home_dir));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri2_comment));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri2_flags));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri2_script_path));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri2_auth_flags));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri2_full_name));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri2_usr_comment));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri2_parms));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri2_workstations));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri2_last_logon));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri2_last_logoff));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri2_acct_expires));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri2_max_storage));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri2_units_per_week));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->usri2_logon_hours));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri2_bad_pw_count));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri2_num_logons));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri2_logon_server));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri2_country_code));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri2_code_page));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->usri2_logon_hours) {
+ NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, *r->usri2_logon_hours));
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ enum ndr_err_code ndr_pull_USER_INFO_2(struct ndr_pull *ndr, int ndr_flags, struct USER_INFO_2 *r)
+{
+ uint32_t _ptr_usri2_logon_hours;
+ TALLOC_CTX *_mem_save_usri2_logon_hours_0;
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri2_name));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri2_password));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri2_password_age));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri2_priv));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri2_home_dir));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri2_comment));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri2_flags));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri2_script_path));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri2_auth_flags));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri2_full_name));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri2_usr_comment));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri2_parms));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri2_workstations));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri2_last_logon));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri2_last_logoff));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri2_acct_expires));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri2_max_storage));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri2_units_per_week));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_usri2_logon_hours));
+ if (_ptr_usri2_logon_hours) {
+ NDR_PULL_ALLOC(ndr, r->usri2_logon_hours);
+ } else {
+ r->usri2_logon_hours = NULL;
+ }
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri2_bad_pw_count));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri2_num_logons));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri2_logon_server));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri2_country_code));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri2_code_page));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->usri2_logon_hours) {
+ _mem_save_usri2_logon_hours_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ NDR_PULL_SET_MEM_CTX(ndr, r->usri2_logon_hours, 0);
+ NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, r->usri2_logon_hours));
+ NDR_PULL_SET_MEM_CTX(ndr, _mem_save_usri2_logon_hours_0, 0);
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ void ndr_print_USER_INFO_2(struct ndr_print *ndr, const char *name, const struct USER_INFO_2 *r)
+{
+ ndr_print_struct(ndr, name, "USER_INFO_2");
+ ndr->depth++;
+ ndr_print_string(ndr, "usri2_name", r->usri2_name);
+ ndr_print_string(ndr, "usri2_password", r->usri2_password);
+ ndr_print_uint32(ndr, "usri2_password_age", r->usri2_password_age);
+ ndr_print_uint32(ndr, "usri2_priv", r->usri2_priv);
+ ndr_print_string(ndr, "usri2_home_dir", r->usri2_home_dir);
+ ndr_print_string(ndr, "usri2_comment", r->usri2_comment);
+ ndr_print_uint32(ndr, "usri2_flags", r->usri2_flags);
+ ndr_print_string(ndr, "usri2_script_path", r->usri2_script_path);
+ ndr_print_uint32(ndr, "usri2_auth_flags", r->usri2_auth_flags);
+ ndr_print_string(ndr, "usri2_full_name", r->usri2_full_name);
+ ndr_print_string(ndr, "usri2_usr_comment", r->usri2_usr_comment);
+ ndr_print_string(ndr, "usri2_parms", r->usri2_parms);
+ ndr_print_string(ndr, "usri2_workstations", r->usri2_workstations);
+ ndr_print_uint32(ndr, "usri2_last_logon", r->usri2_last_logon);
+ ndr_print_uint32(ndr, "usri2_last_logoff", r->usri2_last_logoff);
+ ndr_print_uint32(ndr, "usri2_acct_expires", r->usri2_acct_expires);
+ ndr_print_uint32(ndr, "usri2_max_storage", r->usri2_max_storage);
+ ndr_print_uint32(ndr, "usri2_units_per_week", r->usri2_units_per_week);
+ ndr_print_ptr(ndr, "usri2_logon_hours", r->usri2_logon_hours);
+ ndr->depth++;
+ if (r->usri2_logon_hours) {
+ ndr_print_uint8(ndr, "usri2_logon_hours", *r->usri2_logon_hours);
+ }
+ ndr->depth--;
+ ndr_print_uint32(ndr, "usri2_bad_pw_count", r->usri2_bad_pw_count);
+ ndr_print_uint32(ndr, "usri2_num_logons", r->usri2_num_logons);
+ ndr_print_string(ndr, "usri2_logon_server", r->usri2_logon_server);
+ ndr_print_uint32(ndr, "usri2_country_code", r->usri2_country_code);
+ ndr_print_uint32(ndr, "usri2_code_page", r->usri2_code_page);
+ ndr->depth--;
+}
+
+_PUBLIC_ enum ndr_err_code ndr_push_USER_INFO_3(struct ndr_push *ndr, int ndr_flags, const struct USER_INFO_3 *r)
+{
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_push_align(ndr, 4));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri3_name));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_password_age));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_priv));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri3_home_dir));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri3_comment));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_flags));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri3_script_path));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_auth_flags));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri3_full_name));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri3_usr_comment));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri3_parms));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri3_workstations));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_last_logon));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_last_logoff));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_acct_expires));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_max_storage));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_units_per_week));
+ NDR_CHECK(ndr_push_unique_ptr(ndr, r->usri3_logon_hours));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_bad_pw_count));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_num_logons));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri3_logon_server));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_country_code));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_code_page));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_user_id));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_primary_group_id));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri3_profile));
+ NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->usri3_home_dir_drive));
+ NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->usri3_password_expired));
+ }
+ if (ndr_flags & NDR_BUFFERS) {
+ if (r->usri3_logon_hours) {
+ NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, *r->usri3_logon_hours));
+ }
+ }
+ return NDR_ERR_SUCCESS;
+}
+
+_PUBLIC_ enum ndr_err_code ndr_pull_USER_INFO_3(struct ndr_pull *ndr, int ndr_flags, struct USER_INFO_3 *r)
+{
+ uint32_t _ptr_usri3_logon_hours;
+ TALLOC_CTX *_mem_save_usri3_logon_hours_0;
+ if (ndr_flags & NDR_SCALARS) {
+ NDR_CHECK(ndr_pull_align(ndr, 4));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri3_name));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri3_password_age));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri3_priv));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri3_home_dir));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri3_comment));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri3_flags));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri3_script_path));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri3_auth_flags));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri3_full_name));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri3_usr_comment));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri3_parms));
+ NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->usri3_workstations));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri3_last_logon));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri3_last_logoff));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri3_acct_expires));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri3_max_storage));
+ NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->usri3_units_per_week));
+ NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_usri3_logon_hours));
+ if (_ptr_usri3_logon_hours) {
+ NDR_PULL_ALLOC(ndr, r->usri3_logon_hours);
+ } else {
+ r->usri3_logon_hours = NULL;
+ }
--
Samba Shared Repository
More information about the samba-cvs
mailing list