diff options
Diffstat (limited to 'source4/librpc')
-rw-r--r-- | source4/librpc/idl/idl_types.h | 5 | ||||
-rw-r--r-- | source4/librpc/idl/spoolss.idl | 11 | ||||
-rw-r--r-- | source4/librpc/rpc/dcerpc_smb2.c | 6 |
3 files changed, 9 insertions, 13 deletions
diff --git a/source4/librpc/idl/idl_types.h b/source4/librpc/idl/idl_types.h index 01524c2984..9885ca5bf6 100644 --- a/source4/librpc/idl/idl_types.h +++ b/source4/librpc/idl/idl_types.h @@ -10,11 +10,6 @@ #define STR_UTF8 LIBNDR_FLAG_STR_UTF8 /* - a UCS2 string prefixed with [size], 32 bits -*/ -#define lstring [flag(STR_SIZE4)] string - -/* a null terminated UCS2 string */ #define nstring [flag(STR_NULLTERM)] string diff --git a/source4/librpc/idl/spoolss.idl b/source4/librpc/idl/spoolss.idl index 33b4dba7b2..2144393ebd 100644 --- a/source4/librpc/idl/spoolss.idl +++ b/source4/librpc/idl/spoolss.idl @@ -1407,12 +1407,13 @@ import "security.idl", "winreg.idl"; WERROR spoolss_EnumPrinterData( [in,ref] policy_handle *handle, [in] uint32 enum_index, + [out,ref,size_is(value_offered/2),charset(UTF16)] uint16 *value_name, [in] uint32 value_offered, - [out] lstring value_name, - [out] uint32 value_needed, - [out] uint32 printerdata_type, - [out] DATA_BLOB buffer, - [in,out,ref] uint32 *data_size + [out,ref] uint32 *value_needed, + [out,ref] uint32 *printerdata_type, + [out,ref] DATA_BLOB *buffer, + [in] uint32 data_offered, + [out,ref] uint32 *data_needed ); /******************/ diff --git a/source4/librpc/rpc/dcerpc_smb2.c b/source4/librpc/rpc/dcerpc_smb2.c index b06964d331..a0094b8bae 100644 --- a/source4/librpc/rpc/dcerpc_smb2.c +++ b/source4/librpc/rpc/dcerpc_smb2.c @@ -410,7 +410,7 @@ struct composite_context *dcerpc_pipe_open_smb2_send(struct dcerpc_pipe *p, state->ctx = ctx; ZERO_STRUCT(io); - io.in.access_mask = + io.in.desired_access = SEC_STD_READ_CONTROL | SEC_FILE_READ_ATTRIBUTE | SEC_FILE_WRITE_ATTRIBUTE | @@ -423,11 +423,11 @@ struct composite_context *dcerpc_pipe_open_smb2_send(struct dcerpc_pipe *p, io.in.share_access = NTCREATEX_SHARE_ACCESS_READ | NTCREATEX_SHARE_ACCESS_WRITE; - io.in.open_disposition = NTCREATEX_DISP_OPEN; + io.in.create_disposition = NTCREATEX_DISP_OPEN; io.in.create_options = NTCREATEX_OPTIONS_NON_DIRECTORY_FILE | NTCREATEX_OPTIONS_UNKNOWN_400000; - io.in.impersonation = NTCREATEX_IMPERSONATION_IMPERSONATION; + io.in.impersonation_level = NTCREATEX_IMPERSONATION_IMPERSONATION; if ((strncasecmp(pipe_name, "/pipe/", 6) == 0) || (strncasecmp(pipe_name, "\\pipe\\", 6) == 0)) { |