[Pkg-samba-maint] r3708 - branches/samba/squeeze/debian/patches

bubulle at alioth.debian.org bubulle at alioth.debian.org
Mon Mar 14 21:06:06 UTC 2011


Author: bubulle
Date: 2011-03-14 21:06:04 +0000 (Mon, 14 Mar 2011)
New Revision: 3708

Added:
   branches/samba/squeeze/debian/patches/bug_611177-617429_upstream_7567_0001-rerun-make-samba3-idl.patch
   branches/samba/squeeze/debian/patches/bug_611177-617429_upstream_7567_0010-librpc-ndr-handle-NOALIGN-flag-for-relative-pointers.patch
Removed:
   branches/samba/squeeze/debian/patches/bug_611177-617429_upstream_7567_0001-rerun-make-samba3-idl.patch
Modified:
   branches/samba/squeeze/debian/patches/series
Log:
Complete the series of patches for upstream #7567


Deleted: branches/samba/squeeze/debian/patches/bug_611177-617429_upstream_7567_0001-rerun-make-samba3-idl.patch
===================================================================
--- branches/samba/squeeze/debian/patches/bug_611177-617429_upstream_7567_0001-rerun-make-samba3-idl.patch	2011-03-13 07:12:00 UTC (rev 3707)
+++ branches/samba/squeeze/debian/patches/bug_611177-617429_upstream_7567_0001-rerun-make-samba3-idl.patch	2011-03-14 21:06:04 UTC (rev 3708)
@@ -1,5993 +0,0 @@
-From 1a58a34d41a42baa696fa543cd8a9d79794886a3 Mon Sep 17 00:00:00 2001
-From: Stefan Metzmacher <metze at samba.org>
-Date: Wed, 2 Mar 2011 10:14:54 +0100
-Subject: [PATCH 1/9] rerun 'make samba3-idl'
-
-metze
-
-The last 10 patches address bug #7567 (printing from Windows 7 fails with
-0x000003e6 (in AD w2k8r2 controlled domain)).
-(cherry picked from commit c81256b04ead01f0d44c8a235d2ac793b7a51364)
-(cherry picked from commit cbfda3a086e27b6efa7db6ab1d41ef96fe04d171)
----
- librpc/gen_ndr/drsblobs.h     |    4 +-
- librpc/gen_ndr/eventlog.h     |   12 +-
- librpc/gen_ndr/misc.h         |    4 +-
- librpc/gen_ndr/nbt.h          |   26 +-
- librpc/gen_ndr/ndr_drsblobs.c |   16 +-
- librpc/gen_ndr/ndr_eventlog.c |   24 +-
- librpc/gen_ndr/ndr_misc.c     |   12 +-
- librpc/gen_ndr/ndr_nbt.c      |   44 +-
- librpc/gen_ndr/ndr_netlogon.c |    8 +-
- librpc/gen_ndr/ndr_spoolss.c  | 1056 ++++++++++++++++++++--------------------
- librpc/gen_ndr/ndr_svcctl.c   |   40 +-
- librpc/gen_ndr/netlogon.h     |    4 +-
- librpc/gen_ndr/spoolss.h      |  304 ++++++------
- librpc/gen_ndr/svcctl.h       |   10 +-
- 14 files changed, 782 insertions(+), 782 deletions(-)
-
-diff --git a/librpc/gen_ndr/drsblobs.h b/librpc/gen_ndr/drsblobs.h
-index 64f6ce8..f4adc57 100644
---- a/librpc/gen_ndr/drsblobs.h
-+++ b/librpc/gen_ndr/drsblobs.h
-@@ -84,9 +84,9 @@ struct repsFromTo1 {
- 
- struct repsFromTo2OtherInfo {
- 	uint32_t __ndr_size;/* [value(ndr_size_repsFromTo2OtherInfo(this,ndr->iconv_convenience,ndr->flags))] */
--	const char * dns_name1;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * dns_name1;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t unknown1;
--	const char * dns_name2;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * dns_name2;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint64_t unknown2;
- }/* [relative_base,gensize,public] */;
- 
-diff --git a/librpc/gen_ndr/eventlog.h b/librpc/gen_ndr/eventlog.h
-index dc2e877..2ff0cbc 100644
---- a/librpc/gen_ndr/eventlog.h
-+++ b/librpc/gen_ndr/eventlog.h
-@@ -59,13 +59,13 @@ struct eventlog_Record_tdb {
- 	uint32_t data_length;/* [value(data.length)] */
- 	uint32_t data_offset;
- 	uint32_t source_name_len;/* [value(2*strlen_m_term(source_name))] */
--	const char * source_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * source_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t computer_name_len;/* [value(2*strlen_m_term(computer_name))] */
--	const char * computer_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * computer_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t sid_padding;
- 	DATA_BLOB sid;
- 	uint32_t strings_len;/* [value(2*ndr_size_string_array(strings,num_of_strings,LIBNDR_FLAG_STR_NULLTERM))] */
--	const char * *strings;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * *strings;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	DATA_BLOB data;
- 	uint32_t padding;
- }/* [public,flag(LIBNDR_FLAG_NOALIGN|LIBNDR_PRINT_ARRAY_HEX)] */;
-@@ -119,10 +119,10 @@ struct EVENTLOGRECORD {
- 	uint32_t UserSidOffset;/* [value(56+2*(strlen_m_term(SourceName)+strlen_m_term(Computername)))] */
- 	uint32_t DataLength;
- 	uint32_t DataOffset;/* [value(56+2*(strlen_m_term(SourceName)+strlen_m_term(Computername))+UserSidLength+(2*ndr_size_string_array(Strings,NumStrings,LIBNDR_FLAG_STR_NULLTERM)))] */
--	const char * SourceName;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * Computername;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * SourceName;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * Computername;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	struct dom_sid0 UserSid;/* [subcontext_size(UserSidLength),subcontext(0),flag(LIBNDR_FLAG_ALIGN4)] */
--	const char * *Strings;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * *Strings;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint8_t *Data;/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */
- 	const char * Pad;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
- 	uint32_t Length2;/* [value(Length)] */
-diff --git a/librpc/gen_ndr/misc.h b/librpc/gen_ndr/misc.h
-index 6672c61..90330b3 100644
---- a/librpc/gen_ndr/misc.h
-+++ b/librpc/gen_ndr/misc.h
-@@ -84,10 +84,10 @@ enum winreg_Type
- ;
- 
- union winreg_Data {
--	const char * string;/* [flag(LIBNDR_FLAG_STR_NULLTERM),case(REG_SZ)] */
-+	const char * string;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2),case(REG_SZ)] */
- 	DATA_BLOB binary;/* [flag(LIBNDR_FLAG_REMAINING),case(REG_BINARY)] */
- 	uint32_t value;/* [case(REG_DWORD)] */
--	const char ** string_array;/* [flag(LIBNDR_FLAG_STR_NULLTERM),case(REG_MULTI_SZ)] */
-+	const char ** string_array;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2),case(REG_MULTI_SZ)] */
- 	DATA_BLOB data;/* [flag(LIBNDR_FLAG_REMAINING),default] */
- }/* [public,nodiscriminant,flag(LIBNDR_FLAG_LITTLE_ENDIAN)] */;
- 
-diff --git a/librpc/gen_ndr/nbt.h b/librpc/gen_ndr/nbt.h
-index ec234e1..31ea414 100644
---- a/librpc/gen_ndr/nbt.h
-+++ b/librpc/gen_ndr/nbt.h
-@@ -456,8 +456,8 @@ enum netlogon_command
- 
- struct NETLOGON_SAM_LOGON_REQUEST {
- 	uint16_t request_count;
--	const char * computer_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * user_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * computer_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * user_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	const char * mailslot_name;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
- 	uint32_t acct_control;
- 	uint32_t sid_size;/* [value(ndr_size_dom_sid0(&sid,ndr->flags))] */
-@@ -470,9 +470,9 @@ struct NETLOGON_SAM_LOGON_REQUEST {
- 
- struct NETLOGON_SAM_LOGON_RESPONSE_NT40 {
- 	enum netlogon_command command;
--	const char * server;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * user_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * domain;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * server;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * user_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * domain;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t nt_version;
- 	uint16_t lmnt_token;
- 	uint16_t lm20_token;
-@@ -480,9 +480,9 @@ struct NETLOGON_SAM_LOGON_RESPONSE_NT40 {
- 
- struct NETLOGON_SAM_LOGON_RESPONSE {
- 	enum netlogon_command command;
--	const char * pdc_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * user_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * domain_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * pdc_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * user_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * domain_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	struct GUID domain_uuid;
- 	struct GUID zero_uuid;
- 	const char * forest;
-@@ -520,7 +520,7 @@ struct nbt_netlogon_query_for_pdc {
- 	const char * computer_name;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
- 	const char * mailslot_name;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
- 	DATA_BLOB _pad;/* [flag(LIBNDR_FLAG_ALIGN2)] */
--	const char * unicode_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * unicode_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t nt_version;
- 	uint16_t lmnt_token;
- 	uint16_t lm20_token;
-@@ -530,8 +530,8 @@ struct nbt_netlogon_response_from_pdc {
- 	enum netlogon_command command;
- 	const char * pdc_name;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
- 	DATA_BLOB _pad;/* [flag(LIBNDR_FLAG_ALIGN2)] */
--	const char * unicode_pdc_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * domain_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * unicode_pdc_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * domain_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t nt_version;
- 	uint16_t lmnt_token;
- 	uint16_t lm20_token;
-@@ -551,8 +551,8 @@ struct NETLOGON_DB_CHANGE {
- 	const char * pdc_name;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
- 	const char * domain;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
- 	DATA_BLOB _pad;/* [flag(LIBNDR_FLAG_ALIGN2)] */
--	const char * unicode_pdc_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * unicode_domain;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * unicode_pdc_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * unicode_domain;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t db_count;
- 	struct nbt_db_change_info *dbchange;
- 	uint32_t sid_size;/* [value(ndr_size_dom_sid0(&sid,ndr->flags))] */
-diff --git a/librpc/gen_ndr/ndr_drsblobs.c b/librpc/gen_ndr/ndr_drsblobs.c
-index 33ebf4c..948fdc5 100644
---- a/librpc/gen_ndr/ndr_drsblobs.c
-+++ b/librpc/gen_ndr/ndr_drsblobs.c
-@@ -638,14 +638,14 @@ _PUBLIC_ enum ndr_err_code ndr_push_repsFromTo2OtherInfo(struct ndr_push *ndr, i
- 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_size_repsFromTo2OtherInfo(r, ndr->iconv_convenience, ndr->flags)));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->dns_name1));
- 			ndr->flags = _flags_save_string;
- 		}
- 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown1));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->dns_name2));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -656,7 +656,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_repsFromTo2OtherInfo(struct ndr_push *ndr, i
- 		NDR_CHECK(ndr_push_setup_relative_base_offset2(ndr, r));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->dns_name1) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->dns_name1));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->dns_name1));
-@@ -666,7 +666,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_repsFromTo2OtherInfo(struct ndr_push *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->dns_name2) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->dns_name2));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->dns_name2));
-@@ -692,7 +692,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_repsFromTo2OtherInfo(struct ndr_pull *ndr, i
- 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->__ndr_size));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dns_name1));
- 			if (_ptr_dns_name1) {
- 				NDR_PULL_ALLOC(ndr, r->dns_name1);
-@@ -705,7 +705,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_repsFromTo2OtherInfo(struct ndr_pull *ndr, i
- 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown1));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dns_name2));
- 			if (_ptr_dns_name2) {
- 				NDR_PULL_ALLOC(ndr, r->dns_name2);
-@@ -722,7 +722,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_repsFromTo2OtherInfo(struct ndr_pull *ndr, i
- 		NDR_CHECK(ndr_pull_setup_relative_base_offset2(ndr, r));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->dns_name1) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -737,7 +737,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_repsFromTo2OtherInfo(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->dns_name2) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-diff --git a/librpc/gen_ndr/ndr_eventlog.c b/librpc/gen_ndr/ndr_eventlog.c
-index a7e502c..e0ac6d2 100644
---- a/librpc/gen_ndr/ndr_eventlog.c
-+++ b/librpc/gen_ndr/ndr_eventlog.c
-@@ -121,14 +121,14 @@ _PUBLIC_ enum ndr_err_code ndr_push_eventlog_Record_tdb(struct ndr_push *ndr, in
- 			NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2 * strlen_m_term(r->source_name)));
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->source_name));
- 				ndr->flags = _flags_save_string;
- 			}
- 			NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2 * strlen_m_term(r->computer_name)));
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->computer_name));
- 				ndr->flags = _flags_save_string;
- 			}
-@@ -137,7 +137,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_eventlog_Record_tdb(struct ndr_push *ndr, in
- 			NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2 * ndr_size_string_array(r->strings, r->num_of_strings, LIBNDR_FLAG_STR_NULLTERM)));
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				for (cntr_strings_0 = 0; cntr_strings_0 < r->num_of_strings; cntr_strings_0++) {
- 					NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->strings[cntr_strings_0]));
- 				}
-@@ -185,14 +185,14 @@ _PUBLIC_ enum ndr_err_code ndr_pull_eventlog_Record_tdb(struct ndr_pull *ndr, in
- 			NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->source_name_len));
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->source_name));
- 				ndr->flags = _flags_save_string;
- 			}
- 			NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->computer_name_len));
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->computer_name));
- 				ndr->flags = _flags_save_string;
- 			}
-@@ -201,7 +201,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_eventlog_Record_tdb(struct ndr_pull *ndr, in
- 			NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->strings_len));
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_PULL_ALLOC_N(ndr, r->strings, r->num_of_strings);
- 				_mem_save_strings_0 = NDR_PULL_GET_MEM_CTX(ndr);
- 				NDR_PULL_SET_MEM_CTX(ndr, r->strings, 0);
-@@ -385,13 +385,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_EVENTLOGRECORD(struct ndr_push *ndr, int ndr
- 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 56 + 2 * (strlen_m_term(r->SourceName) + strlen_m_term(r->Computername)) + ndr_size_dom_sid0(&r->UserSid, ndr->flags) + (2 * ndr_size_string_array(r->Strings, r->NumStrings, LIBNDR_FLAG_STR_NULLTERM))));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->SourceName));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->Computername));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -408,7 +408,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_EVENTLOGRECORD(struct ndr_push *ndr, int ndr
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			for (cntr_Strings_0 = 0; cntr_Strings_0 < r->NumStrings; cntr_Strings_0++) {
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->Strings[cntr_Strings_0]));
- 			}
-@@ -463,13 +463,13 @@ _PUBLIC_ enum ndr_err_code ndr_pull_EVENTLOGRECORD(struct ndr_pull *ndr, int ndr
- 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->DataOffset));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->SourceName));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->Computername));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -486,7 +486,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_EVENTLOGRECORD(struct ndr_pull *ndr, int ndr
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_PULL_ALLOC_N(ndr, r->Strings, r->NumStrings);
- 			_mem_save_Strings_0 = NDR_PULL_GET_MEM_CTX(ndr);
- 			NDR_PULL_SET_MEM_CTX(ndr, r->Strings, 0);
-diff --git a/librpc/gen_ndr/ndr_misc.c b/librpc/gen_ndr/ndr_misc.c
-index 1f4d0c9..99cb045 100644
---- a/librpc/gen_ndr/ndr_misc.c
-+++ b/librpc/gen_ndr/ndr_misc.c
-@@ -226,7 +226,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_winreg_Data(struct ndr_push *ndr, int ndr_fl
- 				case REG_SZ: {
- 					{
- 						uint32_t _flags_save_string = ndr->flags;
--						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 						NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->string));
- 						ndr->flags = _flags_save_string;
- 					}
-@@ -235,7 +235,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_winreg_Data(struct ndr_push *ndr, int ndr_fl
- 				case REG_EXPAND_SZ: {
- 					{
- 						uint32_t _flags_save_string = ndr->flags;
--						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 						NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->string));
- 						ndr->flags = _flags_save_string;
- 					}
-@@ -266,7 +266,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_winreg_Data(struct ndr_push *ndr, int ndr_fl
- 				case REG_MULTI_SZ: {
- 					{
- 						uint32_t _flags_save_string_array = ndr->flags;
--						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 						NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->string_array));
- 						ndr->flags = _flags_save_string_array;
- 					}
-@@ -333,7 +333,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_winreg_Data(struct ndr_pull *ndr, int ndr_fl
- 				case REG_SZ: {
- 					{
- 						uint32_t _flags_save_string = ndr->flags;
--						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 						NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->string));
- 						ndr->flags = _flags_save_string;
- 					}
-@@ -342,7 +342,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_winreg_Data(struct ndr_pull *ndr, int ndr_fl
- 				case REG_EXPAND_SZ: {
- 					{
- 						uint32_t _flags_save_string = ndr->flags;
--						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 						NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->string));
- 						ndr->flags = _flags_save_string;
- 					}
-@@ -373,7 +373,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_winreg_Data(struct ndr_pull *ndr, int ndr_fl
- 				case REG_MULTI_SZ: {
- 					{
- 						uint32_t _flags_save_string_array = ndr->flags;
--						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 						NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->string_array));
- 						ndr->flags = _flags_save_string_array;
- 					}
-diff --git a/librpc/gen_ndr/ndr_nbt.c b/librpc/gen_ndr/ndr_nbt.c
-index 491dfd6..bffb25a 100644
---- a/librpc/gen_ndr/ndr_nbt.c
-+++ b/librpc/gen_ndr/ndr_nbt.c
-@@ -1749,19 +1749,19 @@ _PUBLIC_ enum ndr_err_code ndr_push_NETLOGON_SAM_LOGON_RESPONSE_NT40(struct ndr_
- 			NDR_CHECK(ndr_push_netlogon_command(ndr, NDR_SCALARS, r->command));
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->server));
- 				ndr->flags = _flags_save_string;
- 			}
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->user_name));
- 				ndr->flags = _flags_save_string;
- 			}
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->domain));
- 				ndr->flags = _flags_save_string;
- 			}
-@@ -1787,19 +1787,19 @@ _PUBLIC_ enum ndr_err_code ndr_pull_NETLOGON_SAM_LOGON_RESPONSE_NT40(struct ndr_
- 			NDR_CHECK(ndr_pull_netlogon_command(ndr, NDR_SCALARS, &r->command));
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->server));
- 				ndr->flags = _flags_save_string;
- 			}
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->user_name));
- 				ndr->flags = _flags_save_string;
- 			}
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->domain));
- 				ndr->flags = _flags_save_string;
- 			}
-@@ -1844,19 +1844,19 @@ _PUBLIC_ enum ndr_err_code ndr_push_NETLOGON_SAM_LOGON_RESPONSE(struct ndr_push
- 			NDR_CHECK(ndr_push_netlogon_command(ndr, NDR_SCALARS, r->command));
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->pdc_name));
- 				ndr->flags = _flags_save_string;
- 			}
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->user_name));
- 				ndr->flags = _flags_save_string;
- 			}
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->domain_name));
- 				ndr->flags = _flags_save_string;
- 			}
-@@ -1889,19 +1889,19 @@ _PUBLIC_ enum ndr_err_code ndr_pull_NETLOGON_SAM_LOGON_RESPONSE(struct ndr_pull
- 			NDR_CHECK(ndr_pull_netlogon_command(ndr, NDR_SCALARS, &r->command));
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->pdc_name));
- 				ndr->flags = _flags_save_string;
- 			}
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->user_name));
- 				ndr->flags = _flags_save_string;
- 			}
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->domain_name));
- 				ndr->flags = _flags_save_string;
- 			}
-@@ -2082,7 +2082,7 @@ static enum ndr_err_code ndr_push_nbt_netlogon_query_for_pdc(struct ndr_push *nd
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->unicode_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -2120,7 +2120,7 @@ static enum ndr_err_code ndr_pull_nbt_netlogon_query_for_pdc(struct ndr_pull *nd
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->unicode_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -2170,13 +2170,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_nbt_netlogon_response_from_pdc(struct ndr_pu
- 			}
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->unicode_pdc_name));
- 				ndr->flags = _flags_save_string;
- 			}
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->domain_name));
- 				ndr->flags = _flags_save_string;
- 			}
-@@ -2214,13 +2214,13 @@ _PUBLIC_ enum ndr_err_code ndr_pull_nbt_netlogon_response_from_pdc(struct ndr_pu
- 			}
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->unicode_pdc_name));
- 				ndr->flags = _flags_save_string;
- 			}
- 			{
- 				uint32_t _flags_save_string = ndr->flags;
--				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->domain_name));
- 				ndr->flags = _flags_save_string;
- 			}
-@@ -2323,13 +2323,13 @@ static enum ndr_err_code ndr_push_NETLOGON_DB_CHANGE(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->unicode_pdc_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->unicode_domain));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -2383,13 +2383,13 @@ static enum ndr_err_code ndr_pull_NETLOGON_DB_CHANGE(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->unicode_pdc_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->unicode_domain));
- 			ndr->flags = _flags_save_string;
- 		}
-diff --git a/librpc/gen_ndr/ndr_netlogon.c b/librpc/gen_ndr/ndr_netlogon.c
-index 8773439..0ea551d 100644
---- a/librpc/gen_ndr/ndr_netlogon.c
-+++ b/librpc/gen_ndr/ndr_netlogon.c
-@@ -6712,7 +6712,7 @@ static enum ndr_err_code ndr_push_netr_ChangeLogObject(struct ndr_push *ndr, int
- 			case NETR_CHANGELOG_NAME_INCLUDED: {
- 				{
- 					uint32_t _flags_save_string = ndr->flags;
--					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 					NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->object_name));
- 					ndr->flags = _flags_save_string;
- 				}
-@@ -6754,7 +6754,7 @@ static enum ndr_err_code ndr_pull_netr_ChangeLogObject(struct ndr_pull *ndr, int
- 			case NETR_CHANGELOG_NAME_INCLUDED: {
- 				{
- 					uint32_t _flags_save_string = ndr->flags;
--					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 					NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->object_name));
- 					ndr->flags = _flags_save_string;
- 				}
-@@ -7519,7 +7519,7 @@ static enum ndr_err_code ndr_push_netr_OsVersionInfoEx(struct ndr_push *ndr, int
- 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->PlatformId));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			{
- 				struct ndr_push *_ndr_CSDVersion;
- 				NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_CSDVersion, 0, 256));
-@@ -7551,7 +7551,7 @@ static enum ndr_err_code ndr_pull_netr_OsVersionInfoEx(struct ndr_pull *ndr, int
- 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->PlatformId));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			{
- 				struct ndr_pull *_ndr_CSDVersion;
- 				NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_CSDVersion, 0, 256));
-diff --git a/librpc/gen_ndr/ndr_spoolss.c b/librpc/gen_ndr/ndr_spoolss.c
-index af555d7..41f994b 100644
---- a/librpc/gen_ndr/ndr_spoolss.c
-+++ b/librpc/gen_ndr/ndr_spoolss.c
-@@ -314,13 +314,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo0(struct ndr_push *ndr, i
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->printername));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->servername));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -356,7 +356,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo0(struct ndr_push *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->printername) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->printername));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->printername));
-@@ -366,7 +366,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo0(struct ndr_push *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->servername) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->servername));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->servername));
-@@ -388,7 +388,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo0(struct ndr_pull *ndr, i
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printername));
- 			if (_ptr_printername) {
- 				NDR_PULL_ALLOC(ndr, r->printername);
-@@ -400,7 +400,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo0(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_servername));
- 			if (_ptr_servername) {
- 				NDR_PULL_ALLOC(ndr, r->servername);
-@@ -442,7 +442,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo0(struct ndr_pull *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->printername) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -457,7 +457,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo0(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->servername) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1286,19 +1286,19 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo1(struct ndr_push *ndr, i
- 		NDR_CHECK(ndr_push_spoolss_PrinterAttributes(ndr, NDR_SCALARS, r->flags));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->description));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->comment));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -1307,7 +1307,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo1(struct ndr_push *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->description) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->description));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->description));
-@@ -1317,7 +1317,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo1(struct ndr_push *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->name));
-@@ -1327,7 +1327,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo1(struct ndr_push *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->comment) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->comment));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->comment));
-@@ -1352,7 +1352,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo1(struct ndr_pull *ndr, i
- 		NDR_CHECK(ndr_pull_spoolss_PrinterAttributes(ndr, NDR_SCALARS, &r->flags));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_description));
- 			if (_ptr_description) {
- 				NDR_PULL_ALLOC(ndr, r->description);
-@@ -1364,7 +1364,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo1(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
- 			if (_ptr_name) {
- 				NDR_PULL_ALLOC(ndr, r->name);
-@@ -1376,7 +1376,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo1(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
- 			if (_ptr_comment) {
- 				NDR_PULL_ALLOC(ndr, r->comment);
-@@ -1391,7 +1391,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo1(struct ndr_pull *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->description) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1406,7 +1406,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo1(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1421,7 +1421,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo1(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->comment) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1501,7 +1501,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_servername));
- 			if (_ptr_servername) {
- 				NDR_PULL_ALLOC(ndr, r->servername);
-@@ -1513,7 +1513,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printername));
- 			if (_ptr_printername) {
- 				NDR_PULL_ALLOC(ndr, r->printername);
-@@ -1525,7 +1525,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sharename));
- 			if (_ptr_sharename) {
- 				NDR_PULL_ALLOC(ndr, r->sharename);
-@@ -1537,7 +1537,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_portname));
- 			if (_ptr_portname) {
- 				NDR_PULL_ALLOC(ndr, r->portname);
-@@ -1549,7 +1549,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_drivername));
- 			if (_ptr_drivername) {
- 				NDR_PULL_ALLOC(ndr, r->drivername);
-@@ -1561,7 +1561,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
- 			if (_ptr_comment) {
- 				NDR_PULL_ALLOC(ndr, r->comment);
-@@ -1573,7 +1573,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_location));
- 			if (_ptr_location) {
- 				NDR_PULL_ALLOC(ndr, r->location);
-@@ -1597,7 +1597,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sepfile));
- 			if (_ptr_sepfile) {
- 				NDR_PULL_ALLOC(ndr, r->sepfile);
-@@ -1609,7 +1609,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printprocessor));
- 			if (_ptr_printprocessor) {
- 				NDR_PULL_ALLOC(ndr, r->printprocessor);
-@@ -1621,7 +1621,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_datatype));
- 			if (_ptr_datatype) {
- 				NDR_PULL_ALLOC(ndr, r->datatype);
-@@ -1633,7 +1633,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parameters));
- 			if (_ptr_parameters) {
- 				NDR_PULL_ALLOC(ndr, r->parameters);
-@@ -1671,7 +1671,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->servername) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1686,7 +1686,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->printername) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1701,7 +1701,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->sharename) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1716,7 +1716,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->portname) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1731,7 +1731,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->drivername) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1746,7 +1746,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->comment) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1761,7 +1761,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->location) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1796,7 +1796,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->sepfile) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1811,7 +1811,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->printprocessor) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1826,7 +1826,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->datatype) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1841,7 +1841,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->parameters) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -2077,13 +2077,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo4(struct ndr_push *ndr, i
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->printername));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->servername));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -2093,7 +2093,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo4(struct ndr_push *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->printername) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->printername));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->printername));
-@@ -2103,7 +2103,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo4(struct ndr_push *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->servername) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->servername));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->servername));
-@@ -2125,7 +2125,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo4(struct ndr_pull *ndr, i
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printername));
- 			if (_ptr_printername) {
- 				NDR_PULL_ALLOC(ndr, r->printername);
-@@ -2137,7 +2137,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo4(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_servername));
- 			if (_ptr_servername) {
- 				NDR_PULL_ALLOC(ndr, r->servername);
-@@ -2153,7 +2153,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo4(struct ndr_pull *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->printername) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -2168,7 +2168,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo4(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->servername) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -2216,13 +2216,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo5(struct ndr_push *ndr, i
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->printername));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->portname));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -2234,7 +2234,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo5(struct ndr_push *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->printername) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->printername));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->printername));
-@@ -2244,7 +2244,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo5(struct ndr_push *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->portname) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->portname));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->portname));
-@@ -2266,7 +2266,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo5(struct ndr_pull *ndr, i
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printername));
- 			if (_ptr_printername) {
- 				NDR_PULL_ALLOC(ndr, r->printername);
-@@ -2278,7 +2278,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo5(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_portname));
- 			if (_ptr_portname) {
- 				NDR_PULL_ALLOC(ndr, r->portname);
-@@ -2296,7 +2296,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo5(struct ndr_pull *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->printername) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -2311,7 +2311,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo5(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->portname) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -2424,7 +2424,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo7(struct ndr_push *ndr, i
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->guid));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -2434,7 +2434,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo7(struct ndr_push *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->guid) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->guid));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->guid));
-@@ -2454,7 +2454,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo7(struct ndr_pull *ndr, i
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_guid));
- 			if (_ptr_guid) {
- 				NDR_PULL_ALLOC(ndr, r->guid);
-@@ -2470,7 +2470,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo7(struct ndr_pull *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->guid) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -2990,37 +2990,37 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo1(struct ndr_push *ndr, int n
- 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->job_id));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->printer_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->server_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->user_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->document_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_type));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->text_status));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -3035,7 +3035,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo1(struct ndr_push *ndr, int n
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->printer_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->printer_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->printer_name));
-@@ -3045,7 +3045,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo1(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->server_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->server_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->server_name));
-@@ -3055,7 +3055,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo1(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->user_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->user_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->user_name));
-@@ -3065,7 +3065,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo1(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->document_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->document_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->document_name));
-@@ -3075,7 +3075,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo1(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_type) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_type));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_type));
-@@ -3085,7 +3085,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo1(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->text_status) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->text_status));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->text_status));
-@@ -3116,7 +3116,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
- 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->job_id));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printer_name));
- 			if (_ptr_printer_name) {
- 				NDR_PULL_ALLOC(ndr, r->printer_name);
-@@ -3128,7 +3128,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
- 			if (_ptr_server_name) {
- 				NDR_PULL_ALLOC(ndr, r->server_name);
-@@ -3140,7 +3140,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user_name));
- 			if (_ptr_user_name) {
- 				NDR_PULL_ALLOC(ndr, r->user_name);
-@@ -3152,7 +3152,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_document_name));
- 			if (_ptr_document_name) {
- 				NDR_PULL_ALLOC(ndr, r->document_name);
-@@ -3164,7 +3164,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_type));
- 			if (_ptr_data_type) {
- 				NDR_PULL_ALLOC(ndr, r->data_type);
-@@ -3176,7 +3176,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_text_status));
- 			if (_ptr_text_status) {
- 				NDR_PULL_ALLOC(ndr, r->text_status);
-@@ -3200,7 +3200,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->printer_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3215,7 +3215,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->server_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3230,7 +3230,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->user_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3245,7 +3245,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->document_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3260,7 +3260,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_type) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3275,7 +3275,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->text_status) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3354,55 +3354,55 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
- 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->job_id));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->printer_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->server_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->user_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->document_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->notify_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_type));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->print_processor));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->parameters));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -3414,7 +3414,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->text_status));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -3439,7 +3439,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->printer_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->printer_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->printer_name));
-@@ -3449,7 +3449,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->server_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->server_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->server_name));
-@@ -3459,7 +3459,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->user_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->user_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->user_name));
-@@ -3469,7 +3469,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->document_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->document_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->document_name));
-@@ -3479,7 +3479,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->notify_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->notify_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->notify_name));
-@@ -3489,7 +3489,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_type) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_type));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_type));
-@@ -3499,7 +3499,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->print_processor) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->print_processor));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->print_processor));
-@@ -3509,7 +3509,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->parameters) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->parameters));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->parameters));
-@@ -3519,7 +3519,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
-@@ -3544,7 +3544,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->text_status) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->text_status));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->text_status));
-@@ -3602,7 +3602,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->job_id));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printer_name));
- 			if (_ptr_printer_name) {
- 				NDR_PULL_ALLOC(ndr, r->printer_name);
-@@ -3614,7 +3614,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
- 			if (_ptr_server_name) {
- 				NDR_PULL_ALLOC(ndr, r->server_name);
-@@ -3626,7 +3626,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user_name));
- 			if (_ptr_user_name) {
- 				NDR_PULL_ALLOC(ndr, r->user_name);
-@@ -3638,7 +3638,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_document_name));
- 			if (_ptr_document_name) {
- 				NDR_PULL_ALLOC(ndr, r->document_name);
-@@ -3650,7 +3650,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_notify_name));
- 			if (_ptr_notify_name) {
- 				NDR_PULL_ALLOC(ndr, r->notify_name);
-@@ -3662,7 +3662,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_type));
- 			if (_ptr_data_type) {
- 				NDR_PULL_ALLOC(ndr, r->data_type);
-@@ -3674,7 +3674,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_print_processor));
- 			if (_ptr_print_processor) {
- 				NDR_PULL_ALLOC(ndr, r->print_processor);
-@@ -3686,7 +3686,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parameters));
- 			if (_ptr_parameters) {
- 				NDR_PULL_ALLOC(ndr, r->parameters);
-@@ -3698,7 +3698,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
- 			if (_ptr_driver_name) {
- 				NDR_PULL_ALLOC(ndr, r->driver_name);
-@@ -3722,7 +3722,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_text_status));
- 			if (_ptr_text_status) {
- 				NDR_PULL_ALLOC(ndr, r->text_status);
-@@ -3762,7 +3762,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->printer_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3777,7 +3777,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->server_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3792,7 +3792,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->user_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3807,7 +3807,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->document_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3822,7 +3822,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->notify_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3837,7 +3837,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_type) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3852,7 +3852,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->print_processor) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3867,7 +3867,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->parameters) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3882,7 +3882,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -3917,7 +3917,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->text_status) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -4099,55 +4099,55 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
- 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->job_id));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->printer_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->server_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->user_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->document_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->notify_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_type));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->print_processor));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->parameters));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -4159,7 +4159,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->text_status));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -4185,7 +4185,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->printer_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->printer_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->printer_name));
-@@ -4195,7 +4195,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->server_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->server_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->server_name));
-@@ -4205,7 +4205,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->user_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->user_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->user_name));
-@@ -4215,7 +4215,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->document_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->document_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->document_name));
-@@ -4225,7 +4225,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->notify_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->notify_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->notify_name));
-@@ -4235,7 +4235,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_type) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_type));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_type));
-@@ -4245,7 +4245,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->print_processor) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->print_processor));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->print_processor));
-@@ -4255,7 +4255,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->parameters) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->parameters));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->parameters));
-@@ -4265,7 +4265,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
-@@ -4290,7 +4290,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->text_status) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->text_status));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->text_status));
-@@ -4348,7 +4348,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->job_id));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printer_name));
- 			if (_ptr_printer_name) {
- 				NDR_PULL_ALLOC(ndr, r->printer_name);
-@@ -4360,7 +4360,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
- 			if (_ptr_server_name) {
- 				NDR_PULL_ALLOC(ndr, r->server_name);
-@@ -4372,7 +4372,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user_name));
- 			if (_ptr_user_name) {
- 				NDR_PULL_ALLOC(ndr, r->user_name);
-@@ -4384,7 +4384,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_document_name));
- 			if (_ptr_document_name) {
- 				NDR_PULL_ALLOC(ndr, r->document_name);
-@@ -4396,7 +4396,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_notify_name));
- 			if (_ptr_notify_name) {
- 				NDR_PULL_ALLOC(ndr, r->notify_name);
-@@ -4408,7 +4408,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_type));
- 			if (_ptr_data_type) {
- 				NDR_PULL_ALLOC(ndr, r->data_type);
-@@ -4420,7 +4420,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_print_processor));
- 			if (_ptr_print_processor) {
- 				NDR_PULL_ALLOC(ndr, r->print_processor);
-@@ -4432,7 +4432,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parameters));
- 			if (_ptr_parameters) {
- 				NDR_PULL_ALLOC(ndr, r->parameters);
-@@ -4444,7 +4444,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
- 			if (_ptr_driver_name) {
- 				NDR_PULL_ALLOC(ndr, r->driver_name);
-@@ -4468,7 +4468,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_text_status));
- 			if (_ptr_text_status) {
- 				NDR_PULL_ALLOC(ndr, r->text_status);
-@@ -4509,7 +4509,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->printer_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -4524,7 +4524,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->server_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -4539,7 +4539,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->user_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -4554,7 +4554,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->document_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -4569,7 +4569,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->notify_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -4584,7 +4584,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_type) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -4599,7 +4599,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->print_processor) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -4614,7 +4614,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->parameters) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -4629,7 +4629,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -4664,7 +4664,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->text_status) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -7974,7 +7974,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_StringArray(struct ndr_push *ndr, in
- 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, (ndr_size_spoolss_StringArray(r, ndr->iconv_convenience, ndr->flags) - 4) / 2));
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->string));
- 			ndr->flags = _flags_save_string_array;
- 		}
-@@ -7992,7 +7992,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_StringArray(struct ndr_pull *ndr, in
- 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->_ndr_size));
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->string));
- 			ndr->flags = _flags_save_string_array;
- 		}
-@@ -10468,7 +10468,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo1(struct ndr_push *ndr, in
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -10477,7 +10477,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo1(struct ndr_push *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
-@@ -10497,7 +10497,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo1(struct ndr_pull *ndr, in
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
- 			if (_ptr_driver_name) {
- 				NDR_PULL_ALLOC(ndr, r->driver_name);
-@@ -10512,7 +10512,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo1(struct ndr_pull *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -10554,31 +10554,31 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo2(struct ndr_push *ndr, in
- 		NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->architecture));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_path));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_file));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->config_file));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -10587,7 +10587,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo2(struct ndr_push *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
-@@ -10597,7 +10597,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo2(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->architecture) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->architecture));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->architecture));
-@@ -10607,7 +10607,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo2(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_path) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_path));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_path));
-@@ -10617,7 +10617,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo2(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_file));
-@@ -10627,7 +10627,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo2(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->config_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->config_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->config_file));
-@@ -10656,7 +10656,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
- 		NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
- 			if (_ptr_driver_name) {
- 				NDR_PULL_ALLOC(ndr, r->driver_name);
-@@ -10668,7 +10668,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_architecture));
- 			if (_ptr_architecture) {
- 				NDR_PULL_ALLOC(ndr, r->architecture);
-@@ -10680,7 +10680,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_path));
- 			if (_ptr_driver_path) {
- 				NDR_PULL_ALLOC(ndr, r->driver_path);
-@@ -10692,7 +10692,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_file));
- 			if (_ptr_data_file) {
- 				NDR_PULL_ALLOC(ndr, r->data_file);
-@@ -10704,7 +10704,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_config_file));
- 			if (_ptr_config_file) {
- 				NDR_PULL_ALLOC(ndr, r->config_file);
-@@ -10719,7 +10719,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -10734,7 +10734,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->architecture) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -10749,7 +10749,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_path) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -10764,7 +10764,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -10779,7 +10779,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->config_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -10846,55 +10846,55 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
- 		NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->architecture));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_path));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_file));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->config_file));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->help_file));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->dependent_files));
- 			ndr->flags = _flags_save_string_array;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->default_datatype));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -10903,7 +10903,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
-@@ -10913,7 +10913,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->architecture) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->architecture));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->architecture));
-@@ -10923,7 +10923,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_path) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_path));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_path));
-@@ -10933,7 +10933,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_file));
-@@ -10943,7 +10943,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->config_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->config_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->config_file));
-@@ -10953,7 +10953,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->help_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->help_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->help_file));
-@@ -10963,7 +10963,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->dependent_files) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->dependent_files));
- 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->dependent_files));
-@@ -10973,7 +10973,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->monitor_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->monitor_name));
-@@ -10983,7 +10983,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->default_datatype) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->default_datatype));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->default_datatype));
-@@ -11020,7 +11020,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
- 			if (_ptr_driver_name) {
- 				NDR_PULL_ALLOC(ndr, r->driver_name);
-@@ -11032,7 +11032,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_architecture));
- 			if (_ptr_architecture) {
- 				NDR_PULL_ALLOC(ndr, r->architecture);
-@@ -11044,7 +11044,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_path));
- 			if (_ptr_driver_path) {
- 				NDR_PULL_ALLOC(ndr, r->driver_path);
-@@ -11056,7 +11056,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_file));
- 			if (_ptr_data_file) {
- 				NDR_PULL_ALLOC(ndr, r->data_file);
-@@ -11068,7 +11068,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_config_file));
- 			if (_ptr_config_file) {
- 				NDR_PULL_ALLOC(ndr, r->config_file);
-@@ -11080,7 +11080,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_help_file));
- 			if (_ptr_help_file) {
- 				NDR_PULL_ALLOC(ndr, r->help_file);
-@@ -11092,7 +11092,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dependent_files));
- 			if (_ptr_dependent_files) {
- 				NDR_PULL_ALLOC(ndr, r->dependent_files);
-@@ -11104,7 +11104,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
- 			if (_ptr_monitor_name) {
- 				NDR_PULL_ALLOC(ndr, r->monitor_name);
-@@ -11116,7 +11116,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_default_datatype));
- 			if (_ptr_default_datatype) {
- 				NDR_PULL_ALLOC(ndr, r->default_datatype);
-@@ -11131,7 +11131,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11146,7 +11146,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->architecture) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11161,7 +11161,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_path) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11176,7 +11176,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11191,7 +11191,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->config_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11206,7 +11206,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->help_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11221,7 +11221,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->dependent_files) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11236,7 +11236,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->monitor_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11251,7 +11251,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->default_datatype) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11342,61 +11342,61 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
- 		NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->architecture));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_path));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_file));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->config_file));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->help_file));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->dependent_files));
- 			ndr->flags = _flags_save_string_array;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->default_datatype));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->previous_names));
- 			ndr->flags = _flags_save_string_array;
- 		}
-@@ -11405,7 +11405,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
-@@ -11415,7 +11415,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->architecture) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->architecture));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->architecture));
-@@ -11425,7 +11425,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_path) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_path));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_path));
-@@ -11435,7 +11435,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_file));
-@@ -11445,7 +11445,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->config_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->config_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->config_file));
-@@ -11455,7 +11455,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->help_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->help_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->help_file));
-@@ -11465,7 +11465,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->dependent_files) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->dependent_files));
- 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->dependent_files));
-@@ -11475,7 +11475,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->monitor_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->monitor_name));
-@@ -11485,7 +11485,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->default_datatype) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->default_datatype));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->default_datatype));
-@@ -11495,7 +11495,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->previous_names) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->previous_names));
- 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->previous_names));
-@@ -11534,7 +11534,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
- 			if (_ptr_driver_name) {
- 				NDR_PULL_ALLOC(ndr, r->driver_name);
-@@ -11546,7 +11546,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_architecture));
- 			if (_ptr_architecture) {
- 				NDR_PULL_ALLOC(ndr, r->architecture);
-@@ -11558,7 +11558,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_path));
- 			if (_ptr_driver_path) {
- 				NDR_PULL_ALLOC(ndr, r->driver_path);
-@@ -11570,7 +11570,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_file));
- 			if (_ptr_data_file) {
- 				NDR_PULL_ALLOC(ndr, r->data_file);
-@@ -11582,7 +11582,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_config_file));
- 			if (_ptr_config_file) {
- 				NDR_PULL_ALLOC(ndr, r->config_file);
-@@ -11594,7 +11594,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_help_file));
- 			if (_ptr_help_file) {
- 				NDR_PULL_ALLOC(ndr, r->help_file);
-@@ -11606,7 +11606,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dependent_files));
- 			if (_ptr_dependent_files) {
- 				NDR_PULL_ALLOC(ndr, r->dependent_files);
-@@ -11618,7 +11618,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
- 			if (_ptr_monitor_name) {
- 				NDR_PULL_ALLOC(ndr, r->monitor_name);
-@@ -11630,7 +11630,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_default_datatype));
- 			if (_ptr_default_datatype) {
- 				NDR_PULL_ALLOC(ndr, r->default_datatype);
-@@ -11642,7 +11642,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_previous_names));
- 			if (_ptr_previous_names) {
- 				NDR_PULL_ALLOC(ndr, r->previous_names);
-@@ -11657,7 +11657,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11672,7 +11672,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->architecture) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11687,7 +11687,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_path) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11702,7 +11702,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11717,7 +11717,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->config_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11732,7 +11732,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->help_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11747,7 +11747,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->dependent_files) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11762,7 +11762,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->monitor_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11777,7 +11777,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->default_datatype) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11792,7 +11792,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->previous_names) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -11889,31 +11889,31 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo5(struct ndr_push *ndr, in
- 		NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->architecture));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_path));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_file));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->config_file));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -11925,7 +11925,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo5(struct ndr_push *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
-@@ -11935,7 +11935,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo5(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->architecture) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->architecture));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->architecture));
-@@ -11945,7 +11945,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo5(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_path) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_path));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_path));
-@@ -11955,7 +11955,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo5(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_file));
-@@ -11965,7 +11965,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo5(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->config_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->config_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->config_file));
-@@ -11994,7 +11994,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
- 		NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
- 			if (_ptr_driver_name) {
- 				NDR_PULL_ALLOC(ndr, r->driver_name);
-@@ -12006,7 +12006,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_architecture));
- 			if (_ptr_architecture) {
- 				NDR_PULL_ALLOC(ndr, r->architecture);
-@@ -12018,7 +12018,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_path));
- 			if (_ptr_driver_path) {
- 				NDR_PULL_ALLOC(ndr, r->driver_path);
-@@ -12030,7 +12030,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_file));
- 			if (_ptr_data_file) {
- 				NDR_PULL_ALLOC(ndr, r->data_file);
-@@ -12042,7 +12042,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_config_file));
- 			if (_ptr_config_file) {
- 				NDR_PULL_ALLOC(ndr, r->config_file);
-@@ -12060,7 +12060,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12075,7 +12075,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->architecture) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12090,7 +12090,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_path) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12105,7 +12105,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12120,7 +12120,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->config_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12190,61 +12190,61 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->architecture));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_path));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_file));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->config_file));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->help_file));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->dependent_files));
- 			ndr->flags = _flags_save_string_array;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->default_datatype));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->previous_names));
- 			ndr->flags = _flags_save_string_array;
- 		}
-@@ -12252,25 +12252,25 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->driver_version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->manufacturer_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->manufacturer_url));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->hardware_id));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->provider));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -12279,7 +12279,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
-@@ -12289,7 +12289,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->architecture) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->architecture));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->architecture));
-@@ -12299,7 +12299,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_path) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_path));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_path));
-@@ -12309,7 +12309,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_file));
-@@ -12319,7 +12319,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->config_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->config_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->config_file));
-@@ -12329,7 +12329,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->help_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->help_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->help_file));
-@@ -12339,7 +12339,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->dependent_files) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->dependent_files));
- 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->dependent_files));
-@@ -12349,7 +12349,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->monitor_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->monitor_name));
-@@ -12359,7 +12359,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->default_datatype) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->default_datatype));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->default_datatype));
-@@ -12369,7 +12369,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->previous_names) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->previous_names));
- 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->previous_names));
-@@ -12379,7 +12379,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->manufacturer_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->manufacturer_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->manufacturer_name));
-@@ -12389,7 +12389,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->manufacturer_url) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->manufacturer_url));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->manufacturer_url));
-@@ -12399,7 +12399,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->hardware_id) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->hardware_id));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->hardware_id));
-@@ -12409,7 +12409,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->provider) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->provider));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->provider));
-@@ -12456,7 +12456,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
- 			if (_ptr_driver_name) {
- 				NDR_PULL_ALLOC(ndr, r->driver_name);
-@@ -12468,7 +12468,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_architecture));
- 			if (_ptr_architecture) {
- 				NDR_PULL_ALLOC(ndr, r->architecture);
-@@ -12480,7 +12480,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_path));
- 			if (_ptr_driver_path) {
- 				NDR_PULL_ALLOC(ndr, r->driver_path);
-@@ -12492,7 +12492,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_file));
- 			if (_ptr_data_file) {
- 				NDR_PULL_ALLOC(ndr, r->data_file);
-@@ -12504,7 +12504,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_config_file));
- 			if (_ptr_config_file) {
- 				NDR_PULL_ALLOC(ndr, r->config_file);
-@@ -12516,7 +12516,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_help_file));
- 			if (_ptr_help_file) {
- 				NDR_PULL_ALLOC(ndr, r->help_file);
-@@ -12528,7 +12528,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dependent_files));
- 			if (_ptr_dependent_files) {
- 				NDR_PULL_ALLOC(ndr, r->dependent_files);
-@@ -12540,7 +12540,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
- 			if (_ptr_monitor_name) {
- 				NDR_PULL_ALLOC(ndr, r->monitor_name);
-@@ -12552,7 +12552,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_default_datatype));
- 			if (_ptr_default_datatype) {
- 				NDR_PULL_ALLOC(ndr, r->default_datatype);
-@@ -12564,7 +12564,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_previous_names));
- 			if (_ptr_previous_names) {
- 				NDR_PULL_ALLOC(ndr, r->previous_names);
-@@ -12578,7 +12578,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->driver_version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_manufacturer_name));
- 			if (_ptr_manufacturer_name) {
- 				NDR_PULL_ALLOC(ndr, r->manufacturer_name);
-@@ -12590,7 +12590,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_manufacturer_url));
- 			if (_ptr_manufacturer_url) {
- 				NDR_PULL_ALLOC(ndr, r->manufacturer_url);
-@@ -12602,7 +12602,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_hardware_id));
- 			if (_ptr_hardware_id) {
- 				NDR_PULL_ALLOC(ndr, r->hardware_id);
-@@ -12614,7 +12614,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_provider));
- 			if (_ptr_provider) {
- 				NDR_PULL_ALLOC(ndr, r->provider);
-@@ -12629,7 +12629,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12644,7 +12644,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->architecture) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12659,7 +12659,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_path) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12674,7 +12674,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12689,7 +12689,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->config_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12704,7 +12704,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->help_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12719,7 +12719,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->dependent_files) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12734,7 +12734,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->monitor_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12749,7 +12749,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->default_datatype) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12764,7 +12764,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->previous_names) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12779,7 +12779,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->manufacturer_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12794,7 +12794,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->manufacturer_url) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12809,7 +12809,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->hardware_id) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12824,7 +12824,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->provider) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -12948,19 +12948,19 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo7(struct ndr_push *ndr, in
- 		NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->inf_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->install_source_root));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -12969,7 +12969,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo7(struct ndr_push *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
-@@ -12979,7 +12979,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo7(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->inf_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->inf_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->inf_name));
-@@ -12989,7 +12989,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo7(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->install_source_root) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->install_source_root));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->install_source_root));
-@@ -13015,7 +13015,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo7(struct ndr_pull *ndr, in
- 		NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
- 			if (_ptr_driver_name) {
- 				NDR_PULL_ALLOC(ndr, r->driver_name);
-@@ -13027,7 +13027,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo7(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_inf_name));
- 			if (_ptr_inf_name) {
- 				NDR_PULL_ALLOC(ndr, r->inf_name);
-@@ -13039,7 +13039,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo7(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_install_source_root));
- 			if (_ptr_install_source_root) {
- 				NDR_PULL_ALLOC(ndr, r->install_source_root);
-@@ -13054,7 +13054,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo7(struct ndr_pull *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13069,7 +13069,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo7(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->inf_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13084,7 +13084,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo7(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->install_source_root) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13140,61 +13140,61 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->architecture));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_path));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_file));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->config_file));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->help_file));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->dependent_files));
- 			ndr->flags = _flags_save_string_array;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->default_datatype));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->previous_names));
- 			ndr->flags = _flags_save_string_array;
- 		}
-@@ -13202,56 +13202,56 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->driver_version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->manufacturer_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->manufacturer_url));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->hardware_id));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->provider));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->print_processor));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->vendor_setup));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->color_profiles));
- 			ndr->flags = _flags_save_string_array;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->inf_path));
- 			ndr->flags = _flags_save_string;
- 		}
- 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->printer_driver_attributes));
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->core_driver_dependencies));
- 			ndr->flags = _flags_save_string_array;
- 		}
-@@ -13262,7 +13262,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
-@@ -13272,7 +13272,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->architecture) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->architecture));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->architecture));
-@@ -13282,7 +13282,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_path) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_path));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_path));
-@@ -13292,7 +13292,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_file));
-@@ -13302,7 +13302,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->config_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->config_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->config_file));
-@@ -13312,7 +13312,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->help_file) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->help_file));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->help_file));
-@@ -13322,7 +13322,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->dependent_files) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->dependent_files));
- 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->dependent_files));
-@@ -13332,7 +13332,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->monitor_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->monitor_name));
-@@ -13342,7 +13342,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->default_datatype) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->default_datatype));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->default_datatype));
-@@ -13352,7 +13352,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->previous_names) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->previous_names));
- 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->previous_names));
-@@ -13362,7 +13362,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->manufacturer_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->manufacturer_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->manufacturer_name));
-@@ -13372,7 +13372,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->manufacturer_url) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->manufacturer_url));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->manufacturer_url));
-@@ -13382,7 +13382,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->hardware_id) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->hardware_id));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->hardware_id));
-@@ -13392,7 +13392,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->provider) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->provider));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->provider));
-@@ -13402,7 +13402,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->print_processor) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->print_processor));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->print_processor));
-@@ -13412,7 +13412,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->vendor_setup) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->vendor_setup));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->vendor_setup));
-@@ -13422,7 +13422,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->color_profiles) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->color_profiles));
- 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->color_profiles));
-@@ -13432,7 +13432,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->inf_path) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->inf_path));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->inf_path));
-@@ -13442,7 +13442,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->core_driver_dependencies) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->core_driver_dependencies));
- 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->core_driver_dependencies));
-@@ -13499,7 +13499,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
- 			if (_ptr_driver_name) {
- 				NDR_PULL_ALLOC(ndr, r->driver_name);
-@@ -13511,7 +13511,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_architecture));
- 			if (_ptr_architecture) {
- 				NDR_PULL_ALLOC(ndr, r->architecture);
-@@ -13523,7 +13523,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_path));
- 			if (_ptr_driver_path) {
- 				NDR_PULL_ALLOC(ndr, r->driver_path);
-@@ -13535,7 +13535,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_file));
- 			if (_ptr_data_file) {
- 				NDR_PULL_ALLOC(ndr, r->data_file);
-@@ -13547,7 +13547,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_config_file));
- 			if (_ptr_config_file) {
- 				NDR_PULL_ALLOC(ndr, r->config_file);
-@@ -13559,7 +13559,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_help_file));
- 			if (_ptr_help_file) {
- 				NDR_PULL_ALLOC(ndr, r->help_file);
-@@ -13571,7 +13571,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dependent_files));
- 			if (_ptr_dependent_files) {
- 				NDR_PULL_ALLOC(ndr, r->dependent_files);
-@@ -13583,7 +13583,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
- 			if (_ptr_monitor_name) {
- 				NDR_PULL_ALLOC(ndr, r->monitor_name);
-@@ -13595,7 +13595,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_default_datatype));
- 			if (_ptr_default_datatype) {
- 				NDR_PULL_ALLOC(ndr, r->default_datatype);
-@@ -13607,7 +13607,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_previous_names));
- 			if (_ptr_previous_names) {
- 				NDR_PULL_ALLOC(ndr, r->previous_names);
-@@ -13621,7 +13621,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->driver_version));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_manufacturer_name));
- 			if (_ptr_manufacturer_name) {
- 				NDR_PULL_ALLOC(ndr, r->manufacturer_name);
-@@ -13633,7 +13633,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_manufacturer_url));
- 			if (_ptr_manufacturer_url) {
- 				NDR_PULL_ALLOC(ndr, r->manufacturer_url);
-@@ -13645,7 +13645,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_hardware_id));
- 			if (_ptr_hardware_id) {
- 				NDR_PULL_ALLOC(ndr, r->hardware_id);
-@@ -13657,7 +13657,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_provider));
- 			if (_ptr_provider) {
- 				NDR_PULL_ALLOC(ndr, r->provider);
-@@ -13669,7 +13669,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_print_processor));
- 			if (_ptr_print_processor) {
- 				NDR_PULL_ALLOC(ndr, r->print_processor);
-@@ -13681,7 +13681,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_vendor_setup));
- 			if (_ptr_vendor_setup) {
- 				NDR_PULL_ALLOC(ndr, r->vendor_setup);
-@@ -13693,7 +13693,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_color_profiles));
- 			if (_ptr_color_profiles) {
- 				NDR_PULL_ALLOC(ndr, r->color_profiles);
-@@ -13705,7 +13705,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_inf_path));
- 			if (_ptr_inf_path) {
- 				NDR_PULL_ALLOC(ndr, r->inf_path);
-@@ -13718,7 +13718,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->printer_driver_attributes));
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_core_driver_dependencies));
- 			if (_ptr_core_driver_dependencies) {
- 				NDR_PULL_ALLOC(ndr, r->core_driver_dependencies);
-@@ -13735,7 +13735,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13750,7 +13750,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->architecture) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13765,7 +13765,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->driver_path) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13780,7 +13780,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->data_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13795,7 +13795,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->config_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13810,7 +13810,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->help_file) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13825,7 +13825,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->dependent_files) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13840,7 +13840,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->monitor_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13855,7 +13855,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->default_datatype) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13870,7 +13870,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->previous_names) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13885,7 +13885,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->manufacturer_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13900,7 +13900,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->manufacturer_url) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13915,7 +13915,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->hardware_id) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13930,7 +13930,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->provider) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13945,7 +13945,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->print_processor) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13960,7 +13960,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->vendor_setup) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13975,7 +13975,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->color_profiles) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -13990,7 +13990,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->inf_path) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -14005,7 +14005,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
- 		}
- 		{
- 			uint32_t _flags_save_string_array = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->core_driver_dependencies) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -14188,7 +14188,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverFileInfo(struct ndr_push *ndr,
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->file_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -14199,7 +14199,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverFileInfo(struct ndr_push *ndr,
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->file_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->file_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->file_name));
-@@ -14219,7 +14219,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverFileInfo(struct ndr_pull *ndr,
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_file_name));
- 			if (_ptr_file_name) {
- 				NDR_PULL_ALLOC(ndr, r->file_name);
-@@ -14236,7 +14236,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverFileInfo(struct ndr_pull *ndr,
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->file_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -14659,7 +14659,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverDirectoryInfo1(struct ndr_push
- 		NDR_CHECK(ndr_push_align(ndr, 4));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->directory_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -14676,7 +14676,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverDirectoryInfo1(struct ndr_pull
- 		NDR_CHECK(ndr_pull_align(ndr, 4));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->directory_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -14818,7 +14818,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrintProcessorInfo1(struct ndr_push
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->print_processor_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -14827,7 +14827,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrintProcessorInfo1(struct ndr_push
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->print_processor_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->print_processor_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->print_processor_name));
-@@ -14847,7 +14847,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrintProcessorInfo1(struct ndr_pull
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_print_processor_name));
- 			if (_ptr_print_processor_name) {
- 				NDR_PULL_ALLOC(ndr, r->print_processor_name);
-@@ -14862,7 +14862,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrintProcessorInfo1(struct ndr_pull
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->print_processor_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -15004,7 +15004,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrintProcessorDirectoryInfo1(struct
- 		NDR_CHECK(ndr_push_align(ndr, 4));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->directory_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -15021,7 +15021,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrintProcessorDirectoryInfo1(struct
- 		NDR_CHECK(ndr_pull_align(ndr, 4));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->directory_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -15427,7 +15427,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_OSVersion(struct ndr_push *ndr, int
- 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			{
- 				struct ndr_push *_ndr_extra_string;
- 				NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_extra_string, 0, 256));
-@@ -15454,7 +15454,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_OSVersion(struct ndr_pull *ndr, int
- 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->platform_id));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			{
- 				struct ndr_pull *_ndr_extra_string;
- 				NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_extra_string, 0, 256));
-@@ -15499,7 +15499,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_OSVersionEx(struct ndr_push *ndr, in
- 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			{
- 				struct ndr_push *_ndr_extra_string;
- 				NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_extra_string, 0, 256));
-@@ -15531,7 +15531,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_OSVersionEx(struct ndr_pull *ndr, in
- 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->platform_id));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			{
- 				struct ndr_pull *_ndr_extra_string;
- 				NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_extra_string, 0, 256));
-@@ -15587,7 +15587,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterData(struct ndr_push *ndr, in
- 			case REG_SZ: {
- 				{
- 					uint32_t _flags_save_string = ndr->flags;
--					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 					NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->string));
- 					ndr->flags = _flags_save_string;
- 				}
-@@ -15609,7 +15609,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterData(struct ndr_push *ndr, in
- 			case REG_MULTI_SZ: {
- 				{
- 					uint32_t _flags_save_string_array = ndr->flags;
--					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 					NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->string_array));
- 					ndr->flags = _flags_save_string_array;
- 				}
-@@ -15665,7 +15665,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterData(struct ndr_pull *ndr, in
- 			case REG_SZ: {
- 				{
- 					uint32_t _flags_save_string = ndr->flags;
--					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 					NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->string));
- 					ndr->flags = _flags_save_string;
- 				}
-@@ -15687,7 +15687,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterData(struct ndr_pull *ndr, in
- 			case REG_MULTI_SZ: {
- 				{
- 					uint32_t _flags_save_string_array = ndr->flags;
--					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 					NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->string_array));
- 					ndr->flags = _flags_save_string_array;
- 				}
-@@ -15870,7 +15870,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_FormInfo1(struct ndr_push *ndr, int
- 		NDR_CHECK(ndr_push_spoolss_FormFlags(ndr, NDR_SCALARS, r->flags));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->form_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -15881,7 +15881,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_FormInfo1(struct ndr_push *ndr, int
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->form_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->form_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->form_name));
-@@ -15902,7 +15902,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo1(struct ndr_pull *ndr, int
- 		NDR_CHECK(ndr_pull_spoolss_FormFlags(ndr, NDR_SCALARS, &r->flags));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_form_name));
- 			if (_ptr_form_name) {
- 				NDR_PULL_ALLOC(ndr, r->form_name);
-@@ -15919,7 +15919,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo1(struct ndr_pull *ndr, int
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->form_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -15988,7 +15988,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_FormInfo2(struct ndr_push *ndr, int
- 		NDR_CHECK(ndr_push_spoolss_FormFlags(ndr, NDR_SCALARS, r->flags));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->form_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -16003,14 +16003,14 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_FormInfo2(struct ndr_push *ndr, int
- 		NDR_CHECK(ndr_push_spoolss_FormStringType(ndr, NDR_SCALARS, r->string_type));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->mui_dll));
- 			ndr->flags = _flags_save_string;
- 		}
- 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ressource_id));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->display_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -16021,7 +16021,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_FormInfo2(struct ndr_push *ndr, int
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->form_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->form_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->form_name));
-@@ -16041,7 +16041,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_FormInfo2(struct ndr_push *ndr, int
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->mui_dll) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->mui_dll));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->mui_dll));
-@@ -16051,7 +16051,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_FormInfo2(struct ndr_push *ndr, int
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->display_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->display_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->display_name));
-@@ -16078,7 +16078,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo2(struct ndr_pull *ndr, int
- 		NDR_CHECK(ndr_pull_spoolss_FormFlags(ndr, NDR_SCALARS, &r->flags));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_form_name));
- 			if (_ptr_form_name) {
- 				NDR_PULL_ALLOC(ndr, r->form_name);
-@@ -16105,7 +16105,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo2(struct ndr_pull *ndr, int
- 		NDR_CHECK(ndr_pull_spoolss_FormStringType(ndr, NDR_SCALARS, &r->string_type));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_mui_dll));
- 			if (_ptr_mui_dll) {
- 				NDR_PULL_ALLOC(ndr, r->mui_dll);
-@@ -16118,7 +16118,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo2(struct ndr_pull *ndr, int
- 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ressource_id));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_display_name));
- 			if (_ptr_display_name) {
- 				NDR_PULL_ALLOC(ndr, r->display_name);
-@@ -16135,7 +16135,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo2(struct ndr_pull *ndr, int
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->form_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -16165,7 +16165,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo2(struct ndr_pull *ndr, int
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->mui_dll) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -16180,7 +16180,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo2(struct ndr_pull *ndr, int
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->display_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -16762,7 +16762,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo1(struct ndr_push *ndr, int
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->port_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -16771,7 +16771,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo1(struct ndr_push *ndr, int
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->port_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->port_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->port_name));
-@@ -16791,7 +16791,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo1(struct ndr_pull *ndr, int
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_port_name));
- 			if (_ptr_port_name) {
- 				NDR_PULL_ALLOC(ndr, r->port_name);
-@@ -16806,7 +16806,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo1(struct ndr_pull *ndr, int
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->port_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -16872,19 +16872,19 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo2(struct ndr_push *ndr, int
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->port_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->description));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -16895,7 +16895,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo2(struct ndr_push *ndr, int
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->port_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->port_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->port_name));
-@@ -16905,7 +16905,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo2(struct ndr_push *ndr, int
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->monitor_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->monitor_name));
-@@ -16915,7 +16915,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo2(struct ndr_push *ndr, int
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->description) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->description));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->description));
-@@ -16939,7 +16939,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo2(struct ndr_pull *ndr, int
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_port_name));
- 			if (_ptr_port_name) {
- 				NDR_PULL_ALLOC(ndr, r->port_name);
-@@ -16951,7 +16951,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo2(struct ndr_pull *ndr, int
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
- 			if (_ptr_monitor_name) {
- 				NDR_PULL_ALLOC(ndr, r->monitor_name);
-@@ -16963,7 +16963,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo2(struct ndr_pull *ndr, int
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_description));
- 			if (_ptr_description) {
- 				NDR_PULL_ALLOC(ndr, r->description);
-@@ -16980,7 +16980,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo2(struct ndr_pull *ndr, int
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->port_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -16995,7 +16995,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo2(struct ndr_pull *ndr, int
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->monitor_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -17010,7 +17010,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo2(struct ndr_pull *ndr, int
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->description) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -17128,7 +17128,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo3(struct ndr_push *ndr, int
- 		NDR_CHECK(ndr_push_spoolss_PortStatus(ndr, NDR_SCALARS, r->status));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->status_string));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -17138,7 +17138,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo3(struct ndr_push *ndr, int
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->status_string) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->status_string));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->status_string));
-@@ -17159,7 +17159,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo3(struct ndr_pull *ndr, int
- 		NDR_CHECK(ndr_pull_spoolss_PortStatus(ndr, NDR_SCALARS, &r->status));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_status_string));
- 			if (_ptr_status_string) {
- 				NDR_PULL_ALLOC(ndr, r->status_string);
-@@ -17175,7 +17175,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo3(struct ndr_pull *ndr, int
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->status_string) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -17218,7 +17218,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfoFF(struct ndr_push *ndr, int
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->port_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -17228,7 +17228,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfoFF(struct ndr_push *ndr, int
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->port_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->port_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->port_name));
-@@ -17248,7 +17248,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfoFF(struct ndr_pull *ndr, int
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_port_name));
- 			if (_ptr_port_name) {
- 				NDR_PULL_ALLOC(ndr, r->port_name);
-@@ -17264,7 +17264,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfoFF(struct ndr_pull *ndr, int
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->port_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -17479,7 +17479,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_MonitorInfo1(struct ndr_push *ndr, i
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -17488,7 +17488,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_MonitorInfo1(struct ndr_push *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->monitor_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->monitor_name));
-@@ -17508,7 +17508,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo1(struct ndr_pull *ndr, i
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
- 			if (_ptr_monitor_name) {
- 				NDR_PULL_ALLOC(ndr, r->monitor_name);
-@@ -17523,7 +17523,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo1(struct ndr_pull *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->monitor_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -17564,19 +17564,19 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_MonitorInfo2(struct ndr_push *ndr, i
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->environment));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->dll_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -17585,7 +17585,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_MonitorInfo2(struct ndr_push *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->monitor_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->monitor_name));
-@@ -17595,7 +17595,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_MonitorInfo2(struct ndr_push *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->environment) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->environment));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->environment));
-@@ -17605,7 +17605,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_MonitorInfo2(struct ndr_push *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->dll_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->dll_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->dll_name));
-@@ -17629,7 +17629,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo2(struct ndr_pull *ndr, i
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
- 			if (_ptr_monitor_name) {
- 				NDR_PULL_ALLOC(ndr, r->monitor_name);
-@@ -17641,7 +17641,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_environment));
- 			if (_ptr_environment) {
- 				NDR_PULL_ALLOC(ndr, r->environment);
-@@ -17653,7 +17653,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dll_name));
- 			if (_ptr_dll_name) {
- 				NDR_PULL_ALLOC(ndr, r->dll_name);
-@@ -17668,7 +17668,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo2(struct ndr_pull *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->monitor_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -17683,7 +17683,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->environment) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -17698,7 +17698,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo2(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->dll_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -17876,7 +17876,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrintProcDataTypesInfo1(struct ndr_p
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->name_array));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -17885,7 +17885,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrintProcDataTypesInfo1(struct ndr_p
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->name_array) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->name_array));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->name_array));
-@@ -17905,7 +17905,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrintProcDataTypesInfo1(struct ndr_p
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name_array));
- 			if (_ptr_name_array) {
- 				NDR_PULL_ALLOC(ndr, r->name_array);
-@@ -17920,7 +17920,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrintProcDataTypesInfo1(struct ndr_p
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->name_array) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -19526,7 +19526,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterEnumValues(struct ndr_push *n
- 		NDR_CHECK(ndr_push_setup_relative_base_offset1(ndr, r, ndr->offset));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->value_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -19534,18 +19534,18 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterEnumValues(struct ndr_push *n
- 		NDR_CHECK(ndr_push_winreg_Type(ndr, NDR_SCALARS, r->type));
- 		{
- 			uint32_t _flags_save_DATA_BLOB = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING|ndr_spoolss_PrinterEnumValues_align(r->type));
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data));
- 			ndr->flags = _flags_save_DATA_BLOB;
- 		}
--		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->data->length));
-+		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->data?r->data->length:0));
- 		NDR_CHECK(ndr_push_trailer_align(ndr, 5));
- 	}
- 	if (ndr_flags & NDR_BUFFERS) {
- 		NDR_CHECK(ndr_push_setup_relative_base_offset2(ndr, r));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->value_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->value_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->value_name));
-@@ -19555,14 +19555,14 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterEnumValues(struct ndr_push *n
- 		}
- 		{
- 			uint32_t _flags_save_DATA_BLOB = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING|ndr_spoolss_PrinterEnumValues_align(r->type));
- 			if (r->data) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data));
- 				{
- 					struct ndr_push *_ndr_data;
--					NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_data, 0, r->data->length));
-+					NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_data, 0, r->data?r->data->length:0));
- 					NDR_CHECK(ndr_push_DATA_BLOB(_ndr_data, NDR_SCALARS, *r->data));
--					NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_data, 0, r->data->length));
-+					NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_data, 0, r->data?r->data->length:0));
- 				}
- 				NDR_CHECK(ndr_push_relative_ptr2_end(ndr, r->data));
- 			}
-@@ -19585,7 +19585,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterEnumValues(struct ndr_pull *n
- 		NDR_CHECK(ndr_pull_setup_relative_base_offset1(ndr, r, ndr->offset));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_value_name));
- 			if (_ptr_value_name) {
- 				NDR_PULL_ALLOC(ndr, r->value_name);
-@@ -19599,7 +19599,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterEnumValues(struct ndr_pull *n
- 		NDR_CHECK(ndr_pull_winreg_Type(ndr, NDR_SCALARS, &r->type));
- 		{
- 			uint32_t _flags_save_DATA_BLOB = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING|ndr_spoolss_PrinterEnumValues_align(r->type));
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data));
- 			if (_ptr_data) {
- 				NDR_PULL_ALLOC(ndr, r->data);
-@@ -19616,7 +19616,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterEnumValues(struct ndr_pull *n
- 		NDR_CHECK(ndr_pull_setup_relative_base_offset2(ndr, r));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->value_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -19631,7 +19631,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterEnumValues(struct ndr_pull *n
- 		}
- 		{
- 			uint32_t _flags_save_DATA_BLOB = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING|ndr_spoolss_PrinterEnumValues_align(r->type));
- 			if (r->data) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -19672,7 +19672,7 @@ _PUBLIC_ void ndr_print_spoolss_PrinterEnumValues(struct ndr_print *ndr, const c
- 		ndr_print_DATA_BLOB(ndr, "data", *r->data);
- 	}
- 	ndr->depth--;
--	ndr_print_uint32(ndr, "data_length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?r->data->length:r->data_length);
-+	ndr_print_uint32(ndr, "data_length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?r->data?r->data->length:0:r->data_length);
- 	ndr->depth--;
- }
- 
-@@ -19696,7 +19696,7 @@ static enum ndr_err_code ndr_push_spoolss_KeyNames(struct ndr_push *ndr, int ndr
- 			default: {
- 				{
- 					uint32_t _flags_save_string_array = ndr->flags;
--					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 					NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->string_array));
- 					ndr->flags = _flags_save_string_array;
- 				}
-@@ -19737,7 +19737,7 @@ static enum ndr_err_code ndr_pull_spoolss_KeyNames(struct ndr_pull *ndr, int ndr
- 			default: {
- 				{
- 					uint32_t _flags_save_string_array = ndr->flags;
--					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 					NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->string_array));
- 					ndr->flags = _flags_save_string_array;
- 				}
-@@ -19980,7 +19980,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_MonitorUi(struct ndr_push *ndr, int
- 		NDR_CHECK(ndr_push_align(ndr, 4));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->dll_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -19997,7 +19997,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorUi(struct ndr_pull *ndr, int
- 		NDR_CHECK(ndr_pull_align(ndr, 4));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->dll_name));
- 			ndr->flags = _flags_save_string;
- 		}
-diff --git a/librpc/gen_ndr/ndr_svcctl.c b/librpc/gen_ndr/ndr_svcctl.c
-index a1cb7c7..e67d793 100644
---- a/librpc/gen_ndr/ndr_svcctl.c
-+++ b/librpc/gen_ndr/ndr_svcctl.c
-@@ -226,13 +226,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_ENUM_SERVICE_STATUSW(struct ndr_push *ndr, i
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->service_name));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->display_name));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -242,7 +242,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_ENUM_SERVICE_STATUSW(struct ndr_push *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->service_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->service_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->service_name));
-@@ -252,7 +252,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_ENUM_SERVICE_STATUSW(struct ndr_push *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->display_name) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->display_name));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->display_name));
-@@ -274,7 +274,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_ENUM_SERVICE_STATUSW(struct ndr_pull *ndr, i
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_service_name));
- 			if (_ptr_service_name) {
- 				NDR_PULL_ALLOC(ndr, r->service_name);
-@@ -286,7 +286,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_ENUM_SERVICE_STATUSW(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_display_name));
- 			if (_ptr_display_name) {
- 				NDR_PULL_ALLOC(ndr, r->display_name);
-@@ -302,7 +302,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_ENUM_SERVICE_STATUSW(struct ndr_pull *ndr, i
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->service_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -317,7 +317,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_ENUM_SERVICE_STATUSW(struct ndr_pull *ndr, i
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->display_name) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1016,7 +1016,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_SERVICE_DESCRIPTION(struct ndr_push *ndr, in
- 		NDR_CHECK(ndr_push_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->description));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -1025,7 +1025,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_SERVICE_DESCRIPTION(struct ndr_push *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->description) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->description));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->description));
-@@ -1045,7 +1045,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_SERVICE_DESCRIPTION(struct ndr_pull *ndr, in
- 		NDR_CHECK(ndr_pull_align(ndr, 5));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_description));
- 			if (_ptr_description) {
- 				NDR_PULL_ALLOC(ndr, r->description);
-@@ -1060,7 +1060,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_SERVICE_DESCRIPTION(struct ndr_pull *ndr, in
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->description) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1165,13 +1165,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_SERVICE_FAILURE_ACTIONS(struct ndr_push *ndr
- 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->reset_period));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->rebootmsg));
- 			ndr->flags = _flags_save_string;
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->command));
- 			ndr->flags = _flags_save_string;
- 		}
-@@ -1182,7 +1182,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_SERVICE_FAILURE_ACTIONS(struct ndr_push *ndr
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->rebootmsg) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->rebootmsg));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->rebootmsg));
-@@ -1192,7 +1192,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_SERVICE_FAILURE_ACTIONS(struct ndr_push *ndr
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->command) {
- 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->command));
- 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->command));
-@@ -1227,7 +1227,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_SERVICE_FAILURE_ACTIONS(struct ndr_pull *ndr
- 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->reset_period));
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_rebootmsg));
- 			if (_ptr_rebootmsg) {
- 				NDR_PULL_ALLOC(ndr, r->rebootmsg);
-@@ -1239,7 +1239,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_SERVICE_FAILURE_ACTIONS(struct ndr_pull *ndr
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_command));
- 			if (_ptr_command) {
- 				NDR_PULL_ALLOC(ndr, r->command);
-@@ -1265,7 +1265,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_SERVICE_FAILURE_ACTIONS(struct ndr_pull *ndr
- 	if (ndr_flags & NDR_BUFFERS) {
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->rebootmsg) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-@@ -1280,7 +1280,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_SERVICE_FAILURE_ACTIONS(struct ndr_pull *ndr
- 		}
- 		{
- 			uint32_t _flags_save_string = ndr->flags;
--			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
-+			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
- 			if (r->command) {
- 				uint32_t _relative_save_offset;
- 				_relative_save_offset = ndr->offset;
-diff --git a/librpc/gen_ndr/netlogon.h b/librpc/gen_ndr/netlogon.h
-index 268790e..207bc2c 100644
---- a/librpc/gen_ndr/netlogon.h
-+++ b/librpc/gen_ndr/netlogon.h
-@@ -800,7 +800,7 @@ enum SyncStateEnum
- 
- union netr_ChangeLogObject {
- 	struct dom_sid object_sid;/* [case(NETR_CHANGELOG_SID_INCLUDED)] */
--	const char * object_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM),case(NETR_CHANGELOG_NAME_INCLUDED)] */
-+	const char * object_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2),case(NETR_CHANGELOG_NAME_INCLUDED)] */
- }/* [nodiscriminant] */;
- 
- struct netr_ChangeLogEntry {
-@@ -931,7 +931,7 @@ struct netr_OsVersionInfoEx {
- 	uint32_t MinorVersion;
- 	uint32_t BuildNumber;
- 	uint32_t PlatformId;
--	const char * CSDVersion;/* [subcontext_size(256),subcontext(0),flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * CSDVersion;/* [subcontext_size(256),subcontext(0),flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint16_t ServicePackMajor;
- 	uint16_t ServicePackMinor;
- 	uint16_t SuiteMask;
-diff --git a/librpc/gen_ndr/spoolss.h b/librpc/gen_ndr/spoolss.h
-index fc7114a..ef8c63e 100644
---- a/librpc/gen_ndr/spoolss.h
-+++ b/librpc/gen_ndr/spoolss.h
-@@ -244,8 +244,8 @@ enum spoolss_MinorVersion
- #define JOB_STATUS_COMPLETE ( 0x00001000 )
- 
- struct spoolss_PrinterInfo0 {
--	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * servername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * servername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t cjobs;
- 	uint32_t total_jobs;
- 	uint32_t total_bytes;
-@@ -804,24 +804,24 @@ struct spoolss_DeviceMode {
- 
- struct spoolss_PrinterInfo1 {
- 	uint32_t flags;
--	const char * description;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * comment;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * description;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * comment;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- struct spoolss_PrinterInfo2 {
--	const char * servername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * sharename;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * portname;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * drivername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * comment;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * location;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * servername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * sharename;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * portname;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * drivername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * comment;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * location;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	struct spoolss_DeviceMode *devmode;/* [relative,subcontext(0),flag(LIBNDR_FLAG_ALIGN4)] */
--	const char * sepfile;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * printprocessor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * parameters;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * sepfile;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * printprocessor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * parameters;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	struct spoolss_security_descriptor *secdesc;/* [relative,subcontext(0),flag(LIBNDR_FLAG_ALIGN4)] */
- 	uint32_t attributes;
- 	uint32_t priority;/* [range(0,99)] */
-@@ -838,14 +838,14 @@ struct spoolss_PrinterInfo3 {
- }/* [gensize,public] */;
- 
- struct spoolss_PrinterInfo4 {
--	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * servername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * servername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t attributes;
- }/* [gensize,public] */;
- 
- struct spoolss_PrinterInfo5 {
--	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * portname;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * portname;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t attributes;
- 	uint32_t device_not_selected_timeout;
- 	uint32_t transmission_retry_timeout;
-@@ -863,7 +863,7 @@ struct spoolss_PrinterInfo6 {
- #define DSPRINT_PENDING ( 0x80000000 )
- 
- struct spoolss_PrinterInfo7 {
--	const char * guid;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * guid;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t action;
- }/* [gensize,public] */;
- 
-@@ -891,12 +891,12 @@ struct spoolss_DevmodeContainer {
- 
- struct spoolss_JobInfo1 {
- 	uint32_t job_id;
--	const char * printer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * server_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * user_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * document_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * data_type;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * text_status;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * printer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * server_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * user_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * document_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * data_type;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * text_status;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t status;
- 	uint32_t priority;/* [range(0,99)] */
- 	uint32_t position;
-@@ -907,17 +907,17 @@ struct spoolss_JobInfo1 {
- 
- struct spoolss_JobInfo2 {
- 	uint32_t job_id;
--	const char * printer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * server_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * user_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * document_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * notify_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * data_type;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * print_processor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * parameters;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * printer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * server_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * user_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * document_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * notify_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * data_type;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * print_processor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * parameters;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	struct spoolss_DeviceMode *devmode;/* [relative,subcontext(0),flag(LIBNDR_FLAG_ALIGN4)] */
--	const char * text_status;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * text_status;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	struct spoolss_security_descriptor *secdesc;/* [relative,subcontext(0),flag(LIBNDR_FLAG_ALIGN4)] */
- 	uint32_t status;
- 	uint32_t priority;/* [range(0,99)] */
-@@ -939,17 +939,17 @@ struct spoolss_JobInfo3 {
- 
- struct spoolss_JobInfo4 {
- 	uint32_t job_id;
--	const char * printer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * server_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * user_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * document_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * notify_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * data_type;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * print_processor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * parameters;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * printer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * server_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * user_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * document_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * notify_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * data_type;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * print_processor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * parameters;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	struct spoolss_DeviceMode *devmode;/* [relative,subcontext(0),flag(LIBNDR_FLAG_ALIGN4)] */
--	const char * text_status;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * text_status;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	struct spoolss_security_descriptor *secdesc;/* [relative,subcontext(0),flag(LIBNDR_FLAG_ALIGN4)] */
- 	uint32_t status;
- 	uint32_t priority;/* [range(0,99)] */
-@@ -1216,7 +1216,7 @@ struct spoolss_SetPrinterInfoCtr {
- 
- struct spoolss_StringArray {
- 	uint32_t _ndr_size;/* [value((ndr_size_spoolss_StringArray(r,ndr->iconv_convenience,ndr->flags)-4)/2)] */
--	const char ** string;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char ** string;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [public] */;
- 
- struct spoolss_AddDriverInfo1 {
-@@ -1363,52 +1363,52 @@ struct spoolss_AddDriverInfoCtr {
- };
- 
- struct spoolss_DriverInfo1 {
--	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- struct spoolss_DriverInfo2 {
- 	enum spoolss_DriverOSVersion version;
--	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- struct spoolss_DriverInfo3 {
- 	enum spoolss_DriverOSVersion version;
--	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- struct spoolss_DriverInfo4 {
- 	enum spoolss_DriverOSVersion version;
--	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- struct spoolss_DriverInfo5 {
- 	enum spoolss_DriverOSVersion version;
--	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t driver_attributes;
- 	uint32_t config_version;
- 	uint32_t driver_version;
-@@ -1416,56 +1416,56 @@ struct spoolss_DriverInfo5 {
- 
- struct spoolss_DriverInfo6 {
- 	enum spoolss_DriverOSVersion version;
--	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	NTTIME driver_date;
- 	uint64_t driver_version;
--	const char * manufacturer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * manufacturer_url;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * hardware_id;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * provider;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * manufacturer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * manufacturer_url;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * hardware_id;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * provider;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- struct spoolss_DriverInfo7 {
- 	uint32_t size;
- 	enum spoolss_DriverOSVersion version;
--	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * inf_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * install_source_root;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * inf_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * install_source_root;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- struct spoolss_DriverInfo8 {
- 	enum spoolss_DriverOSVersion version;
--	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	NTTIME driver_date;
- 	uint64_t driver_version;
--	const char * manufacturer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * manufacturer_url;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * hardware_id;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * provider;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * print_processor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * vendor_setup;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char ** color_profiles;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * inf_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * manufacturer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * manufacturer_url;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * hardware_id;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * provider;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * print_processor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * vendor_setup;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char ** color_profiles;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * inf_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t printer_driver_attributes;
--	const char ** core_driver_dependencies;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char ** core_driver_dependencies;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	NTTIME min_inbox_driver_ver_date;
- 	uint64_t min_inbox_driver_ver_version;
- }/* [gensize,public] */;
-@@ -1490,26 +1490,26 @@ enum spoolss_DriverFileType
- ;
- 
- struct spoolss_DriverFileInfo {
--	const char * file_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * file_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	enum spoolss_DriverFileType file_type;
- 	uint32_t file_version;
- }/* [public] */;
- 
- struct spoolss_DriverInfo101 {
- 	enum spoolss_DriverOSVersion version;
--	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	struct spoolss_DriverFileInfo *file_info;/* [relative,size_is(file_count)] */
-+	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	struct spoolss_DriverFileInfo *file_info;/* [relative,flag(LIBNDR_FLAG_ALIGN4),size_is(file_count)] */
- 	uint32_t file_count;
--	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	NTTIME driver_date;
- 	uint64_t driver_version;
--	const char * manufacturer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * manufacturer_url;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * hardware_id;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * provider;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * manufacturer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * manufacturer_url;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * hardware_id;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * provider;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,nopush,public,nopull] */;
- 
- union spoolss_DriverInfo {
-@@ -1525,7 +1525,7 @@ union spoolss_DriverInfo {
- }/* [gensize,relative_base,nodiscriminant,public,flag(LIBNDR_FLAG_RELATIVE_REVERSE)] */;
- 
- struct spoolss_DriverDirectoryInfo1 {
--	const char * directory_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * directory_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- union spoolss_DriverDirectoryInfo {
-@@ -1533,7 +1533,7 @@ union spoolss_DriverDirectoryInfo {
- }/* [gensize,relative_base,nodiscriminant,public,flag(LIBNDR_FLAG_RELATIVE_REVERSE)] */;
- 
- struct spoolss_PrintProcessorInfo1 {
--	const char * print_processor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * print_processor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- union spoolss_PrintProcessorInfo {
-@@ -1541,7 +1541,7 @@ union spoolss_PrintProcessorInfo {
- }/* [relative_base,public,nodiscriminant,flag(LIBNDR_FLAG_RELATIVE_REVERSE)] */;
- 
- struct spoolss_PrintProcessorDirectoryInfo1 {
--	const char * directory_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * directory_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- union spoolss_PrintProcessorDirectoryInfo {
-@@ -1564,7 +1564,7 @@ struct spoolss_OSVersion {
- 	uint32_t minor;
- 	uint32_t build;
- 	uint32_t platform_id;/* [value(2)] */
--	const char * extra_string;/* [subcontext_size(256),subcontext(0),flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * extra_string;/* [subcontext_size(256),subcontext(0),flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- struct spoolss_OSVersionEx {
-@@ -1573,7 +1573,7 @@ struct spoolss_OSVersionEx {
- 	uint32_t minor;
- 	uint32_t build;
- 	uint32_t platform_id;/* [value(2)] */
--	const char * extra_string;/* [subcontext_size(256),subcontext(0),flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * extra_string;/* [subcontext_size(256),subcontext(0),flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint16_t service_pack_major;
- 	uint16_t service_pack_minor;
- 	uint16_t suite_mask;
-@@ -1582,10 +1582,10 @@ struct spoolss_OSVersionEx {
- }/* [gensize,public] */;
- 
- union spoolss_PrinterData {
--	const char * string;/* [flag(LIBNDR_FLAG_STR_NULLTERM),case(REG_SZ)] */
-+	const char * string;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2),case(REG_SZ)] */
- 	DATA_BLOB binary;/* [flag(LIBNDR_FLAG_REMAINING),case(REG_BINARY)] */
- 	uint32_t value;/* [case(REG_DWORD)] */
--	const char ** string_array;/* [flag(LIBNDR_FLAG_STR_NULLTERM),case(REG_MULTI_SZ)] */
-+	const char ** string_array;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2),case(REG_MULTI_SZ)] */
- 	DATA_BLOB data;/* [flag(LIBNDR_FLAG_REMAINING),default] */
- }/* [nodiscriminant,public] */;
- 
-@@ -1618,7 +1618,7 @@ struct spoolss_FormArea {
- 
- struct spoolss_FormInfo1 {
- 	enum spoolss_FormFlags flags;
--	const char * form_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * form_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	struct spoolss_FormSize size;
- 	struct spoolss_FormArea area;
- }/* [gensize,public] */;
-@@ -1630,14 +1630,14 @@ struct spoolss_FormInfo1 {
- 
- struct spoolss_FormInfo2 {
- 	enum spoolss_FormFlags flags;
--	const char * form_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * form_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	struct spoolss_FormSize size;
- 	struct spoolss_FormArea area;
- 	const char * keyword;/* [relative,flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
- 	uint32_t string_type;
--	const char * mui_dll;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * mui_dll;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t ressource_id;
--	const char * display_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * display_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint16_t lang_id;
- 	uint16_t unused;
- }/* [gensize,public] */;
-@@ -1673,7 +1673,7 @@ union spoolss_AddFormInfo {
- }/* [switch_type(uint32)] */;
- 
- struct spoolss_PortInfo1 {
--	const char * port_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * port_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- /* bitmap spoolss_PortType */
-@@ -1683,9 +1683,9 @@ struct spoolss_PortInfo1 {
- #define SPOOLSS_PORT_TYPE_NET_ATTACHED ( 0x00000008 )
- 
- struct spoolss_PortInfo2 {
--	const char * port_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * description;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * port_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * description;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t port_type;
- 	uint32_t reserved;
- }/* [gensize,public] */;
-@@ -1742,12 +1742,12 @@ enum spoolss_PortSeverity
- 
- struct spoolss_PortInfo3 {
- 	enum spoolss_PortStatus status;
--	const char * status_string;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * status_string;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	enum spoolss_PortSeverity severity;
- }/* [gensize,public] */;
- 
- struct spoolss_PortInfoFF {
--	const char * port_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * port_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	DATA_BLOB monitor_data;
- }/* [gensize,public] */;
- 
-@@ -1759,13 +1759,13 @@ union spoolss_PortInfo {
- }/* [relative_base,public,nodiscriminant,flag(LIBNDR_FLAG_RELATIVE_REVERSE)] */;
- 
- struct spoolss_MonitorInfo1 {
--	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- struct spoolss_MonitorInfo2 {
--	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * environment;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * dll_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * environment;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * dll_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- union spoolss_MonitorInfo {
-@@ -1774,7 +1774,7 @@ union spoolss_MonitorInfo {
- }/* [relative_base,public,nodiscriminant,flag(LIBNDR_FLAG_RELATIVE_REVERSE)] */;
- 
- struct spoolss_PrintProcDataTypesInfo1 {
--	const char * name_array;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * name_array;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- union spoolss_PrintProcDataTypesInfo {
-@@ -2065,15 +2065,15 @@ struct spoolss_UserLevelCtr {
- #define JOB_ACCESS_READ ( 0x00000020 )
- 
- struct spoolss_PrinterEnumValues {
--	const char * value_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * value_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t value_name_len;/* [value(2*strlen_m_term(value_name))] */
- 	enum winreg_Type type;
--	DATA_BLOB *data;/* [relative,subcontext_size(data_length),subcontext(0),flag(LIBNDR_FLAG_REMAINING)] */
--	uint32_t data_length;/* [value(data->length)] */
-+	DATA_BLOB *data;/* [relative,subcontext_size(data_length),subcontext(0),flag(LIBNDR_FLAG_REMAINING|ndr_spoolss_PrinterEnumValues_align(r->type))] */
-+	uint32_t data_length;/* [value(data?data->length:0)] */
- }/* [relative_base,gensize,public] */;
- 
- union spoolss_KeyNames {
--	const char ** string_array;/* [default,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char ** string_array;/* [default,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [nodiscriminant] */;
- 
- /* bitmap spoolss_DeleteDriverFlags */
-@@ -2130,7 +2130,7 @@ struct spoolss_PortData2 {
- }/* [public] */;
- 
- struct spoolss_MonitorUi {
--	const char * dll_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * dll_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [public] */;
- 
- /* bitmap spoolss_AddPrinterDriverExFlags */
-diff --git a/librpc/gen_ndr/svcctl.h b/librpc/gen_ndr/svcctl.h
-index f047701..466a4d3 100644
---- a/librpc/gen_ndr/svcctl.h
-+++ b/librpc/gen_ndr/svcctl.h
-@@ -87,8 +87,8 @@ struct SERVICE_STATUS_PROCESS {
- }/* [public] */;
- 
- struct ENUM_SERVICE_STATUSW {
--	const char * service_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * display_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * service_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * display_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	struct SERVICE_STATUS status;
- }/* [gensize,public] */;
- 
-@@ -246,7 +246,7 @@ enum svcctl_ConfigLevel
- ;
- 
- struct SERVICE_DESCRIPTION {
--	const char * description;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * description;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- }/* [gensize,public] */;
- 
- enum SC_ACTION_TYPE
-@@ -273,8 +273,8 @@ struct SC_ACTION {
- 
- struct SERVICE_FAILURE_ACTIONS {
- 	uint32_t reset_period;
--	const char * rebootmsg;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
--	const char * command;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
-+	const char * rebootmsg;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
-+	const char * command;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
- 	uint32_t num_actions;/* [range(0,1024)] */
- 	struct SC_ACTION *actions;/* [relative,size_is(num_actions)] */
- }/* [gensize,public] */;
--- 
-1.7.4.1
-

Added: branches/samba/squeeze/debian/patches/bug_611177-617429_upstream_7567_0001-rerun-make-samba3-idl.patch
===================================================================
--- branches/samba/squeeze/debian/patches/bug_611177-617429_upstream_7567_0001-rerun-make-samba3-idl.patch	                        (rev 0)
+++ branches/samba/squeeze/debian/patches/bug_611177-617429_upstream_7567_0001-rerun-make-samba3-idl.patch	2011-03-14 21:06:04 UTC (rev 3708)
@@ -0,0 +1,5993 @@
+From 1a58a34d41a42baa696fa543cd8a9d79794886a3 Mon Sep 17 00:00:00 2001
+From: Stefan Metzmacher <metze at samba.org>
+Date: Wed, 2 Mar 2011 10:14:54 +0100
+Subject: [PATCH 1/9] rerun 'make samba3-idl'
+
+metze
+
+The last 10 patches address bug #7567 (printing from Windows 7 fails with
+0x000003e6 (in AD w2k8r2 controlled domain)).
+(cherry picked from commit c81256b04ead01f0d44c8a235d2ac793b7a51364)
+(cherry picked from commit cbfda3a086e27b6efa7db6ab1d41ef96fe04d171)
+---
+ librpc/gen_ndr/drsblobs.h     |    4 +-
+ librpc/gen_ndr/eventlog.h     |   12 +-
+ librpc/gen_ndr/misc.h         |    4 +-
+ librpc/gen_ndr/nbt.h          |   26 +-
+ librpc/gen_ndr/ndr_drsblobs.c |   16 +-
+ librpc/gen_ndr/ndr_eventlog.c |   24 +-
+ librpc/gen_ndr/ndr_misc.c     |   12 +-
+ librpc/gen_ndr/ndr_nbt.c      |   44 +-
+ librpc/gen_ndr/ndr_netlogon.c |    8 +-
+ librpc/gen_ndr/ndr_spoolss.c  | 1056 ++++++++++++++++++++--------------------
+ librpc/gen_ndr/ndr_svcctl.c   |   40 +-
+ librpc/gen_ndr/netlogon.h     |    4 +-
+ librpc/gen_ndr/spoolss.h      |  304 ++++++------
+ librpc/gen_ndr/svcctl.h       |   10 +-
+ 14 files changed, 782 insertions(+), 782 deletions(-)
+
+diff --git a/librpc/gen_ndr/drsblobs.h b/librpc/gen_ndr/drsblobs.h
+index 64f6ce8..f4adc57 100644
+--- a/librpc/gen_ndr/drsblobs.h
++++ b/librpc/gen_ndr/drsblobs.h
+@@ -84,9 +84,9 @@ struct repsFromTo1 {
+ 
+ struct repsFromTo2OtherInfo {
+ 	uint32_t __ndr_size;/* [value(ndr_size_repsFromTo2OtherInfo(this,ndr->iconv_convenience,ndr->flags))] */
+-	const char * dns_name1;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * dns_name1;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t unknown1;
+-	const char * dns_name2;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * dns_name2;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint64_t unknown2;
+ }/* [relative_base,gensize,public] */;
+ 
+diff --git a/librpc/gen_ndr/eventlog.h b/librpc/gen_ndr/eventlog.h
+index dc2e877..2ff0cbc 100644
+--- a/librpc/gen_ndr/eventlog.h
++++ b/librpc/gen_ndr/eventlog.h
+@@ -59,13 +59,13 @@ struct eventlog_Record_tdb {
+ 	uint32_t data_length;/* [value(data.length)] */
+ 	uint32_t data_offset;
+ 	uint32_t source_name_len;/* [value(2*strlen_m_term(source_name))] */
+-	const char * source_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * source_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t computer_name_len;/* [value(2*strlen_m_term(computer_name))] */
+-	const char * computer_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * computer_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t sid_padding;
+ 	DATA_BLOB sid;
+ 	uint32_t strings_len;/* [value(2*ndr_size_string_array(strings,num_of_strings,LIBNDR_FLAG_STR_NULLTERM))] */
+-	const char * *strings;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * *strings;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	DATA_BLOB data;
+ 	uint32_t padding;
+ }/* [public,flag(LIBNDR_FLAG_NOALIGN|LIBNDR_PRINT_ARRAY_HEX)] */;
+@@ -119,10 +119,10 @@ struct EVENTLOGRECORD {
+ 	uint32_t UserSidOffset;/* [value(56+2*(strlen_m_term(SourceName)+strlen_m_term(Computername)))] */
+ 	uint32_t DataLength;
+ 	uint32_t DataOffset;/* [value(56+2*(strlen_m_term(SourceName)+strlen_m_term(Computername))+UserSidLength+(2*ndr_size_string_array(Strings,NumStrings,LIBNDR_FLAG_STR_NULLTERM)))] */
+-	const char * SourceName;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * Computername;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * SourceName;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * Computername;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	struct dom_sid0 UserSid;/* [subcontext_size(UserSidLength),subcontext(0),flag(LIBNDR_FLAG_ALIGN4)] */
+-	const char * *Strings;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * *Strings;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint8_t *Data;/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */
+ 	const char * Pad;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
+ 	uint32_t Length2;/* [value(Length)] */
+diff --git a/librpc/gen_ndr/misc.h b/librpc/gen_ndr/misc.h
+index 6672c61..90330b3 100644
+--- a/librpc/gen_ndr/misc.h
++++ b/librpc/gen_ndr/misc.h
+@@ -84,10 +84,10 @@ enum winreg_Type
+ ;
+ 
+ union winreg_Data {
+-	const char * string;/* [flag(LIBNDR_FLAG_STR_NULLTERM),case(REG_SZ)] */
++	const char * string;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2),case(REG_SZ)] */
+ 	DATA_BLOB binary;/* [flag(LIBNDR_FLAG_REMAINING),case(REG_BINARY)] */
+ 	uint32_t value;/* [case(REG_DWORD)] */
+-	const char ** string_array;/* [flag(LIBNDR_FLAG_STR_NULLTERM),case(REG_MULTI_SZ)] */
++	const char ** string_array;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2),case(REG_MULTI_SZ)] */
+ 	DATA_BLOB data;/* [flag(LIBNDR_FLAG_REMAINING),default] */
+ }/* [public,nodiscriminant,flag(LIBNDR_FLAG_LITTLE_ENDIAN)] */;
+ 
+diff --git a/librpc/gen_ndr/nbt.h b/librpc/gen_ndr/nbt.h
+index ec234e1..31ea414 100644
+--- a/librpc/gen_ndr/nbt.h
++++ b/librpc/gen_ndr/nbt.h
+@@ -456,8 +456,8 @@ enum netlogon_command
+ 
+ struct NETLOGON_SAM_LOGON_REQUEST {
+ 	uint16_t request_count;
+-	const char * computer_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * user_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * computer_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * user_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	const char * mailslot_name;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
+ 	uint32_t acct_control;
+ 	uint32_t sid_size;/* [value(ndr_size_dom_sid0(&sid,ndr->flags))] */
+@@ -470,9 +470,9 @@ struct NETLOGON_SAM_LOGON_REQUEST {
+ 
+ struct NETLOGON_SAM_LOGON_RESPONSE_NT40 {
+ 	enum netlogon_command command;
+-	const char * server;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * user_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * domain;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * server;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * user_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * domain;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t nt_version;
+ 	uint16_t lmnt_token;
+ 	uint16_t lm20_token;
+@@ -480,9 +480,9 @@ struct NETLOGON_SAM_LOGON_RESPONSE_NT40 {
+ 
+ struct NETLOGON_SAM_LOGON_RESPONSE {
+ 	enum netlogon_command command;
+-	const char * pdc_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * user_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * domain_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * pdc_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * user_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * domain_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	struct GUID domain_uuid;
+ 	struct GUID zero_uuid;
+ 	const char * forest;
+@@ -520,7 +520,7 @@ struct nbt_netlogon_query_for_pdc {
+ 	const char * computer_name;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
+ 	const char * mailslot_name;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
+ 	DATA_BLOB _pad;/* [flag(LIBNDR_FLAG_ALIGN2)] */
+-	const char * unicode_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * unicode_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t nt_version;
+ 	uint16_t lmnt_token;
+ 	uint16_t lm20_token;
+@@ -530,8 +530,8 @@ struct nbt_netlogon_response_from_pdc {
+ 	enum netlogon_command command;
+ 	const char * pdc_name;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
+ 	DATA_BLOB _pad;/* [flag(LIBNDR_FLAG_ALIGN2)] */
+-	const char * unicode_pdc_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * domain_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * unicode_pdc_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * domain_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t nt_version;
+ 	uint16_t lmnt_token;
+ 	uint16_t lm20_token;
+@@ -551,8 +551,8 @@ struct NETLOGON_DB_CHANGE {
+ 	const char * pdc_name;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
+ 	const char * domain;/* [flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
+ 	DATA_BLOB _pad;/* [flag(LIBNDR_FLAG_ALIGN2)] */
+-	const char * unicode_pdc_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * unicode_domain;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * unicode_pdc_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * unicode_domain;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t db_count;
+ 	struct nbt_db_change_info *dbchange;
+ 	uint32_t sid_size;/* [value(ndr_size_dom_sid0(&sid,ndr->flags))] */
+diff --git a/librpc/gen_ndr/ndr_drsblobs.c b/librpc/gen_ndr/ndr_drsblobs.c
+index 33ebf4c..948fdc5 100644
+--- a/librpc/gen_ndr/ndr_drsblobs.c
++++ b/librpc/gen_ndr/ndr_drsblobs.c
+@@ -638,14 +638,14 @@ _PUBLIC_ enum ndr_err_code ndr_push_repsFromTo2OtherInfo(struct ndr_push *ndr, i
+ 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_size_repsFromTo2OtherInfo(r, ndr->iconv_convenience, ndr->flags)));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->dns_name1));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown1));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->dns_name2));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -656,7 +656,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_repsFromTo2OtherInfo(struct ndr_push *ndr, i
+ 		NDR_CHECK(ndr_push_setup_relative_base_offset2(ndr, r));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->dns_name1) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->dns_name1));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->dns_name1));
+@@ -666,7 +666,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_repsFromTo2OtherInfo(struct ndr_push *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->dns_name2) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->dns_name2));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->dns_name2));
+@@ -692,7 +692,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_repsFromTo2OtherInfo(struct ndr_pull *ndr, i
+ 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->__ndr_size));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dns_name1));
+ 			if (_ptr_dns_name1) {
+ 				NDR_PULL_ALLOC(ndr, r->dns_name1);
+@@ -705,7 +705,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_repsFromTo2OtherInfo(struct ndr_pull *ndr, i
+ 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown1));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dns_name2));
+ 			if (_ptr_dns_name2) {
+ 				NDR_PULL_ALLOC(ndr, r->dns_name2);
+@@ -722,7 +722,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_repsFromTo2OtherInfo(struct ndr_pull *ndr, i
+ 		NDR_CHECK(ndr_pull_setup_relative_base_offset2(ndr, r));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->dns_name1) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -737,7 +737,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_repsFromTo2OtherInfo(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->dns_name2) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+diff --git a/librpc/gen_ndr/ndr_eventlog.c b/librpc/gen_ndr/ndr_eventlog.c
+index a7e502c..e0ac6d2 100644
+--- a/librpc/gen_ndr/ndr_eventlog.c
++++ b/librpc/gen_ndr/ndr_eventlog.c
+@@ -121,14 +121,14 @@ _PUBLIC_ enum ndr_err_code ndr_push_eventlog_Record_tdb(struct ndr_push *ndr, in
+ 			NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2 * strlen_m_term(r->source_name)));
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->source_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+ 			NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2 * strlen_m_term(r->computer_name)));
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->computer_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+@@ -137,7 +137,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_eventlog_Record_tdb(struct ndr_push *ndr, in
+ 			NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2 * ndr_size_string_array(r->strings, r->num_of_strings, LIBNDR_FLAG_STR_NULLTERM)));
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				for (cntr_strings_0 = 0; cntr_strings_0 < r->num_of_strings; cntr_strings_0++) {
+ 					NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->strings[cntr_strings_0]));
+ 				}
+@@ -185,14 +185,14 @@ _PUBLIC_ enum ndr_err_code ndr_pull_eventlog_Record_tdb(struct ndr_pull *ndr, in
+ 			NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->source_name_len));
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->source_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+ 			NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->computer_name_len));
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->computer_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+@@ -201,7 +201,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_eventlog_Record_tdb(struct ndr_pull *ndr, in
+ 			NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->strings_len));
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_PULL_ALLOC_N(ndr, r->strings, r->num_of_strings);
+ 				_mem_save_strings_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ 				NDR_PULL_SET_MEM_CTX(ndr, r->strings, 0);
+@@ -385,13 +385,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_EVENTLOGRECORD(struct ndr_push *ndr, int ndr
+ 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 56 + 2 * (strlen_m_term(r->SourceName) + strlen_m_term(r->Computername)) + ndr_size_dom_sid0(&r->UserSid, ndr->flags) + (2 * ndr_size_string_array(r->Strings, r->NumStrings, LIBNDR_FLAG_STR_NULLTERM))));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->SourceName));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->Computername));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -408,7 +408,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_EVENTLOGRECORD(struct ndr_push *ndr, int ndr
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			for (cntr_Strings_0 = 0; cntr_Strings_0 < r->NumStrings; cntr_Strings_0++) {
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->Strings[cntr_Strings_0]));
+ 			}
+@@ -463,13 +463,13 @@ _PUBLIC_ enum ndr_err_code ndr_pull_EVENTLOGRECORD(struct ndr_pull *ndr, int ndr
+ 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->DataOffset));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->SourceName));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->Computername));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -486,7 +486,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_EVENTLOGRECORD(struct ndr_pull *ndr, int ndr
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_PULL_ALLOC_N(ndr, r->Strings, r->NumStrings);
+ 			_mem_save_Strings_0 = NDR_PULL_GET_MEM_CTX(ndr);
+ 			NDR_PULL_SET_MEM_CTX(ndr, r->Strings, 0);
+diff --git a/librpc/gen_ndr/ndr_misc.c b/librpc/gen_ndr/ndr_misc.c
+index 1f4d0c9..99cb045 100644
+--- a/librpc/gen_ndr/ndr_misc.c
++++ b/librpc/gen_ndr/ndr_misc.c
+@@ -226,7 +226,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_winreg_Data(struct ndr_push *ndr, int ndr_fl
+ 				case REG_SZ: {
+ 					{
+ 						uint32_t _flags_save_string = ndr->flags;
+-						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 						NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->string));
+ 						ndr->flags = _flags_save_string;
+ 					}
+@@ -235,7 +235,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_winreg_Data(struct ndr_push *ndr, int ndr_fl
+ 				case REG_EXPAND_SZ: {
+ 					{
+ 						uint32_t _flags_save_string = ndr->flags;
+-						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 						NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->string));
+ 						ndr->flags = _flags_save_string;
+ 					}
+@@ -266,7 +266,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_winreg_Data(struct ndr_push *ndr, int ndr_fl
+ 				case REG_MULTI_SZ: {
+ 					{
+ 						uint32_t _flags_save_string_array = ndr->flags;
+-						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 						NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->string_array));
+ 						ndr->flags = _flags_save_string_array;
+ 					}
+@@ -333,7 +333,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_winreg_Data(struct ndr_pull *ndr, int ndr_fl
+ 				case REG_SZ: {
+ 					{
+ 						uint32_t _flags_save_string = ndr->flags;
+-						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 						NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->string));
+ 						ndr->flags = _flags_save_string;
+ 					}
+@@ -342,7 +342,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_winreg_Data(struct ndr_pull *ndr, int ndr_fl
+ 				case REG_EXPAND_SZ: {
+ 					{
+ 						uint32_t _flags_save_string = ndr->flags;
+-						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 						NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->string));
+ 						ndr->flags = _flags_save_string;
+ 					}
+@@ -373,7 +373,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_winreg_Data(struct ndr_pull *ndr, int ndr_fl
+ 				case REG_MULTI_SZ: {
+ 					{
+ 						uint32_t _flags_save_string_array = ndr->flags;
+-						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++						ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 						NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->string_array));
+ 						ndr->flags = _flags_save_string_array;
+ 					}
+diff --git a/librpc/gen_ndr/ndr_nbt.c b/librpc/gen_ndr/ndr_nbt.c
+index 491dfd6..bffb25a 100644
+--- a/librpc/gen_ndr/ndr_nbt.c
++++ b/librpc/gen_ndr/ndr_nbt.c
+@@ -1749,19 +1749,19 @@ _PUBLIC_ enum ndr_err_code ndr_push_NETLOGON_SAM_LOGON_RESPONSE_NT40(struct ndr_
+ 			NDR_CHECK(ndr_push_netlogon_command(ndr, NDR_SCALARS, r->command));
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->server));
+ 				ndr->flags = _flags_save_string;
+ 			}
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->user_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->domain));
+ 				ndr->flags = _flags_save_string;
+ 			}
+@@ -1787,19 +1787,19 @@ _PUBLIC_ enum ndr_err_code ndr_pull_NETLOGON_SAM_LOGON_RESPONSE_NT40(struct ndr_
+ 			NDR_CHECK(ndr_pull_netlogon_command(ndr, NDR_SCALARS, &r->command));
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->server));
+ 				ndr->flags = _flags_save_string;
+ 			}
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->user_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->domain));
+ 				ndr->flags = _flags_save_string;
+ 			}
+@@ -1844,19 +1844,19 @@ _PUBLIC_ enum ndr_err_code ndr_push_NETLOGON_SAM_LOGON_RESPONSE(struct ndr_push
+ 			NDR_CHECK(ndr_push_netlogon_command(ndr, NDR_SCALARS, r->command));
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->pdc_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->user_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->domain_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+@@ -1889,19 +1889,19 @@ _PUBLIC_ enum ndr_err_code ndr_pull_NETLOGON_SAM_LOGON_RESPONSE(struct ndr_pull
+ 			NDR_CHECK(ndr_pull_netlogon_command(ndr, NDR_SCALARS, &r->command));
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->pdc_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->user_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->domain_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+@@ -2082,7 +2082,7 @@ static enum ndr_err_code ndr_push_nbt_netlogon_query_for_pdc(struct ndr_push *nd
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->unicode_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -2120,7 +2120,7 @@ static enum ndr_err_code ndr_pull_nbt_netlogon_query_for_pdc(struct ndr_pull *nd
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->unicode_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -2170,13 +2170,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_nbt_netlogon_response_from_pdc(struct ndr_pu
+ 			}
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->unicode_pdc_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->domain_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+@@ -2214,13 +2214,13 @@ _PUBLIC_ enum ndr_err_code ndr_pull_nbt_netlogon_response_from_pdc(struct ndr_pu
+ 			}
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->unicode_pdc_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+ 			{
+ 				uint32_t _flags_save_string = ndr->flags;
+-				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++				ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 				NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->domain_name));
+ 				ndr->flags = _flags_save_string;
+ 			}
+@@ -2323,13 +2323,13 @@ static enum ndr_err_code ndr_push_NETLOGON_DB_CHANGE(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->unicode_pdc_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->unicode_domain));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -2383,13 +2383,13 @@ static enum ndr_err_code ndr_pull_NETLOGON_DB_CHANGE(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->unicode_pdc_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->unicode_domain));
+ 			ndr->flags = _flags_save_string;
+ 		}
+diff --git a/librpc/gen_ndr/ndr_netlogon.c b/librpc/gen_ndr/ndr_netlogon.c
+index 8773439..0ea551d 100644
+--- a/librpc/gen_ndr/ndr_netlogon.c
++++ b/librpc/gen_ndr/ndr_netlogon.c
+@@ -6712,7 +6712,7 @@ static enum ndr_err_code ndr_push_netr_ChangeLogObject(struct ndr_push *ndr, int
+ 			case NETR_CHANGELOG_NAME_INCLUDED: {
+ 				{
+ 					uint32_t _flags_save_string = ndr->flags;
+-					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 					NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->object_name));
+ 					ndr->flags = _flags_save_string;
+ 				}
+@@ -6754,7 +6754,7 @@ static enum ndr_err_code ndr_pull_netr_ChangeLogObject(struct ndr_pull *ndr, int
+ 			case NETR_CHANGELOG_NAME_INCLUDED: {
+ 				{
+ 					uint32_t _flags_save_string = ndr->flags;
+-					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 					NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->object_name));
+ 					ndr->flags = _flags_save_string;
+ 				}
+@@ -7519,7 +7519,7 @@ static enum ndr_err_code ndr_push_netr_OsVersionInfoEx(struct ndr_push *ndr, int
+ 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->PlatformId));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			{
+ 				struct ndr_push *_ndr_CSDVersion;
+ 				NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_CSDVersion, 0, 256));
+@@ -7551,7 +7551,7 @@ static enum ndr_err_code ndr_pull_netr_OsVersionInfoEx(struct ndr_pull *ndr, int
+ 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->PlatformId));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			{
+ 				struct ndr_pull *_ndr_CSDVersion;
+ 				NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_CSDVersion, 0, 256));
+diff --git a/librpc/gen_ndr/ndr_spoolss.c b/librpc/gen_ndr/ndr_spoolss.c
+index af555d7..41f994b 100644
+--- a/librpc/gen_ndr/ndr_spoolss.c
++++ b/librpc/gen_ndr/ndr_spoolss.c
+@@ -314,13 +314,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo0(struct ndr_push *ndr, i
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->printername));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->servername));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -356,7 +356,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo0(struct ndr_push *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->printername) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->printername));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->printername));
+@@ -366,7 +366,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo0(struct ndr_push *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->servername) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->servername));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->servername));
+@@ -388,7 +388,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo0(struct ndr_pull *ndr, i
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printername));
+ 			if (_ptr_printername) {
+ 				NDR_PULL_ALLOC(ndr, r->printername);
+@@ -400,7 +400,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo0(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_servername));
+ 			if (_ptr_servername) {
+ 				NDR_PULL_ALLOC(ndr, r->servername);
+@@ -442,7 +442,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo0(struct ndr_pull *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->printername) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -457,7 +457,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo0(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->servername) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1286,19 +1286,19 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo1(struct ndr_push *ndr, i
+ 		NDR_CHECK(ndr_push_spoolss_PrinterAttributes(ndr, NDR_SCALARS, r->flags));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->description));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->comment));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -1307,7 +1307,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo1(struct ndr_push *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->description) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->description));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->description));
+@@ -1317,7 +1317,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo1(struct ndr_push *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->name));
+@@ -1327,7 +1327,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo1(struct ndr_push *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->comment) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->comment));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->comment));
+@@ -1352,7 +1352,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo1(struct ndr_pull *ndr, i
+ 		NDR_CHECK(ndr_pull_spoolss_PrinterAttributes(ndr, NDR_SCALARS, &r->flags));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_description));
+ 			if (_ptr_description) {
+ 				NDR_PULL_ALLOC(ndr, r->description);
+@@ -1364,7 +1364,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo1(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
+ 			if (_ptr_name) {
+ 				NDR_PULL_ALLOC(ndr, r->name);
+@@ -1376,7 +1376,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo1(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
+ 			if (_ptr_comment) {
+ 				NDR_PULL_ALLOC(ndr, r->comment);
+@@ -1391,7 +1391,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo1(struct ndr_pull *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->description) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1406,7 +1406,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo1(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1421,7 +1421,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo1(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->comment) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1501,7 +1501,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_servername));
+ 			if (_ptr_servername) {
+ 				NDR_PULL_ALLOC(ndr, r->servername);
+@@ -1513,7 +1513,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printername));
+ 			if (_ptr_printername) {
+ 				NDR_PULL_ALLOC(ndr, r->printername);
+@@ -1525,7 +1525,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sharename));
+ 			if (_ptr_sharename) {
+ 				NDR_PULL_ALLOC(ndr, r->sharename);
+@@ -1537,7 +1537,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_portname));
+ 			if (_ptr_portname) {
+ 				NDR_PULL_ALLOC(ndr, r->portname);
+@@ -1549,7 +1549,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_drivername));
+ 			if (_ptr_drivername) {
+ 				NDR_PULL_ALLOC(ndr, r->drivername);
+@@ -1561,7 +1561,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
+ 			if (_ptr_comment) {
+ 				NDR_PULL_ALLOC(ndr, r->comment);
+@@ -1573,7 +1573,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_location));
+ 			if (_ptr_location) {
+ 				NDR_PULL_ALLOC(ndr, r->location);
+@@ -1597,7 +1597,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sepfile));
+ 			if (_ptr_sepfile) {
+ 				NDR_PULL_ALLOC(ndr, r->sepfile);
+@@ -1609,7 +1609,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printprocessor));
+ 			if (_ptr_printprocessor) {
+ 				NDR_PULL_ALLOC(ndr, r->printprocessor);
+@@ -1621,7 +1621,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_datatype));
+ 			if (_ptr_datatype) {
+ 				NDR_PULL_ALLOC(ndr, r->datatype);
+@@ -1633,7 +1633,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parameters));
+ 			if (_ptr_parameters) {
+ 				NDR_PULL_ALLOC(ndr, r->parameters);
+@@ -1671,7 +1671,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->servername) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1686,7 +1686,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->printername) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1701,7 +1701,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->sharename) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1716,7 +1716,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->portname) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1731,7 +1731,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->drivername) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1746,7 +1746,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->comment) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1761,7 +1761,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->location) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1796,7 +1796,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->sepfile) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1811,7 +1811,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->printprocessor) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1826,7 +1826,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->datatype) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1841,7 +1841,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->parameters) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -2077,13 +2077,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo4(struct ndr_push *ndr, i
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->printername));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->servername));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -2093,7 +2093,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo4(struct ndr_push *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->printername) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->printername));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->printername));
+@@ -2103,7 +2103,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo4(struct ndr_push *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->servername) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->servername));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->servername));
+@@ -2125,7 +2125,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo4(struct ndr_pull *ndr, i
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printername));
+ 			if (_ptr_printername) {
+ 				NDR_PULL_ALLOC(ndr, r->printername);
+@@ -2137,7 +2137,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo4(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_servername));
+ 			if (_ptr_servername) {
+ 				NDR_PULL_ALLOC(ndr, r->servername);
+@@ -2153,7 +2153,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo4(struct ndr_pull *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->printername) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -2168,7 +2168,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo4(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->servername) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -2216,13 +2216,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo5(struct ndr_push *ndr, i
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->printername));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->portname));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -2234,7 +2234,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo5(struct ndr_push *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->printername) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->printername));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->printername));
+@@ -2244,7 +2244,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo5(struct ndr_push *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->portname) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->portname));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->portname));
+@@ -2266,7 +2266,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo5(struct ndr_pull *ndr, i
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printername));
+ 			if (_ptr_printername) {
+ 				NDR_PULL_ALLOC(ndr, r->printername);
+@@ -2278,7 +2278,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo5(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_portname));
+ 			if (_ptr_portname) {
+ 				NDR_PULL_ALLOC(ndr, r->portname);
+@@ -2296,7 +2296,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo5(struct ndr_pull *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->printername) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -2311,7 +2311,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo5(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->portname) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -2424,7 +2424,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo7(struct ndr_push *ndr, i
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->guid));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -2434,7 +2434,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterInfo7(struct ndr_push *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->guid) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->guid));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->guid));
+@@ -2454,7 +2454,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo7(struct ndr_pull *ndr, i
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_guid));
+ 			if (_ptr_guid) {
+ 				NDR_PULL_ALLOC(ndr, r->guid);
+@@ -2470,7 +2470,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterInfo7(struct ndr_pull *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->guid) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -2990,37 +2990,37 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo1(struct ndr_push *ndr, int n
+ 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->job_id));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->printer_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->server_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->user_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->document_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_type));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->text_status));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -3035,7 +3035,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo1(struct ndr_push *ndr, int n
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->printer_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->printer_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->printer_name));
+@@ -3045,7 +3045,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo1(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->server_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->server_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->server_name));
+@@ -3055,7 +3055,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo1(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->user_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->user_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->user_name));
+@@ -3065,7 +3065,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo1(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->document_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->document_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->document_name));
+@@ -3075,7 +3075,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo1(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_type) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_type));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_type));
+@@ -3085,7 +3085,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo1(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->text_status) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->text_status));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->text_status));
+@@ -3116,7 +3116,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
+ 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->job_id));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printer_name));
+ 			if (_ptr_printer_name) {
+ 				NDR_PULL_ALLOC(ndr, r->printer_name);
+@@ -3128,7 +3128,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ 			if (_ptr_server_name) {
+ 				NDR_PULL_ALLOC(ndr, r->server_name);
+@@ -3140,7 +3140,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user_name));
+ 			if (_ptr_user_name) {
+ 				NDR_PULL_ALLOC(ndr, r->user_name);
+@@ -3152,7 +3152,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_document_name));
+ 			if (_ptr_document_name) {
+ 				NDR_PULL_ALLOC(ndr, r->document_name);
+@@ -3164,7 +3164,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_type));
+ 			if (_ptr_data_type) {
+ 				NDR_PULL_ALLOC(ndr, r->data_type);
+@@ -3176,7 +3176,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_text_status));
+ 			if (_ptr_text_status) {
+ 				NDR_PULL_ALLOC(ndr, r->text_status);
+@@ -3200,7 +3200,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->printer_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3215,7 +3215,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->server_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3230,7 +3230,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->user_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3245,7 +3245,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->document_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3260,7 +3260,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_type) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3275,7 +3275,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo1(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->text_status) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3354,55 +3354,55 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
+ 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->job_id));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->printer_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->server_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->user_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->document_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->notify_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_type));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->print_processor));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->parameters));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -3414,7 +3414,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->text_status));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -3439,7 +3439,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->printer_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->printer_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->printer_name));
+@@ -3449,7 +3449,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->server_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->server_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->server_name));
+@@ -3459,7 +3459,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->user_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->user_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->user_name));
+@@ -3469,7 +3469,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->document_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->document_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->document_name));
+@@ -3479,7 +3479,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->notify_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->notify_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->notify_name));
+@@ -3489,7 +3489,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_type) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_type));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_type));
+@@ -3499,7 +3499,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->print_processor) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->print_processor));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->print_processor));
+@@ -3509,7 +3509,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->parameters) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->parameters));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->parameters));
+@@ -3519,7 +3519,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
+@@ -3544,7 +3544,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo2(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->text_status) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->text_status));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->text_status));
+@@ -3602,7 +3602,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->job_id));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printer_name));
+ 			if (_ptr_printer_name) {
+ 				NDR_PULL_ALLOC(ndr, r->printer_name);
+@@ -3614,7 +3614,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ 			if (_ptr_server_name) {
+ 				NDR_PULL_ALLOC(ndr, r->server_name);
+@@ -3626,7 +3626,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user_name));
+ 			if (_ptr_user_name) {
+ 				NDR_PULL_ALLOC(ndr, r->user_name);
+@@ -3638,7 +3638,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_document_name));
+ 			if (_ptr_document_name) {
+ 				NDR_PULL_ALLOC(ndr, r->document_name);
+@@ -3650,7 +3650,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_notify_name));
+ 			if (_ptr_notify_name) {
+ 				NDR_PULL_ALLOC(ndr, r->notify_name);
+@@ -3662,7 +3662,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_type));
+ 			if (_ptr_data_type) {
+ 				NDR_PULL_ALLOC(ndr, r->data_type);
+@@ -3674,7 +3674,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_print_processor));
+ 			if (_ptr_print_processor) {
+ 				NDR_PULL_ALLOC(ndr, r->print_processor);
+@@ -3686,7 +3686,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parameters));
+ 			if (_ptr_parameters) {
+ 				NDR_PULL_ALLOC(ndr, r->parameters);
+@@ -3698,7 +3698,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
+ 			if (_ptr_driver_name) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_name);
+@@ -3722,7 +3722,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_text_status));
+ 			if (_ptr_text_status) {
+ 				NDR_PULL_ALLOC(ndr, r->text_status);
+@@ -3762,7 +3762,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->printer_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3777,7 +3777,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->server_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3792,7 +3792,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->user_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3807,7 +3807,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->document_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3822,7 +3822,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->notify_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3837,7 +3837,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_type) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3852,7 +3852,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->print_processor) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3867,7 +3867,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->parameters) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3882,7 +3882,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -3917,7 +3917,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo2(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->text_status) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -4099,55 +4099,55 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
+ 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->job_id));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->printer_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->server_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->user_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->document_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->notify_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_type));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->print_processor));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->parameters));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -4159,7 +4159,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->text_status));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -4185,7 +4185,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->printer_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->printer_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->printer_name));
+@@ -4195,7 +4195,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->server_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->server_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->server_name));
+@@ -4205,7 +4205,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->user_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->user_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->user_name));
+@@ -4215,7 +4215,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->document_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->document_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->document_name));
+@@ -4225,7 +4225,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->notify_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->notify_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->notify_name));
+@@ -4235,7 +4235,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_type) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_type));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_type));
+@@ -4245,7 +4245,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->print_processor) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->print_processor));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->print_processor));
+@@ -4255,7 +4255,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->parameters) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->parameters));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->parameters));
+@@ -4265,7 +4265,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
+@@ -4290,7 +4290,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_JobInfo4(struct ndr_push *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->text_status) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->text_status));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->text_status));
+@@ -4348,7 +4348,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->job_id));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_printer_name));
+ 			if (_ptr_printer_name) {
+ 				NDR_PULL_ALLOC(ndr, r->printer_name);
+@@ -4360,7 +4360,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
+ 			if (_ptr_server_name) {
+ 				NDR_PULL_ALLOC(ndr, r->server_name);
+@@ -4372,7 +4372,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user_name));
+ 			if (_ptr_user_name) {
+ 				NDR_PULL_ALLOC(ndr, r->user_name);
+@@ -4384,7 +4384,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_document_name));
+ 			if (_ptr_document_name) {
+ 				NDR_PULL_ALLOC(ndr, r->document_name);
+@@ -4396,7 +4396,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_notify_name));
+ 			if (_ptr_notify_name) {
+ 				NDR_PULL_ALLOC(ndr, r->notify_name);
+@@ -4408,7 +4408,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_type));
+ 			if (_ptr_data_type) {
+ 				NDR_PULL_ALLOC(ndr, r->data_type);
+@@ -4420,7 +4420,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_print_processor));
+ 			if (_ptr_print_processor) {
+ 				NDR_PULL_ALLOC(ndr, r->print_processor);
+@@ -4432,7 +4432,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parameters));
+ 			if (_ptr_parameters) {
+ 				NDR_PULL_ALLOC(ndr, r->parameters);
+@@ -4444,7 +4444,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
+ 			if (_ptr_driver_name) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_name);
+@@ -4468,7 +4468,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_text_status));
+ 			if (_ptr_text_status) {
+ 				NDR_PULL_ALLOC(ndr, r->text_status);
+@@ -4509,7 +4509,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->printer_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -4524,7 +4524,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->server_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -4539,7 +4539,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->user_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -4554,7 +4554,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->document_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -4569,7 +4569,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->notify_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -4584,7 +4584,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_type) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -4599,7 +4599,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->print_processor) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -4614,7 +4614,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->parameters) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -4629,7 +4629,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -4664,7 +4664,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_JobInfo4(struct ndr_pull *ndr, int n
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->text_status) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -7974,7 +7974,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_StringArray(struct ndr_push *ndr, in
+ 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, (ndr_size_spoolss_StringArray(r, ndr->iconv_convenience, ndr->flags) - 4) / 2));
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->string));
+ 			ndr->flags = _flags_save_string_array;
+ 		}
+@@ -7992,7 +7992,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_StringArray(struct ndr_pull *ndr, in
+ 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->_ndr_size));
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->string));
+ 			ndr->flags = _flags_save_string_array;
+ 		}
+@@ -10468,7 +10468,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo1(struct ndr_push *ndr, in
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -10477,7 +10477,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo1(struct ndr_push *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
+@@ -10497,7 +10497,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo1(struct ndr_pull *ndr, in
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
+ 			if (_ptr_driver_name) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_name);
+@@ -10512,7 +10512,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo1(struct ndr_pull *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -10554,31 +10554,31 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo2(struct ndr_push *ndr, in
+ 		NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->architecture));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_path));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->config_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -10587,7 +10587,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo2(struct ndr_push *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
+@@ -10597,7 +10597,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo2(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->architecture) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->architecture));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->architecture));
+@@ -10607,7 +10607,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo2(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_path) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_path));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_path));
+@@ -10617,7 +10617,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo2(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_file));
+@@ -10627,7 +10627,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo2(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->config_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->config_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->config_file));
+@@ -10656,7 +10656,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
+ 		NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
+ 			if (_ptr_driver_name) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_name);
+@@ -10668,7 +10668,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_architecture));
+ 			if (_ptr_architecture) {
+ 				NDR_PULL_ALLOC(ndr, r->architecture);
+@@ -10680,7 +10680,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_path));
+ 			if (_ptr_driver_path) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_path);
+@@ -10692,7 +10692,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_file));
+ 			if (_ptr_data_file) {
+ 				NDR_PULL_ALLOC(ndr, r->data_file);
+@@ -10704,7 +10704,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_config_file));
+ 			if (_ptr_config_file) {
+ 				NDR_PULL_ALLOC(ndr, r->config_file);
+@@ -10719,7 +10719,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -10734,7 +10734,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->architecture) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -10749,7 +10749,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_path) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -10764,7 +10764,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -10779,7 +10779,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo2(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->config_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -10846,55 +10846,55 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
+ 		NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->architecture));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_path));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->config_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->help_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->dependent_files));
+ 			ndr->flags = _flags_save_string_array;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->default_datatype));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -10903,7 +10903,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
+@@ -10913,7 +10913,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->architecture) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->architecture));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->architecture));
+@@ -10923,7 +10923,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_path) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_path));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_path));
+@@ -10933,7 +10933,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_file));
+@@ -10943,7 +10943,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->config_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->config_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->config_file));
+@@ -10953,7 +10953,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->help_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->help_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->help_file));
+@@ -10963,7 +10963,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->dependent_files) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->dependent_files));
+ 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->dependent_files));
+@@ -10973,7 +10973,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->monitor_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->monitor_name));
+@@ -10983,7 +10983,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo3(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->default_datatype) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->default_datatype));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->default_datatype));
+@@ -11020,7 +11020,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
+ 			if (_ptr_driver_name) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_name);
+@@ -11032,7 +11032,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_architecture));
+ 			if (_ptr_architecture) {
+ 				NDR_PULL_ALLOC(ndr, r->architecture);
+@@ -11044,7 +11044,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_path));
+ 			if (_ptr_driver_path) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_path);
+@@ -11056,7 +11056,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_file));
+ 			if (_ptr_data_file) {
+ 				NDR_PULL_ALLOC(ndr, r->data_file);
+@@ -11068,7 +11068,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_config_file));
+ 			if (_ptr_config_file) {
+ 				NDR_PULL_ALLOC(ndr, r->config_file);
+@@ -11080,7 +11080,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_help_file));
+ 			if (_ptr_help_file) {
+ 				NDR_PULL_ALLOC(ndr, r->help_file);
+@@ -11092,7 +11092,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dependent_files));
+ 			if (_ptr_dependent_files) {
+ 				NDR_PULL_ALLOC(ndr, r->dependent_files);
+@@ -11104,7 +11104,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
+ 			if (_ptr_monitor_name) {
+ 				NDR_PULL_ALLOC(ndr, r->monitor_name);
+@@ -11116,7 +11116,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_default_datatype));
+ 			if (_ptr_default_datatype) {
+ 				NDR_PULL_ALLOC(ndr, r->default_datatype);
+@@ -11131,7 +11131,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11146,7 +11146,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->architecture) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11161,7 +11161,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_path) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11176,7 +11176,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11191,7 +11191,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->config_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11206,7 +11206,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->help_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11221,7 +11221,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->dependent_files) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11236,7 +11236,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->monitor_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11251,7 +11251,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo3(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->default_datatype) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11342,61 +11342,61 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
+ 		NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->architecture));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_path));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->config_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->help_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->dependent_files));
+ 			ndr->flags = _flags_save_string_array;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->default_datatype));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->previous_names));
+ 			ndr->flags = _flags_save_string_array;
+ 		}
+@@ -11405,7 +11405,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
+@@ -11415,7 +11415,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->architecture) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->architecture));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->architecture));
+@@ -11425,7 +11425,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_path) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_path));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_path));
+@@ -11435,7 +11435,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_file));
+@@ -11445,7 +11445,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->config_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->config_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->config_file));
+@@ -11455,7 +11455,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->help_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->help_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->help_file));
+@@ -11465,7 +11465,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->dependent_files) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->dependent_files));
+ 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->dependent_files));
+@@ -11475,7 +11475,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->monitor_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->monitor_name));
+@@ -11485,7 +11485,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->default_datatype) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->default_datatype));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->default_datatype));
+@@ -11495,7 +11495,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo4(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->previous_names) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->previous_names));
+ 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->previous_names));
+@@ -11534,7 +11534,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
+ 			if (_ptr_driver_name) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_name);
+@@ -11546,7 +11546,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_architecture));
+ 			if (_ptr_architecture) {
+ 				NDR_PULL_ALLOC(ndr, r->architecture);
+@@ -11558,7 +11558,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_path));
+ 			if (_ptr_driver_path) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_path);
+@@ -11570,7 +11570,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_file));
+ 			if (_ptr_data_file) {
+ 				NDR_PULL_ALLOC(ndr, r->data_file);
+@@ -11582,7 +11582,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_config_file));
+ 			if (_ptr_config_file) {
+ 				NDR_PULL_ALLOC(ndr, r->config_file);
+@@ -11594,7 +11594,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_help_file));
+ 			if (_ptr_help_file) {
+ 				NDR_PULL_ALLOC(ndr, r->help_file);
+@@ -11606,7 +11606,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dependent_files));
+ 			if (_ptr_dependent_files) {
+ 				NDR_PULL_ALLOC(ndr, r->dependent_files);
+@@ -11618,7 +11618,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
+ 			if (_ptr_monitor_name) {
+ 				NDR_PULL_ALLOC(ndr, r->monitor_name);
+@@ -11630,7 +11630,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_default_datatype));
+ 			if (_ptr_default_datatype) {
+ 				NDR_PULL_ALLOC(ndr, r->default_datatype);
+@@ -11642,7 +11642,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_previous_names));
+ 			if (_ptr_previous_names) {
+ 				NDR_PULL_ALLOC(ndr, r->previous_names);
+@@ -11657,7 +11657,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11672,7 +11672,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->architecture) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11687,7 +11687,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_path) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11702,7 +11702,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11717,7 +11717,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->config_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11732,7 +11732,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->help_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11747,7 +11747,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->dependent_files) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11762,7 +11762,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->monitor_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11777,7 +11777,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->default_datatype) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11792,7 +11792,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo4(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->previous_names) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -11889,31 +11889,31 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo5(struct ndr_push *ndr, in
+ 		NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->architecture));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_path));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->config_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -11925,7 +11925,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo5(struct ndr_push *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
+@@ -11935,7 +11935,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo5(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->architecture) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->architecture));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->architecture));
+@@ -11945,7 +11945,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo5(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_path) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_path));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_path));
+@@ -11955,7 +11955,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo5(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_file));
+@@ -11965,7 +11965,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo5(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->config_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->config_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->config_file));
+@@ -11994,7 +11994,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
+ 		NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
+ 			if (_ptr_driver_name) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_name);
+@@ -12006,7 +12006,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_architecture));
+ 			if (_ptr_architecture) {
+ 				NDR_PULL_ALLOC(ndr, r->architecture);
+@@ -12018,7 +12018,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_path));
+ 			if (_ptr_driver_path) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_path);
+@@ -12030,7 +12030,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_file));
+ 			if (_ptr_data_file) {
+ 				NDR_PULL_ALLOC(ndr, r->data_file);
+@@ -12042,7 +12042,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_config_file));
+ 			if (_ptr_config_file) {
+ 				NDR_PULL_ALLOC(ndr, r->config_file);
+@@ -12060,7 +12060,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12075,7 +12075,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->architecture) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12090,7 +12090,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_path) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12105,7 +12105,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12120,7 +12120,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo5(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->config_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12190,61 +12190,61 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->architecture));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_path));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->config_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->help_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->dependent_files));
+ 			ndr->flags = _flags_save_string_array;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->default_datatype));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->previous_names));
+ 			ndr->flags = _flags_save_string_array;
+ 		}
+@@ -12252,25 +12252,25 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->driver_version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->manufacturer_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->manufacturer_url));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->hardware_id));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->provider));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -12279,7 +12279,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
+@@ -12289,7 +12289,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->architecture) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->architecture));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->architecture));
+@@ -12299,7 +12299,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_path) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_path));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_path));
+@@ -12309,7 +12309,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_file));
+@@ -12319,7 +12319,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->config_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->config_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->config_file));
+@@ -12329,7 +12329,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->help_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->help_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->help_file));
+@@ -12339,7 +12339,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->dependent_files) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->dependent_files));
+ 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->dependent_files));
+@@ -12349,7 +12349,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->monitor_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->monitor_name));
+@@ -12359,7 +12359,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->default_datatype) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->default_datatype));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->default_datatype));
+@@ -12369,7 +12369,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->previous_names) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->previous_names));
+ 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->previous_names));
+@@ -12379,7 +12379,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->manufacturer_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->manufacturer_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->manufacturer_name));
+@@ -12389,7 +12389,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->manufacturer_url) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->manufacturer_url));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->manufacturer_url));
+@@ -12399,7 +12399,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->hardware_id) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->hardware_id));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->hardware_id));
+@@ -12409,7 +12409,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo6(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->provider) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->provider));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->provider));
+@@ -12456,7 +12456,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
+ 			if (_ptr_driver_name) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_name);
+@@ -12468,7 +12468,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_architecture));
+ 			if (_ptr_architecture) {
+ 				NDR_PULL_ALLOC(ndr, r->architecture);
+@@ -12480,7 +12480,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_path));
+ 			if (_ptr_driver_path) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_path);
+@@ -12492,7 +12492,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_file));
+ 			if (_ptr_data_file) {
+ 				NDR_PULL_ALLOC(ndr, r->data_file);
+@@ -12504,7 +12504,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_config_file));
+ 			if (_ptr_config_file) {
+ 				NDR_PULL_ALLOC(ndr, r->config_file);
+@@ -12516,7 +12516,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_help_file));
+ 			if (_ptr_help_file) {
+ 				NDR_PULL_ALLOC(ndr, r->help_file);
+@@ -12528,7 +12528,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dependent_files));
+ 			if (_ptr_dependent_files) {
+ 				NDR_PULL_ALLOC(ndr, r->dependent_files);
+@@ -12540,7 +12540,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
+ 			if (_ptr_monitor_name) {
+ 				NDR_PULL_ALLOC(ndr, r->monitor_name);
+@@ -12552,7 +12552,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_default_datatype));
+ 			if (_ptr_default_datatype) {
+ 				NDR_PULL_ALLOC(ndr, r->default_datatype);
+@@ -12564,7 +12564,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_previous_names));
+ 			if (_ptr_previous_names) {
+ 				NDR_PULL_ALLOC(ndr, r->previous_names);
+@@ -12578,7 +12578,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->driver_version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_manufacturer_name));
+ 			if (_ptr_manufacturer_name) {
+ 				NDR_PULL_ALLOC(ndr, r->manufacturer_name);
+@@ -12590,7 +12590,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_manufacturer_url));
+ 			if (_ptr_manufacturer_url) {
+ 				NDR_PULL_ALLOC(ndr, r->manufacturer_url);
+@@ -12602,7 +12602,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_hardware_id));
+ 			if (_ptr_hardware_id) {
+ 				NDR_PULL_ALLOC(ndr, r->hardware_id);
+@@ -12614,7 +12614,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_provider));
+ 			if (_ptr_provider) {
+ 				NDR_PULL_ALLOC(ndr, r->provider);
+@@ -12629,7 +12629,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12644,7 +12644,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->architecture) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12659,7 +12659,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_path) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12674,7 +12674,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12689,7 +12689,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->config_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12704,7 +12704,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->help_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12719,7 +12719,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->dependent_files) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12734,7 +12734,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->monitor_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12749,7 +12749,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->default_datatype) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12764,7 +12764,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->previous_names) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12779,7 +12779,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->manufacturer_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12794,7 +12794,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->manufacturer_url) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12809,7 +12809,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->hardware_id) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12824,7 +12824,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo6(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->provider) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -12948,19 +12948,19 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo7(struct ndr_push *ndr, in
+ 		NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->inf_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->install_source_root));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -12969,7 +12969,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo7(struct ndr_push *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
+@@ -12979,7 +12979,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo7(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->inf_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->inf_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->inf_name));
+@@ -12989,7 +12989,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo7(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->install_source_root) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->install_source_root));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->install_source_root));
+@@ -13015,7 +13015,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo7(struct ndr_pull *ndr, in
+ 		NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
+ 			if (_ptr_driver_name) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_name);
+@@ -13027,7 +13027,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo7(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_inf_name));
+ 			if (_ptr_inf_name) {
+ 				NDR_PULL_ALLOC(ndr, r->inf_name);
+@@ -13039,7 +13039,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo7(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_install_source_root));
+ 			if (_ptr_install_source_root) {
+ 				NDR_PULL_ALLOC(ndr, r->install_source_root);
+@@ -13054,7 +13054,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo7(struct ndr_pull *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13069,7 +13069,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo7(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->inf_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13084,7 +13084,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo7(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->install_source_root) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13140,61 +13140,61 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		NDR_CHECK(ndr_push_spoolss_DriverOSVersion(ndr, NDR_SCALARS, r->version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->architecture));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->driver_path));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->config_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->help_file));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->dependent_files));
+ 			ndr->flags = _flags_save_string_array;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->default_datatype));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->previous_names));
+ 			ndr->flags = _flags_save_string_array;
+ 		}
+@@ -13202,56 +13202,56 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->driver_version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->manufacturer_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->manufacturer_url));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->hardware_id));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->provider));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->print_processor));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->vendor_setup));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->color_profiles));
+ 			ndr->flags = _flags_save_string_array;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->inf_path));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->printer_driver_attributes));
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->core_driver_dependencies));
+ 			ndr->flags = _flags_save_string_array;
+ 		}
+@@ -13262,7 +13262,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_name));
+@@ -13272,7 +13272,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->architecture) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->architecture));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->architecture));
+@@ -13282,7 +13282,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_path) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->driver_path));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->driver_path));
+@@ -13292,7 +13292,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->data_file));
+@@ -13302,7 +13302,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->config_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->config_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->config_file));
+@@ -13312,7 +13312,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->help_file) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->help_file));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->help_file));
+@@ -13322,7 +13322,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->dependent_files) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->dependent_files));
+ 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->dependent_files));
+@@ -13332,7 +13332,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->monitor_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->monitor_name));
+@@ -13342,7 +13342,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->default_datatype) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->default_datatype));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->default_datatype));
+@@ -13352,7 +13352,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->previous_names) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->previous_names));
+ 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->previous_names));
+@@ -13362,7 +13362,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->manufacturer_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->manufacturer_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->manufacturer_name));
+@@ -13372,7 +13372,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->manufacturer_url) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->manufacturer_url));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->manufacturer_url));
+@@ -13382,7 +13382,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->hardware_id) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->hardware_id));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->hardware_id));
+@@ -13392,7 +13392,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->provider) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->provider));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->provider));
+@@ -13402,7 +13402,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->print_processor) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->print_processor));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->print_processor));
+@@ -13412,7 +13412,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->vendor_setup) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->vendor_setup));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->vendor_setup));
+@@ -13422,7 +13422,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->color_profiles) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->color_profiles));
+ 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->color_profiles));
+@@ -13432,7 +13432,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->inf_path) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->inf_path));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->inf_path));
+@@ -13442,7 +13442,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverInfo8(struct ndr_push *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->core_driver_dependencies) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->core_driver_dependencies));
+ 				NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->core_driver_dependencies));
+@@ -13499,7 +13499,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		NDR_CHECK(ndr_pull_spoolss_DriverOSVersion(ndr, NDR_SCALARS, &r->version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_name));
+ 			if (_ptr_driver_name) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_name);
+@@ -13511,7 +13511,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_architecture));
+ 			if (_ptr_architecture) {
+ 				NDR_PULL_ALLOC(ndr, r->architecture);
+@@ -13523,7 +13523,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_driver_path));
+ 			if (_ptr_driver_path) {
+ 				NDR_PULL_ALLOC(ndr, r->driver_path);
+@@ -13535,7 +13535,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data_file));
+ 			if (_ptr_data_file) {
+ 				NDR_PULL_ALLOC(ndr, r->data_file);
+@@ -13547,7 +13547,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_config_file));
+ 			if (_ptr_config_file) {
+ 				NDR_PULL_ALLOC(ndr, r->config_file);
+@@ -13559,7 +13559,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_help_file));
+ 			if (_ptr_help_file) {
+ 				NDR_PULL_ALLOC(ndr, r->help_file);
+@@ -13571,7 +13571,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dependent_files));
+ 			if (_ptr_dependent_files) {
+ 				NDR_PULL_ALLOC(ndr, r->dependent_files);
+@@ -13583,7 +13583,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
+ 			if (_ptr_monitor_name) {
+ 				NDR_PULL_ALLOC(ndr, r->monitor_name);
+@@ -13595,7 +13595,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_default_datatype));
+ 			if (_ptr_default_datatype) {
+ 				NDR_PULL_ALLOC(ndr, r->default_datatype);
+@@ -13607,7 +13607,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_previous_names));
+ 			if (_ptr_previous_names) {
+ 				NDR_PULL_ALLOC(ndr, r->previous_names);
+@@ -13621,7 +13621,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->driver_version));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_manufacturer_name));
+ 			if (_ptr_manufacturer_name) {
+ 				NDR_PULL_ALLOC(ndr, r->manufacturer_name);
+@@ -13633,7 +13633,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_manufacturer_url));
+ 			if (_ptr_manufacturer_url) {
+ 				NDR_PULL_ALLOC(ndr, r->manufacturer_url);
+@@ -13645,7 +13645,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_hardware_id));
+ 			if (_ptr_hardware_id) {
+ 				NDR_PULL_ALLOC(ndr, r->hardware_id);
+@@ -13657,7 +13657,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_provider));
+ 			if (_ptr_provider) {
+ 				NDR_PULL_ALLOC(ndr, r->provider);
+@@ -13669,7 +13669,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_print_processor));
+ 			if (_ptr_print_processor) {
+ 				NDR_PULL_ALLOC(ndr, r->print_processor);
+@@ -13681,7 +13681,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_vendor_setup));
+ 			if (_ptr_vendor_setup) {
+ 				NDR_PULL_ALLOC(ndr, r->vendor_setup);
+@@ -13693,7 +13693,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_color_profiles));
+ 			if (_ptr_color_profiles) {
+ 				NDR_PULL_ALLOC(ndr, r->color_profiles);
+@@ -13705,7 +13705,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_inf_path));
+ 			if (_ptr_inf_path) {
+ 				NDR_PULL_ALLOC(ndr, r->inf_path);
+@@ -13718,7 +13718,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->printer_driver_attributes));
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_core_driver_dependencies));
+ 			if (_ptr_core_driver_dependencies) {
+ 				NDR_PULL_ALLOC(ndr, r->core_driver_dependencies);
+@@ -13735,7 +13735,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13750,7 +13750,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->architecture) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13765,7 +13765,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->driver_path) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13780,7 +13780,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->data_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13795,7 +13795,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->config_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13810,7 +13810,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->help_file) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13825,7 +13825,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->dependent_files) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13840,7 +13840,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->monitor_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13855,7 +13855,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->default_datatype) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13870,7 +13870,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->previous_names) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13885,7 +13885,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->manufacturer_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13900,7 +13900,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->manufacturer_url) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13915,7 +13915,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->hardware_id) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13930,7 +13930,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->provider) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13945,7 +13945,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->print_processor) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13960,7 +13960,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->vendor_setup) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13975,7 +13975,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->color_profiles) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -13990,7 +13990,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->inf_path) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -14005,7 +14005,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverInfo8(struct ndr_pull *ndr, in
+ 		}
+ 		{
+ 			uint32_t _flags_save_string_array = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->core_driver_dependencies) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -14188,7 +14188,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverFileInfo(struct ndr_push *ndr,
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->file_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -14199,7 +14199,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverFileInfo(struct ndr_push *ndr,
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->file_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->file_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->file_name));
+@@ -14219,7 +14219,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverFileInfo(struct ndr_pull *ndr,
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_file_name));
+ 			if (_ptr_file_name) {
+ 				NDR_PULL_ALLOC(ndr, r->file_name);
+@@ -14236,7 +14236,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverFileInfo(struct ndr_pull *ndr,
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->file_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -14659,7 +14659,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_DriverDirectoryInfo1(struct ndr_push
+ 		NDR_CHECK(ndr_push_align(ndr, 4));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->directory_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -14676,7 +14676,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_DriverDirectoryInfo1(struct ndr_pull
+ 		NDR_CHECK(ndr_pull_align(ndr, 4));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->directory_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -14818,7 +14818,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrintProcessorInfo1(struct ndr_push
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->print_processor_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -14827,7 +14827,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrintProcessorInfo1(struct ndr_push
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->print_processor_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->print_processor_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->print_processor_name));
+@@ -14847,7 +14847,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrintProcessorInfo1(struct ndr_pull
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_print_processor_name));
+ 			if (_ptr_print_processor_name) {
+ 				NDR_PULL_ALLOC(ndr, r->print_processor_name);
+@@ -14862,7 +14862,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrintProcessorInfo1(struct ndr_pull
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->print_processor_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -15004,7 +15004,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrintProcessorDirectoryInfo1(struct
+ 		NDR_CHECK(ndr_push_align(ndr, 4));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->directory_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -15021,7 +15021,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrintProcessorDirectoryInfo1(struct
+ 		NDR_CHECK(ndr_pull_align(ndr, 4));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->directory_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -15427,7 +15427,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_OSVersion(struct ndr_push *ndr, int
+ 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			{
+ 				struct ndr_push *_ndr_extra_string;
+ 				NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_extra_string, 0, 256));
+@@ -15454,7 +15454,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_OSVersion(struct ndr_pull *ndr, int
+ 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->platform_id));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			{
+ 				struct ndr_pull *_ndr_extra_string;
+ 				NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_extra_string, 0, 256));
+@@ -15499,7 +15499,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_OSVersionEx(struct ndr_push *ndr, in
+ 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			{
+ 				struct ndr_push *_ndr_extra_string;
+ 				NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_extra_string, 0, 256));
+@@ -15531,7 +15531,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_OSVersionEx(struct ndr_pull *ndr, in
+ 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->platform_id));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			{
+ 				struct ndr_pull *_ndr_extra_string;
+ 				NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_extra_string, 0, 256));
+@@ -15587,7 +15587,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterData(struct ndr_push *ndr, in
+ 			case REG_SZ: {
+ 				{
+ 					uint32_t _flags_save_string = ndr->flags;
+-					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 					NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->string));
+ 					ndr->flags = _flags_save_string;
+ 				}
+@@ -15609,7 +15609,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterData(struct ndr_push *ndr, in
+ 			case REG_MULTI_SZ: {
+ 				{
+ 					uint32_t _flags_save_string_array = ndr->flags;
+-					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 					NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->string_array));
+ 					ndr->flags = _flags_save_string_array;
+ 				}
+@@ -15665,7 +15665,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterData(struct ndr_pull *ndr, in
+ 			case REG_SZ: {
+ 				{
+ 					uint32_t _flags_save_string = ndr->flags;
+-					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 					NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->string));
+ 					ndr->flags = _flags_save_string;
+ 				}
+@@ -15687,7 +15687,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterData(struct ndr_pull *ndr, in
+ 			case REG_MULTI_SZ: {
+ 				{
+ 					uint32_t _flags_save_string_array = ndr->flags;
+-					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 					NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->string_array));
+ 					ndr->flags = _flags_save_string_array;
+ 				}
+@@ -15870,7 +15870,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_FormInfo1(struct ndr_push *ndr, int
+ 		NDR_CHECK(ndr_push_spoolss_FormFlags(ndr, NDR_SCALARS, r->flags));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->form_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -15881,7 +15881,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_FormInfo1(struct ndr_push *ndr, int
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->form_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->form_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->form_name));
+@@ -15902,7 +15902,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo1(struct ndr_pull *ndr, int
+ 		NDR_CHECK(ndr_pull_spoolss_FormFlags(ndr, NDR_SCALARS, &r->flags));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_form_name));
+ 			if (_ptr_form_name) {
+ 				NDR_PULL_ALLOC(ndr, r->form_name);
+@@ -15919,7 +15919,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo1(struct ndr_pull *ndr, int
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->form_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -15988,7 +15988,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_FormInfo2(struct ndr_push *ndr, int
+ 		NDR_CHECK(ndr_push_spoolss_FormFlags(ndr, NDR_SCALARS, r->flags));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->form_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -16003,14 +16003,14 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_FormInfo2(struct ndr_push *ndr, int
+ 		NDR_CHECK(ndr_push_spoolss_FormStringType(ndr, NDR_SCALARS, r->string_type));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->mui_dll));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ressource_id));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->display_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -16021,7 +16021,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_FormInfo2(struct ndr_push *ndr, int
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->form_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->form_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->form_name));
+@@ -16041,7 +16041,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_FormInfo2(struct ndr_push *ndr, int
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->mui_dll) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->mui_dll));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->mui_dll));
+@@ -16051,7 +16051,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_FormInfo2(struct ndr_push *ndr, int
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->display_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->display_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->display_name));
+@@ -16078,7 +16078,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo2(struct ndr_pull *ndr, int
+ 		NDR_CHECK(ndr_pull_spoolss_FormFlags(ndr, NDR_SCALARS, &r->flags));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_form_name));
+ 			if (_ptr_form_name) {
+ 				NDR_PULL_ALLOC(ndr, r->form_name);
+@@ -16105,7 +16105,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo2(struct ndr_pull *ndr, int
+ 		NDR_CHECK(ndr_pull_spoolss_FormStringType(ndr, NDR_SCALARS, &r->string_type));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_mui_dll));
+ 			if (_ptr_mui_dll) {
+ 				NDR_PULL_ALLOC(ndr, r->mui_dll);
+@@ -16118,7 +16118,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo2(struct ndr_pull *ndr, int
+ 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ressource_id));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_display_name));
+ 			if (_ptr_display_name) {
+ 				NDR_PULL_ALLOC(ndr, r->display_name);
+@@ -16135,7 +16135,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo2(struct ndr_pull *ndr, int
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->form_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -16165,7 +16165,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo2(struct ndr_pull *ndr, int
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->mui_dll) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -16180,7 +16180,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_FormInfo2(struct ndr_pull *ndr, int
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->display_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -16762,7 +16762,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo1(struct ndr_push *ndr, int
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->port_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -16771,7 +16771,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo1(struct ndr_push *ndr, int
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->port_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->port_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->port_name));
+@@ -16791,7 +16791,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo1(struct ndr_pull *ndr, int
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_port_name));
+ 			if (_ptr_port_name) {
+ 				NDR_PULL_ALLOC(ndr, r->port_name);
+@@ -16806,7 +16806,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo1(struct ndr_pull *ndr, int
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->port_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -16872,19 +16872,19 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo2(struct ndr_push *ndr, int
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->port_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->description));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -16895,7 +16895,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo2(struct ndr_push *ndr, int
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->port_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->port_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->port_name));
+@@ -16905,7 +16905,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo2(struct ndr_push *ndr, int
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->monitor_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->monitor_name));
+@@ -16915,7 +16915,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo2(struct ndr_push *ndr, int
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->description) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->description));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->description));
+@@ -16939,7 +16939,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo2(struct ndr_pull *ndr, int
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_port_name));
+ 			if (_ptr_port_name) {
+ 				NDR_PULL_ALLOC(ndr, r->port_name);
+@@ -16951,7 +16951,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo2(struct ndr_pull *ndr, int
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
+ 			if (_ptr_monitor_name) {
+ 				NDR_PULL_ALLOC(ndr, r->monitor_name);
+@@ -16963,7 +16963,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo2(struct ndr_pull *ndr, int
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_description));
+ 			if (_ptr_description) {
+ 				NDR_PULL_ALLOC(ndr, r->description);
+@@ -16980,7 +16980,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo2(struct ndr_pull *ndr, int
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->port_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -16995,7 +16995,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo2(struct ndr_pull *ndr, int
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->monitor_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -17010,7 +17010,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo2(struct ndr_pull *ndr, int
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->description) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -17128,7 +17128,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo3(struct ndr_push *ndr, int
+ 		NDR_CHECK(ndr_push_spoolss_PortStatus(ndr, NDR_SCALARS, r->status));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->status_string));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -17138,7 +17138,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfo3(struct ndr_push *ndr, int
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->status_string) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->status_string));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->status_string));
+@@ -17159,7 +17159,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo3(struct ndr_pull *ndr, int
+ 		NDR_CHECK(ndr_pull_spoolss_PortStatus(ndr, NDR_SCALARS, &r->status));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_status_string));
+ 			if (_ptr_status_string) {
+ 				NDR_PULL_ALLOC(ndr, r->status_string);
+@@ -17175,7 +17175,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfo3(struct ndr_pull *ndr, int
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->status_string) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -17218,7 +17218,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfoFF(struct ndr_push *ndr, int
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->port_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -17228,7 +17228,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PortInfoFF(struct ndr_push *ndr, int
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->port_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->port_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->port_name));
+@@ -17248,7 +17248,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfoFF(struct ndr_pull *ndr, int
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_port_name));
+ 			if (_ptr_port_name) {
+ 				NDR_PULL_ALLOC(ndr, r->port_name);
+@@ -17264,7 +17264,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PortInfoFF(struct ndr_pull *ndr, int
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->port_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -17479,7 +17479,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_MonitorInfo1(struct ndr_push *ndr, i
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -17488,7 +17488,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_MonitorInfo1(struct ndr_push *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->monitor_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->monitor_name));
+@@ -17508,7 +17508,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo1(struct ndr_pull *ndr, i
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
+ 			if (_ptr_monitor_name) {
+ 				NDR_PULL_ALLOC(ndr, r->monitor_name);
+@@ -17523,7 +17523,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo1(struct ndr_pull *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->monitor_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -17564,19 +17564,19 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_MonitorInfo2(struct ndr_push *ndr, i
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->monitor_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->environment));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->dll_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -17585,7 +17585,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_MonitorInfo2(struct ndr_push *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->monitor_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->monitor_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->monitor_name));
+@@ -17595,7 +17595,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_MonitorInfo2(struct ndr_push *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->environment) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->environment));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->environment));
+@@ -17605,7 +17605,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_MonitorInfo2(struct ndr_push *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->dll_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->dll_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->dll_name));
+@@ -17629,7 +17629,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo2(struct ndr_pull *ndr, i
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_monitor_name));
+ 			if (_ptr_monitor_name) {
+ 				NDR_PULL_ALLOC(ndr, r->monitor_name);
+@@ -17641,7 +17641,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_environment));
+ 			if (_ptr_environment) {
+ 				NDR_PULL_ALLOC(ndr, r->environment);
+@@ -17653,7 +17653,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dll_name));
+ 			if (_ptr_dll_name) {
+ 				NDR_PULL_ALLOC(ndr, r->dll_name);
+@@ -17668,7 +17668,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo2(struct ndr_pull *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->monitor_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -17683,7 +17683,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->environment) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -17698,7 +17698,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorInfo2(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->dll_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -17876,7 +17876,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrintProcDataTypesInfo1(struct ndr_p
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->name_array));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -17885,7 +17885,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrintProcDataTypesInfo1(struct ndr_p
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->name_array) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->name_array));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->name_array));
+@@ -17905,7 +17905,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrintProcDataTypesInfo1(struct ndr_p
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name_array));
+ 			if (_ptr_name_array) {
+ 				NDR_PULL_ALLOC(ndr, r->name_array);
+@@ -17920,7 +17920,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrintProcDataTypesInfo1(struct ndr_p
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->name_array) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -19526,7 +19526,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterEnumValues(struct ndr_push *n
+ 		NDR_CHECK(ndr_push_setup_relative_base_offset1(ndr, r, ndr->offset));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->value_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -19534,18 +19534,18 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterEnumValues(struct ndr_push *n
+ 		NDR_CHECK(ndr_push_winreg_Type(ndr, NDR_SCALARS, r->type));
+ 		{
+ 			uint32_t _flags_save_DATA_BLOB = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING|ndr_spoolss_PrinterEnumValues_align(r->type));
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->data));
+ 			ndr->flags = _flags_save_DATA_BLOB;
+ 		}
+-		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->data->length));
++		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->data?r->data->length:0));
+ 		NDR_CHECK(ndr_push_trailer_align(ndr, 5));
+ 	}
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		NDR_CHECK(ndr_push_setup_relative_base_offset2(ndr, r));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->value_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->value_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->value_name));
+@@ -19555,14 +19555,14 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_PrinterEnumValues(struct ndr_push *n
+ 		}
+ 		{
+ 			uint32_t _flags_save_DATA_BLOB = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING|ndr_spoolss_PrinterEnumValues_align(r->type));
+ 			if (r->data) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->data));
+ 				{
+ 					struct ndr_push *_ndr_data;
+-					NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_data, 0, r->data->length));
++					NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_data, 0, r->data?r->data->length:0));
+ 					NDR_CHECK(ndr_push_DATA_BLOB(_ndr_data, NDR_SCALARS, *r->data));
+-					NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_data, 0, r->data->length));
++					NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_data, 0, r->data?r->data->length:0));
+ 				}
+ 				NDR_CHECK(ndr_push_relative_ptr2_end(ndr, r->data));
+ 			}
+@@ -19585,7 +19585,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterEnumValues(struct ndr_pull *n
+ 		NDR_CHECK(ndr_pull_setup_relative_base_offset1(ndr, r, ndr->offset));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_value_name));
+ 			if (_ptr_value_name) {
+ 				NDR_PULL_ALLOC(ndr, r->value_name);
+@@ -19599,7 +19599,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterEnumValues(struct ndr_pull *n
+ 		NDR_CHECK(ndr_pull_winreg_Type(ndr, NDR_SCALARS, &r->type));
+ 		{
+ 			uint32_t _flags_save_DATA_BLOB = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING|ndr_spoolss_PrinterEnumValues_align(r->type));
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data));
+ 			if (_ptr_data) {
+ 				NDR_PULL_ALLOC(ndr, r->data);
+@@ -19616,7 +19616,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterEnumValues(struct ndr_pull *n
+ 		NDR_CHECK(ndr_pull_setup_relative_base_offset2(ndr, r));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->value_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -19631,7 +19631,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_PrinterEnumValues(struct ndr_pull *n
+ 		}
+ 		{
+ 			uint32_t _flags_save_DATA_BLOB = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING|ndr_spoolss_PrinterEnumValues_align(r->type));
+ 			if (r->data) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -19672,7 +19672,7 @@ _PUBLIC_ void ndr_print_spoolss_PrinterEnumValues(struct ndr_print *ndr, const c
+ 		ndr_print_DATA_BLOB(ndr, "data", *r->data);
+ 	}
+ 	ndr->depth--;
+-	ndr_print_uint32(ndr, "data_length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?r->data->length:r->data_length);
++	ndr_print_uint32(ndr, "data_length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?r->data?r->data->length:0:r->data_length);
+ 	ndr->depth--;
+ }
+ 
+@@ -19696,7 +19696,7 @@ static enum ndr_err_code ndr_push_spoolss_KeyNames(struct ndr_push *ndr, int ndr
+ 			default: {
+ 				{
+ 					uint32_t _flags_save_string_array = ndr->flags;
+-					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 					NDR_CHECK(ndr_push_string_array(ndr, NDR_SCALARS, r->string_array));
+ 					ndr->flags = _flags_save_string_array;
+ 				}
+@@ -19737,7 +19737,7 @@ static enum ndr_err_code ndr_pull_spoolss_KeyNames(struct ndr_pull *ndr, int ndr
+ 			default: {
+ 				{
+ 					uint32_t _flags_save_string_array = ndr->flags;
+-					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++					ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 					NDR_CHECK(ndr_pull_string_array(ndr, NDR_SCALARS, &r->string_array));
+ 					ndr->flags = _flags_save_string_array;
+ 				}
+@@ -19980,7 +19980,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_spoolss_MonitorUi(struct ndr_push *ndr, int
+ 		NDR_CHECK(ndr_push_align(ndr, 4));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->dll_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -19997,7 +19997,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_spoolss_MonitorUi(struct ndr_pull *ndr, int
+ 		NDR_CHECK(ndr_pull_align(ndr, 4));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->dll_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+diff --git a/librpc/gen_ndr/ndr_svcctl.c b/librpc/gen_ndr/ndr_svcctl.c
+index a1cb7c7..e67d793 100644
+--- a/librpc/gen_ndr/ndr_svcctl.c
++++ b/librpc/gen_ndr/ndr_svcctl.c
+@@ -226,13 +226,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_ENUM_SERVICE_STATUSW(struct ndr_push *ndr, i
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->service_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->display_name));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -242,7 +242,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_ENUM_SERVICE_STATUSW(struct ndr_push *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->service_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->service_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->service_name));
+@@ -252,7 +252,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_ENUM_SERVICE_STATUSW(struct ndr_push *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->display_name) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->display_name));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->display_name));
+@@ -274,7 +274,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_ENUM_SERVICE_STATUSW(struct ndr_pull *ndr, i
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_service_name));
+ 			if (_ptr_service_name) {
+ 				NDR_PULL_ALLOC(ndr, r->service_name);
+@@ -286,7 +286,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_ENUM_SERVICE_STATUSW(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_display_name));
+ 			if (_ptr_display_name) {
+ 				NDR_PULL_ALLOC(ndr, r->display_name);
+@@ -302,7 +302,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_ENUM_SERVICE_STATUSW(struct ndr_pull *ndr, i
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->service_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -317,7 +317,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_ENUM_SERVICE_STATUSW(struct ndr_pull *ndr, i
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->display_name) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1016,7 +1016,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_SERVICE_DESCRIPTION(struct ndr_push *ndr, in
+ 		NDR_CHECK(ndr_push_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->description));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -1025,7 +1025,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_SERVICE_DESCRIPTION(struct ndr_push *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->description) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->description));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->description));
+@@ -1045,7 +1045,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_SERVICE_DESCRIPTION(struct ndr_pull *ndr, in
+ 		NDR_CHECK(ndr_pull_align(ndr, 5));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_description));
+ 			if (_ptr_description) {
+ 				NDR_PULL_ALLOC(ndr, r->description);
+@@ -1060,7 +1060,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_SERVICE_DESCRIPTION(struct ndr_pull *ndr, in
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->description) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1165,13 +1165,13 @@ _PUBLIC_ enum ndr_err_code ndr_push_SERVICE_FAILURE_ACTIONS(struct ndr_push *ndr
+ 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->reset_period));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->rebootmsg));
+ 			ndr->flags = _flags_save_string;
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_push_relative_ptr1(ndr, r->command));
+ 			ndr->flags = _flags_save_string;
+ 		}
+@@ -1182,7 +1182,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_SERVICE_FAILURE_ACTIONS(struct ndr_push *ndr
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->rebootmsg) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->rebootmsg));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->rebootmsg));
+@@ -1192,7 +1192,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_SERVICE_FAILURE_ACTIONS(struct ndr_push *ndr
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->command) {
+ 				NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->command));
+ 				NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->command));
+@@ -1227,7 +1227,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_SERVICE_FAILURE_ACTIONS(struct ndr_pull *ndr
+ 		NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->reset_period));
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_rebootmsg));
+ 			if (_ptr_rebootmsg) {
+ 				NDR_PULL_ALLOC(ndr, r->rebootmsg);
+@@ -1239,7 +1239,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_SERVICE_FAILURE_ACTIONS(struct ndr_pull *ndr
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_command));
+ 			if (_ptr_command) {
+ 				NDR_PULL_ALLOC(ndr, r->command);
+@@ -1265,7 +1265,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_SERVICE_FAILURE_ACTIONS(struct ndr_pull *ndr
+ 	if (ndr_flags & NDR_BUFFERS) {
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->rebootmsg) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+@@ -1280,7 +1280,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_SERVICE_FAILURE_ACTIONS(struct ndr_pull *ndr
+ 		}
+ 		{
+ 			uint32_t _flags_save_string = ndr->flags;
+-			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM);
++			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2);
+ 			if (r->command) {
+ 				uint32_t _relative_save_offset;
+ 				_relative_save_offset = ndr->offset;
+diff --git a/librpc/gen_ndr/netlogon.h b/librpc/gen_ndr/netlogon.h
+index 268790e..207bc2c 100644
+--- a/librpc/gen_ndr/netlogon.h
++++ b/librpc/gen_ndr/netlogon.h
+@@ -800,7 +800,7 @@ enum SyncStateEnum
+ 
+ union netr_ChangeLogObject {
+ 	struct dom_sid object_sid;/* [case(NETR_CHANGELOG_SID_INCLUDED)] */
+-	const char * object_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM),case(NETR_CHANGELOG_NAME_INCLUDED)] */
++	const char * object_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2),case(NETR_CHANGELOG_NAME_INCLUDED)] */
+ }/* [nodiscriminant] */;
+ 
+ struct netr_ChangeLogEntry {
+@@ -931,7 +931,7 @@ struct netr_OsVersionInfoEx {
+ 	uint32_t MinorVersion;
+ 	uint32_t BuildNumber;
+ 	uint32_t PlatformId;
+-	const char * CSDVersion;/* [subcontext_size(256),subcontext(0),flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * CSDVersion;/* [subcontext_size(256),subcontext(0),flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint16_t ServicePackMajor;
+ 	uint16_t ServicePackMinor;
+ 	uint16_t SuiteMask;
+diff --git a/librpc/gen_ndr/spoolss.h b/librpc/gen_ndr/spoolss.h
+index fc7114a..ef8c63e 100644
+--- a/librpc/gen_ndr/spoolss.h
++++ b/librpc/gen_ndr/spoolss.h
+@@ -244,8 +244,8 @@ enum spoolss_MinorVersion
+ #define JOB_STATUS_COMPLETE ( 0x00001000 )
+ 
+ struct spoolss_PrinterInfo0 {
+-	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * servername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * servername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t cjobs;
+ 	uint32_t total_jobs;
+ 	uint32_t total_bytes;
+@@ -804,24 +804,24 @@ struct spoolss_DeviceMode {
+ 
+ struct spoolss_PrinterInfo1 {
+ 	uint32_t flags;
+-	const char * description;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * comment;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * description;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * comment;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ struct spoolss_PrinterInfo2 {
+-	const char * servername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * sharename;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * portname;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * drivername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * comment;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * location;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * servername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * sharename;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * portname;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * drivername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * comment;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * location;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	struct spoolss_DeviceMode *devmode;/* [relative,subcontext(0),flag(LIBNDR_FLAG_ALIGN4)] */
+-	const char * sepfile;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * printprocessor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * parameters;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * sepfile;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * printprocessor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * parameters;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	struct spoolss_security_descriptor *secdesc;/* [relative,subcontext(0),flag(LIBNDR_FLAG_ALIGN4)] */
+ 	uint32_t attributes;
+ 	uint32_t priority;/* [range(0,99)] */
+@@ -838,14 +838,14 @@ struct spoolss_PrinterInfo3 {
+ }/* [gensize,public] */;
+ 
+ struct spoolss_PrinterInfo4 {
+-	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * servername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * servername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t attributes;
+ }/* [gensize,public] */;
+ 
+ struct spoolss_PrinterInfo5 {
+-	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * portname;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * printername;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * portname;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t attributes;
+ 	uint32_t device_not_selected_timeout;
+ 	uint32_t transmission_retry_timeout;
+@@ -863,7 +863,7 @@ struct spoolss_PrinterInfo6 {
+ #define DSPRINT_PENDING ( 0x80000000 )
+ 
+ struct spoolss_PrinterInfo7 {
+-	const char * guid;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * guid;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t action;
+ }/* [gensize,public] */;
+ 
+@@ -891,12 +891,12 @@ struct spoolss_DevmodeContainer {
+ 
+ struct spoolss_JobInfo1 {
+ 	uint32_t job_id;
+-	const char * printer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * server_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * user_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * document_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * data_type;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * text_status;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * printer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * server_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * user_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * document_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * data_type;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * text_status;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t status;
+ 	uint32_t priority;/* [range(0,99)] */
+ 	uint32_t position;
+@@ -907,17 +907,17 @@ struct spoolss_JobInfo1 {
+ 
+ struct spoolss_JobInfo2 {
+ 	uint32_t job_id;
+-	const char * printer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * server_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * user_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * document_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * notify_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * data_type;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * print_processor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * parameters;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * printer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * server_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * user_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * document_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * notify_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * data_type;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * print_processor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * parameters;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	struct spoolss_DeviceMode *devmode;/* [relative,subcontext(0),flag(LIBNDR_FLAG_ALIGN4)] */
+-	const char * text_status;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * text_status;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	struct spoolss_security_descriptor *secdesc;/* [relative,subcontext(0),flag(LIBNDR_FLAG_ALIGN4)] */
+ 	uint32_t status;
+ 	uint32_t priority;/* [range(0,99)] */
+@@ -939,17 +939,17 @@ struct spoolss_JobInfo3 {
+ 
+ struct spoolss_JobInfo4 {
+ 	uint32_t job_id;
+-	const char * printer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * server_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * user_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * document_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * notify_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * data_type;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * print_processor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * parameters;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * printer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * server_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * user_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * document_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * notify_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * data_type;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * print_processor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * parameters;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	struct spoolss_DeviceMode *devmode;/* [relative,subcontext(0),flag(LIBNDR_FLAG_ALIGN4)] */
+-	const char * text_status;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * text_status;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	struct spoolss_security_descriptor *secdesc;/* [relative,subcontext(0),flag(LIBNDR_FLAG_ALIGN4)] */
+ 	uint32_t status;
+ 	uint32_t priority;/* [range(0,99)] */
+@@ -1216,7 +1216,7 @@ struct spoolss_SetPrinterInfoCtr {
+ 
+ struct spoolss_StringArray {
+ 	uint32_t _ndr_size;/* [value((ndr_size_spoolss_StringArray(r,ndr->iconv_convenience,ndr->flags)-4)/2)] */
+-	const char ** string;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char ** string;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [public] */;
+ 
+ struct spoolss_AddDriverInfo1 {
+@@ -1363,52 +1363,52 @@ struct spoolss_AddDriverInfoCtr {
+ };
+ 
+ struct spoolss_DriverInfo1 {
+-	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ struct spoolss_DriverInfo2 {
+ 	enum spoolss_DriverOSVersion version;
+-	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ struct spoolss_DriverInfo3 {
+ 	enum spoolss_DriverOSVersion version;
+-	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ struct spoolss_DriverInfo4 {
+ 	enum spoolss_DriverOSVersion version;
+-	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ struct spoolss_DriverInfo5 {
+ 	enum spoolss_DriverOSVersion version;
+-	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t driver_attributes;
+ 	uint32_t config_version;
+ 	uint32_t driver_version;
+@@ -1416,56 +1416,56 @@ struct spoolss_DriverInfo5 {
+ 
+ struct spoolss_DriverInfo6 {
+ 	enum spoolss_DriverOSVersion version;
+-	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	NTTIME driver_date;
+ 	uint64_t driver_version;
+-	const char * manufacturer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * manufacturer_url;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * hardware_id;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * provider;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * manufacturer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * manufacturer_url;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * hardware_id;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * provider;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ struct spoolss_DriverInfo7 {
+ 	uint32_t size;
+ 	enum spoolss_DriverOSVersion version;
+-	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * inf_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * install_source_root;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * inf_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * install_source_root;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ struct spoolss_DriverInfo8 {
+ 	enum spoolss_DriverOSVersion version;
+-	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * driver_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * data_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * config_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * help_file;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char ** dependent_files;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	NTTIME driver_date;
+ 	uint64_t driver_version;
+-	const char * manufacturer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * manufacturer_url;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * hardware_id;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * provider;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * print_processor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * vendor_setup;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char ** color_profiles;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * inf_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * manufacturer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * manufacturer_url;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * hardware_id;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * provider;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * print_processor;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * vendor_setup;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char ** color_profiles;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * inf_path;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t printer_driver_attributes;
+-	const char ** core_driver_dependencies;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char ** core_driver_dependencies;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	NTTIME min_inbox_driver_ver_date;
+ 	uint64_t min_inbox_driver_ver_version;
+ }/* [gensize,public] */;
+@@ -1490,26 +1490,26 @@ enum spoolss_DriverFileType
+ ;
+ 
+ struct spoolss_DriverFileInfo {
+-	const char * file_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * file_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	enum spoolss_DriverFileType file_type;
+ 	uint32_t file_version;
+ }/* [public] */;
+ 
+ struct spoolss_DriverInfo101 {
+ 	enum spoolss_DriverOSVersion version;
+-	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	struct spoolss_DriverFileInfo *file_info;/* [relative,size_is(file_count)] */
++	const char * driver_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * architecture;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	struct spoolss_DriverFileInfo *file_info;/* [relative,flag(LIBNDR_FLAG_ALIGN4),size_is(file_count)] */
+ 	uint32_t file_count;
+-	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * default_datatype;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char ** previous_names;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	NTTIME driver_date;
+ 	uint64_t driver_version;
+-	const char * manufacturer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * manufacturer_url;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * hardware_id;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * provider;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * manufacturer_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * manufacturer_url;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * hardware_id;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * provider;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,nopush,public,nopull] */;
+ 
+ union spoolss_DriverInfo {
+@@ -1525,7 +1525,7 @@ union spoolss_DriverInfo {
+ }/* [gensize,relative_base,nodiscriminant,public,flag(LIBNDR_FLAG_RELATIVE_REVERSE)] */;
+ 
+ struct spoolss_DriverDirectoryInfo1 {
+-	const char * directory_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * directory_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ union spoolss_DriverDirectoryInfo {
+@@ -1533,7 +1533,7 @@ union spoolss_DriverDirectoryInfo {
+ }/* [gensize,relative_base,nodiscriminant,public,flag(LIBNDR_FLAG_RELATIVE_REVERSE)] */;
+ 
+ struct spoolss_PrintProcessorInfo1 {
+-	const char * print_processor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * print_processor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ union spoolss_PrintProcessorInfo {
+@@ -1541,7 +1541,7 @@ union spoolss_PrintProcessorInfo {
+ }/* [relative_base,public,nodiscriminant,flag(LIBNDR_FLAG_RELATIVE_REVERSE)] */;
+ 
+ struct spoolss_PrintProcessorDirectoryInfo1 {
+-	const char * directory_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * directory_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ union spoolss_PrintProcessorDirectoryInfo {
+@@ -1564,7 +1564,7 @@ struct spoolss_OSVersion {
+ 	uint32_t minor;
+ 	uint32_t build;
+ 	uint32_t platform_id;/* [value(2)] */
+-	const char * extra_string;/* [subcontext_size(256),subcontext(0),flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * extra_string;/* [subcontext_size(256),subcontext(0),flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ struct spoolss_OSVersionEx {
+@@ -1573,7 +1573,7 @@ struct spoolss_OSVersionEx {
+ 	uint32_t minor;
+ 	uint32_t build;
+ 	uint32_t platform_id;/* [value(2)] */
+-	const char * extra_string;/* [subcontext_size(256),subcontext(0),flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * extra_string;/* [subcontext_size(256),subcontext(0),flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint16_t service_pack_major;
+ 	uint16_t service_pack_minor;
+ 	uint16_t suite_mask;
+@@ -1582,10 +1582,10 @@ struct spoolss_OSVersionEx {
+ }/* [gensize,public] */;
+ 
+ union spoolss_PrinterData {
+-	const char * string;/* [flag(LIBNDR_FLAG_STR_NULLTERM),case(REG_SZ)] */
++	const char * string;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2),case(REG_SZ)] */
+ 	DATA_BLOB binary;/* [flag(LIBNDR_FLAG_REMAINING),case(REG_BINARY)] */
+ 	uint32_t value;/* [case(REG_DWORD)] */
+-	const char ** string_array;/* [flag(LIBNDR_FLAG_STR_NULLTERM),case(REG_MULTI_SZ)] */
++	const char ** string_array;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2),case(REG_MULTI_SZ)] */
+ 	DATA_BLOB data;/* [flag(LIBNDR_FLAG_REMAINING),default] */
+ }/* [nodiscriminant,public] */;
+ 
+@@ -1618,7 +1618,7 @@ struct spoolss_FormArea {
+ 
+ struct spoolss_FormInfo1 {
+ 	enum spoolss_FormFlags flags;
+-	const char * form_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * form_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	struct spoolss_FormSize size;
+ 	struct spoolss_FormArea area;
+ }/* [gensize,public] */;
+@@ -1630,14 +1630,14 @@ struct spoolss_FormInfo1 {
+ 
+ struct spoolss_FormInfo2 {
+ 	enum spoolss_FormFlags flags;
+-	const char * form_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * form_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	struct spoolss_FormSize size;
+ 	struct spoolss_FormArea area;
+ 	const char * keyword;/* [relative,flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
+ 	uint32_t string_type;
+-	const char * mui_dll;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * mui_dll;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t ressource_id;
+-	const char * display_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * display_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint16_t lang_id;
+ 	uint16_t unused;
+ }/* [gensize,public] */;
+@@ -1673,7 +1673,7 @@ union spoolss_AddFormInfo {
+ }/* [switch_type(uint32)] */;
+ 
+ struct spoolss_PortInfo1 {
+-	const char * port_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * port_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ /* bitmap spoolss_PortType */
+@@ -1683,9 +1683,9 @@ struct spoolss_PortInfo1 {
+ #define SPOOLSS_PORT_TYPE_NET_ATTACHED ( 0x00000008 )
+ 
+ struct spoolss_PortInfo2 {
+-	const char * port_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * description;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * port_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * description;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t port_type;
+ 	uint32_t reserved;
+ }/* [gensize,public] */;
+@@ -1742,12 +1742,12 @@ enum spoolss_PortSeverity
+ 
+ struct spoolss_PortInfo3 {
+ 	enum spoolss_PortStatus status;
+-	const char * status_string;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * status_string;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	enum spoolss_PortSeverity severity;
+ }/* [gensize,public] */;
+ 
+ struct spoolss_PortInfoFF {
+-	const char * port_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * port_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	DATA_BLOB monitor_data;
+ }/* [gensize,public] */;
+ 
+@@ -1759,13 +1759,13 @@ union spoolss_PortInfo {
+ }/* [relative_base,public,nodiscriminant,flag(LIBNDR_FLAG_RELATIVE_REVERSE)] */;
+ 
+ struct spoolss_MonitorInfo1 {
+-	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ struct spoolss_MonitorInfo2 {
+-	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * environment;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * dll_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * monitor_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * environment;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * dll_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ union spoolss_MonitorInfo {
+@@ -1774,7 +1774,7 @@ union spoolss_MonitorInfo {
+ }/* [relative_base,public,nodiscriminant,flag(LIBNDR_FLAG_RELATIVE_REVERSE)] */;
+ 
+ struct spoolss_PrintProcDataTypesInfo1 {
+-	const char * name_array;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * name_array;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ union spoolss_PrintProcDataTypesInfo {
+@@ -2065,15 +2065,15 @@ struct spoolss_UserLevelCtr {
+ #define JOB_ACCESS_READ ( 0x00000020 )
+ 
+ struct spoolss_PrinterEnumValues {
+-	const char * value_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * value_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t value_name_len;/* [value(2*strlen_m_term(value_name))] */
+ 	enum winreg_Type type;
+-	DATA_BLOB *data;/* [relative,subcontext_size(data_length),subcontext(0),flag(LIBNDR_FLAG_REMAINING)] */
+-	uint32_t data_length;/* [value(data->length)] */
++	DATA_BLOB *data;/* [relative,subcontext_size(data_length),subcontext(0),flag(LIBNDR_FLAG_REMAINING|ndr_spoolss_PrinterEnumValues_align(r->type))] */
++	uint32_t data_length;/* [value(data?data->length:0)] */
+ }/* [relative_base,gensize,public] */;
+ 
+ union spoolss_KeyNames {
+-	const char ** string_array;/* [default,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char ** string_array;/* [default,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [nodiscriminant] */;
+ 
+ /* bitmap spoolss_DeleteDriverFlags */
+@@ -2130,7 +2130,7 @@ struct spoolss_PortData2 {
+ }/* [public] */;
+ 
+ struct spoolss_MonitorUi {
+-	const char * dll_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * dll_name;/* [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [public] */;
+ 
+ /* bitmap spoolss_AddPrinterDriverExFlags */
+diff --git a/librpc/gen_ndr/svcctl.h b/librpc/gen_ndr/svcctl.h
+index f047701..466a4d3 100644
+--- a/librpc/gen_ndr/svcctl.h
++++ b/librpc/gen_ndr/svcctl.h
+@@ -87,8 +87,8 @@ struct SERVICE_STATUS_PROCESS {
+ }/* [public] */;
+ 
+ struct ENUM_SERVICE_STATUSW {
+-	const char * service_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * display_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * service_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * display_name;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	struct SERVICE_STATUS status;
+ }/* [gensize,public] */;
+ 
+@@ -246,7 +246,7 @@ enum svcctl_ConfigLevel
+ ;
+ 
+ struct SERVICE_DESCRIPTION {
+-	const char * description;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * description;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ }/* [gensize,public] */;
+ 
+ enum SC_ACTION_TYPE
+@@ -273,8 +273,8 @@ struct SC_ACTION {
+ 
+ struct SERVICE_FAILURE_ACTIONS {
+ 	uint32_t reset_period;
+-	const char * rebootmsg;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
+-	const char * command;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM)] */
++	const char * rebootmsg;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
++	const char * command;/* [relative,flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] */
+ 	uint32_t num_actions;/* [range(0,1024)] */
+ 	struct SC_ACTION *actions;/* [relative,size_is(num_actions)] */
+ }/* [gensize,public] */;
+-- 
+1.7.4.1
+

Added: branches/samba/squeeze/debian/patches/bug_611177-617429_upstream_7567_0010-librpc-ndr-handle-NOALIGN-flag-for-relative-pointers.patch
===================================================================
--- branches/samba/squeeze/debian/patches/bug_611177-617429_upstream_7567_0010-librpc-ndr-handle-NOALIGN-flag-for-relative-pointers.patch	                        (rev 0)
+++ branches/samba/squeeze/debian/patches/bug_611177-617429_upstream_7567_0010-librpc-ndr-handle-NOALIGN-flag-for-relative-pointers.patch	2011-03-14 21:06:04 UTC (rev 3708)
@@ -0,0 +1,85 @@
+From ca2d4b62f951b1bb03d288ddc8c193579a83f03f Mon Sep 17 00:00:00 2001
+From: Stefan Metzmacher <metze at samba.org>
+Date: Tue, 1 Mar 2011 14:20:32 +0100
+Subject: [PATCH 12/12] librpc/ndr: handle NOALIGN flag for relative pointers and alignment DATA_BLOBs
+
+metze
+
+Autobuild-User: Stefan Metzmacher <metze at samba.org>
+Autobuild-Date: Tue Mar  1 17:11:03 CET 2011 on sn-devel-104
+(cherry picked from commit ef224aa004d5f1726d8dca020e0ef96d8c58565e)
+(cherry picked from commit 1ea17bacdb09d28a12a8b6ddeba3ac285cd9f905)
+
+Signed-off-by: Stefan Metzmacher <metze at samba.org>
+(cherry picked from commit 7c6bc031b3af3643027865e444fb16f7bb7c7152)
+---
+ librpc/ndr/ndr.c       |    8 ++++++--
+ librpc/ndr/ndr_basic.c |   11 ++++++++---
+ 2 files changed, 14 insertions(+), 5 deletions(-)
+
+diff --git a/librpc/ndr/ndr.c b/librpc/ndr/ndr.c
+index 9f2042d..2439374 100644
+--- a/librpc/ndr/ndr.c
++++ b/librpc/ndr/ndr.c
+@@ -1117,7 +1117,9 @@ _PUBLIC_ enum ndr_err_code ndr_push_relative_ptr2_start(struct ndr_push *ndr, co
+ 
+ 		relative_offset = ndr->offset - ndr->relative_base_offset;
+ 
+-		if (ndr->flags & LIBNDR_FLAG_ALIGN2) {
++		if (ndr->flags & LIBNDR_FLAG_NOALIGN) {
++			align = 1;
++		} else if (ndr->flags & LIBNDR_FLAG_ALIGN2) {
+ 			align = 2;
+ 		} else if (ndr->flags & LIBNDR_FLAG_ALIGN4) {
+ 			align = 4;
+@@ -1196,7 +1198,9 @@ _PUBLIC_ enum ndr_err_code ndr_push_relative_ptr2_end(struct ndr_push *ndr, cons
+ 	/* the reversed offset is at the end of the main buffer */
+ 	correct_offset = ndr->relative_end_offset - len;
+ 
+-	if (ndr->flags & LIBNDR_FLAG_ALIGN2) {
++	if (ndr->flags & LIBNDR_FLAG_NOALIGN) {
++		align = 1;
++	} else if (ndr->flags & LIBNDR_FLAG_ALIGN2) {
+ 		align = 2;
+ 	} else if (ndr->flags & LIBNDR_FLAG_ALIGN4) {
+ 		align = 4;
+diff --git a/librpc/ndr/ndr_basic.c b/librpc/ndr/ndr_basic.c
+index f913eff..64ea6d7 100644
+--- a/librpc/ndr/ndr_basic.c
++++ b/librpc/ndr/ndr_basic.c
+@@ -1012,8 +1012,11 @@ _PUBLIC_ void ndr_print_DATA_BLOB(struct ndr_print *ndr, const char *name, DATA_
+ _PUBLIC_ enum ndr_err_code ndr_push_DATA_BLOB(struct ndr_push *ndr, int ndr_flags, DATA_BLOB blob)
+ {
+ 	if (ndr->flags & LIBNDR_FLAG_REMAINING) {
++		/* nothing to do */
+ 	} else if (ndr->flags & LIBNDR_ALIGN_FLAGS) {
+-		if (ndr->flags & LIBNDR_FLAG_ALIGN2) {
++		if (ndr->flags & LIBNDR_FLAG_NOALIGN) {
++			blob.length = 0;
++		} else if (ndr->flags & LIBNDR_FLAG_ALIGN2) {
+ 			blob.length = NDR_ALIGN(ndr, 2);
+ 		} else if (ndr->flags & LIBNDR_FLAG_ALIGN4) {
+ 			blob.length = NDR_ALIGN(ndr, 4);
+@@ -1022,7 +1025,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_DATA_BLOB(struct ndr_push *ndr, int ndr_flag
+ 		}
+ 		NDR_PUSH_ALLOC_SIZE(ndr, blob.data, blob.length);
+ 		data_blob_clear(&blob);
+-	} else if (!(ndr->flags & LIBNDR_FLAG_REMAINING)) {
++	} else {
+ 		NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, blob.length));
+ 	}
+ 	NDR_CHECK(ndr_push_bytes(ndr, blob.data, blob.length));
+@@ -1039,7 +1042,9 @@ _PUBLIC_ enum ndr_err_code ndr_pull_DATA_BLOB(struct ndr_pull *ndr, int ndr_flag
+ 	if (ndr->flags & LIBNDR_FLAG_REMAINING) {
+ 		length = ndr->data_size - ndr->offset;
+ 	} else if (ndr->flags & LIBNDR_ALIGN_FLAGS) {
+-		if (ndr->flags & LIBNDR_FLAG_ALIGN2) {
++		if (ndr->flags & LIBNDR_FLAG_NOALIGN) {
++			length = 0;
++		} else if (ndr->flags & LIBNDR_FLAG_ALIGN2) {
+ 			length = NDR_ALIGN(ndr, 2);
+ 		} else if (ndr->flags & LIBNDR_FLAG_ALIGN4) {
+ 			length = NDR_ALIGN(ndr, 4);
+-- 
+1.7.4.1
+

Modified: branches/samba/squeeze/debian/patches/series
===================================================================
--- branches/samba/squeeze/debian/patches/series	2011-03-13 07:12:00 UTC (rev 3707)
+++ branches/samba/squeeze/debian/patches/series	2011-03-14 21:06:04 UTC (rev 3708)
@@ -23,3 +23,4 @@
 bug_611177-617429_upstream_7567_0007-librpc-ndr-remove-align2-hack-for-relative-pointers.patch
 bug_611177-617429_upstream_7567_0008-spoolss.idl-align-spoolss_PrinterEnumValues-data-bas.patch
 bug_611177-617429_upstream_7567_0009-spoolss.idl-align-spoolss_DriverFileInfo-relative-po.patch
+bug_611177-617429_upstream_7567_0010-librpc-ndr-handle-NOALIGN-flag-for-relative-pointers.patch





More information about the Pkg-samba-maint mailing list