diff options
author | Andrew Tridgell <tridge@samba.org> | 2003-12-01 09:28:10 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 2003-12-01 09:28:10 +0000 |
commit | a6cf6cada93640fe6a24a7d3c5403079aeb7b4de (patch) | |
tree | 7151411d9d583817a1d308168c82e54622db58cb /source4/librpc/idl | |
parent | b4b0177fdb5f1704a7347552e48b2ab647a03d14 (diff) | |
download | samba-a6cf6cada93640fe6a24a7d3c5403079aeb7b4de.tar.gz samba-a6cf6cada93640fe6a24a7d3c5403079aeb7b4de.tar.bz2 samba-a6cf6cada93640fe6a24a7d3c5403079aeb7b4de.zip |
added netr_LogonSamLogon() and test code
(This used to be commit 4fa3ad3ecbfd8f8663fcdfaba9a7db481e303f2b)
Diffstat (limited to 'source4/librpc/idl')
-rw-r--r-- | source4/librpc/idl/netlogon.idl | 201 | ||||
-rw-r--r-- | source4/librpc/idl/samr.idl | 3 |
2 files changed, 102 insertions, 102 deletions
diff --git a/source4/librpc/idl/netlogon.idl b/source4/librpc/idl/netlogon.idl index 7bdb4ae6ed..f6749b4e57 100644 --- a/source4/librpc/idl/netlogon.idl +++ b/source4/librpc/idl/netlogon.idl @@ -19,7 +19,7 @@ interface netlogon /* Function 0x00 */ typedef struct { - unistr *effective_name; + unistr *account_name; uint32 priv; uint32 auth_flags; uint32 logon_count; @@ -65,54 +65,51 @@ interface netlogon /* Function 0x02 */ typedef struct { - uint16 size; - uint16 length; - unistr *string; + [value(strlen_m(r->string)*2)] uint16 size; + [value(r->size)] uint16 length; + unistr_noterm *string; } netr_String; typedef struct { - netr_String LogonDomainName; - uint32 ParameterControl; - HYPER_T LogonID; + netr_String domain_name; + uint32 parameter_control; + uint32 logon_id_low; + uint32 logon_id_high; netr_String username; netr_String workstation; - } LOGON_IDENTITY_INFO; - - typedef struct { - uint8 password[16]; - } LM_OWF_PASSWORD; + } netr_IdentityInfo; - typedef struct { + typedef [flag(NDR_PAHEX)] struct { uint8 password[16]; - } NT_OWF_PASSWORD; + } netr_Password; typedef struct { - LOGON_IDENTITY_INFO identity_info; - LM_OWF_PASSWORD lmpassword; - NT_OWF_PASSWORD ntpassword; - } INTERACTIVE_INFO; + netr_IdentityInfo identity_info; + netr_Password lmpassword; + netr_Password ntpassword; + } netr_PasswordInfo; typedef [flag(NDR_PAHEX)] struct { uint8 data[8]; } netr_Credential; - typedef struct { - LOGON_IDENTITY_INFO logon_info; - netr_Credential challenge; - unistr ntchallengeresponse; - unistr lmchallengeresponse; - } NETWORK_INFO; + typedef [flag(NDR_PAHEX)] struct { + uint16 length; + [value(r->length)] uint16 size; + [size_is(size),length_is(length)] uint8 *data; + } netr_ChallengeResponse; typedef struct { - LOGON_IDENTITY_INFO logon_info; - LM_OWF_PASSWORD lmpassword; - NT_OWF_PASSWORD ntpassword; - } SERVICE_INFO; + netr_IdentityInfo logon_info; + netr_Credential challenge; + netr_ChallengeResponse nt; + netr_ChallengeResponse lm; + } netr_NetworkInfo; typedef union { - [case(1)] INTERACTIVE_INFO *iinfo; - [case(2)] NETWORK_INFO *ninfo; - [case(3)] SERVICE_INFO *sinfo; + [case(1)] netr_PasswordInfo *interactive; + [case(2)] netr_NetworkInfo *network; + [case(3)] netr_PasswordInfo *service; } netr_LogonLevel; typedef struct { @@ -123,93 +120,97 @@ interface netlogon typedef struct { uint32 user_id; uint32 attributes; - } GROUP_MEMBERSHIP; + } netr_GroupMembership; - typedef struct { + typedef [flag(NDR_PAHEX)] struct { uint8 user_session_key[16]; - } USER_SESSION_KEY; - - typedef struct { - NTTIME LogonTime; - NTTIME LogoffTime; - NTTIME KickOffTime; - NTTIME PasswdLastSet; - NTTIME PasswdCanChange; - NTTIME PasswdMustChange; - netr_String effectivename; - netr_String fullname; - netr_String logonscript; - netr_String profilepath; - netr_String homedirectory; - netr_String homedirectorydrive; - uint16 LogonCount; - uint16 BadPasswdCount; + } netr_UserSessionKey; + + typedef struct { + NTTIME logon_time; + NTTIME logoff_time; + NTTIME kickoff_time; + NTTIME passwd_last_set; + NTTIME passwd_can_change; + NTTIME passwd_must_change; + netr_String account_name; + netr_String full_name; + netr_String logon_script; + netr_String profile_path; + netr_String home_dir; + netr_String home_drive; + uint16 logon_count; + uint16 bad_passwd_count; uint32 userid; - uint32 primarygroup; - uint32 groupcount; - [size_is(groupcount)] GROUP_MEMBERSHIP *groupids; - uint32 userflags; - USER_SESSION_KEY key; - netr_String logonserver; - netr_String domainname; - dom_sid2 logondomainid; + uint32 primary_group; + uint32 group_count; + [size_is(group_count)] netr_GroupMembership *groupids; + uint32 user_flags; + netr_UserSessionKey key; + netr_String logon_server; + netr_String domain; + dom_sid2 *domain_sid; uint32 expansionroom[10]; - } VALIDATION_SAM_INFO; - - typedef struct { - NTTIME LogonTime; - NTTIME LogoffTime; - NTTIME KickOffTime; - NTTIME PasswdLastSet; - NTTIME PasswdCanChange; - NTTIME PasswdMustChange; - netr_String effectivename; - netr_String fullname; - netr_String logonscript; - netr_String profilepath; - netr_String homedirectory; - netr_String homedirectorydrive; - uint16 LogonCount; - uint16 BadPasswdCount; + } netr_SamInfo; + + typedef struct { + dom_sid2 *sid; + uint32 attribute; + } netr_SidAttr; + + typedef struct { + NTTIME logon_time; + NTTIME logoff_time; + NTTIME kickoff_time; + NTTIME passwd_last_set; + NTTIME passwd_can_change; + NTTIME passwd_must_change; + netr_String account_name; + netr_String full_name; + netr_String logon_script; + netr_String profile_path; + netr_String home_dir; + netr_String home_drive; + uint16 logon_count; + uint16 bad_passwd_count; uint32 userid; - uint32 primarygroup; - uint32 groupcount; - GROUP_MEMBERSHIP *groupids; - uint32 userflags; - USER_SESSION_KEY key; - netr_String logonserver; - netr_String domainname; - dom_sid2 logondomainid; + uint32 primary_group; + uint32 group_count; + [size_is(group_count)] netr_GroupMembership *groupids; + uint32 user_flags; + netr_UserSessionKey key; + netr_String logon_server; + netr_String domain; + dom_sid2 *domain_sid; uint32 expansionroom[10]; uint32 sidcount; - dom_sid2 sid; - uint32 sid_attribs; - } VALIDATION_SAM_INFO2; + [size_is(sidcount)] netr_SidAttr *sids; + } netr_SamInfo2; typedef struct { uint32 pac_size; [size_is(pac_size)] uint8 *pac; - netr_String logondomain; - netr_String logonserver; - netr_String principalname; + netr_String logon_domain; + netr_String logon_server; + netr_String principal_name; uint32 auth_size; [size_is(auth_size)] uint8 *auth; - USER_SESSION_KEY user_session_key; + netr_UserSessionKey user_session_key; uint32 expansionroom[10]; - netr_String dummy1; - netr_String dummy2; - netr_String dummy3; - netr_String dummy4; - } VALIDATION_PAC_INFO; + netr_String unknown1; + netr_String unknown2; + netr_String unknown3; + netr_String unknown4; + } netr_PacInfo; typedef union { - [case(2)] VALIDATION_SAM_INFO *sam; - [case(3)] VALIDATION_SAM_INFO2 *sam2; - [case(4)] VALIDATION_PAC_INFO *pac; - [case(5)] VALIDATION_PAC_INFO *pac2; + [case(2)] netr_SamInfo *sam; + [case(3)] netr_SamInfo2 *sam2; + [case(4)] netr_PacInfo *pac; + [case(5)] netr_PacInfo *pac2; } netr_Validation; - WERROR netr_LogonSamLogon( + NTSTATUS netr_LogonSamLogon( [in] unistr *server_name, [in] unistr *workstation, [in] netr_Authenticator *credential, diff --git a/source4/librpc/idl/samr.idl b/source4/librpc/idl/samr.idl index d7ae25a88a..cd44c9174a 100644 --- a/source4/librpc/idl/samr.idl +++ b/source4/librpc/idl/samr.idl @@ -14,12 +14,11 @@ ] interface samr { /* a 4 byte aligned 64-bit integer */ - typedef struct { + typedef [public] struct { uint32 low; uint32 high; } ULONG8; - /******************/ /* Function: 0x00 */ NTSTATUS samr_Connect ( |