diff options
author | Andrew Bartlett <abartlet@samba.org> | 2008-08-12 17:46:01 +1000 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2008-08-12 17:46:01 +1000 |
commit | b5a3f45f645204bcc3d6caa47993b7839c8e4c99 (patch) | |
tree | 4e6370669009d54b0f92c222b9d877f9a3004154 /source4/librpc | |
parent | dd5cdf3c99f5bfe40c68bbc2f91ce419d27f0a05 (diff) | |
download | samba-b5a3f45f645204bcc3d6caa47993b7839c8e4c99.tar.gz samba-b5a3f45f645204bcc3d6caa47993b7839c8e4c99.tar.bz2 samba-b5a3f45f645204bcc3d6caa47993b7839c8e4c99.zip |
Add GenericInfo level for SamLogon calls from the WSPP IDL.
Andrew Bartlett
(This used to be commit ea58b650a81b48b0477edbcda1e4e26a3b2a9b9e)
Diffstat (limited to 'source4/librpc')
-rw-r--r-- | source4/librpc/idl/netlogon.idl | 47 |
1 files changed, 33 insertions, 14 deletions
diff --git a/source4/librpc/idl/netlogon.idl b/source4/librpc/idl/netlogon.idl index d8f7d2f7e6..62f1b8843a 100644 --- a/source4/librpc/idl/netlogon.idl +++ b/source4/librpc/idl/netlogon.idl @@ -123,12 +123,31 @@ interface netlogon netr_ChallengeResponse lm; } netr_NetworkInfo; - typedef [public,switch_type(uint16)] union { - [case(1)] netr_PasswordInfo *password; - [case(2)] netr_NetworkInfo *network; - [case(3)] netr_PasswordInfo *password; - [case(5)] netr_PasswordInfo *password; - [case(6)] netr_NetworkInfo *network; + typedef [flag(NDR_PAHEX)] struct { + netr_IdentityInfo identity_info; + lsa_String package_name; + uint32 length; + [size_is(length),length_is(length)] uint8 *data; + } netr_GenericInfo; + + typedef enum { + NetlogonInteractiveInformation = 1, + NetlogonNetworkInformation = 2, + NetlogonServiceInformation = 3, + NetlogonGenericInformation = 4, + NetlogonInteractiveTransitiveInformation = 5, + NetlogonNetworkTransitiveInformation = 6, + NetlogonServiceTransitiveInformation = 7 + } netr_LogonInfoClass; + + typedef [public,switch_type(netr_LogonInfoClass)] union { + [case(NetlogonInteractiveInformation)] netr_PasswordInfo *password; + [case(NetlogonNetworkInformation)] netr_NetworkInfo *network; + [case(NetlogonServiceInformation)] netr_PasswordInfo *password; + [case(NetlogonGenericInformation)] netr_GenericInfo *generic; + [case(NetlogonInteractiveTransitiveInformation)] netr_PasswordInfo *password; + [case(NetlogonNetworkTransitiveInformation)] netr_NetworkInfo *network; + [case(NetlogonServiceTransitiveInformation)] netr_PasswordInfo *password; } netr_LogonLevel; typedef [public,flag(NDR_PAHEX)] struct { @@ -239,15 +258,15 @@ interface netlogon } netr_Authenticator; NTSTATUS netr_LogonSamLogon( - [in,unique] [string,charset(UTF16)] uint16 *server_name, - [in,unique] [string,charset(UTF16)] uint16 *computer_name, - [in,unique] netr_Authenticator *credential, - [in,out,unique] netr_Authenticator *return_authenticator, - [in] uint16 logon_level, - [in] [switch_is(logon_level)] netr_LogonLevel logon, - [in] uint16 validation_level, + [in,unique] [string,charset(UTF16)] uint16 *server_name, + [in,unique] [string,charset(UTF16)] uint16 *computer_name, + [in,unique] netr_Authenticator *credential, + [in,out,unique] netr_Authenticator *return_authenticator, + [in] netr_LogonInfoClass logon_level, + [in] [switch_is(logon_level)] netr_LogonLevel logon, + [in] uint16 validation_level, [out] [switch_is(validation_level)] netr_Validation validation, - [out] uint8 authoritative + [out] uint8 authoritative ); |