FreeRDP
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Modules Pages
ntlm_compute.h
1
20#ifndef WINPR_SSPI_NTLM_COMPUTE_H
21#define WINPR_SSPI_NTLM_COMPUTE_H
22
23#include "ntlm.h"
24
25#include "ntlm_av_pairs.h"
26
27BOOL ntlm_get_version_info(NTLM_VERSION_INFO* versionInfo);
28BOOL ntlm_read_version_info(wStream* s, NTLM_VERSION_INFO* versionInfo);
29BOOL ntlm_write_version_info(wStream* s, const NTLM_VERSION_INFO* versionInfo);
30
31#ifdef WITH_DEBUG_NTLM
32void ntlm_print_version_info(const NTLM_VERSION_INFO* versionInfo);
33#endif
34
35BOOL ntlm_read_ntlm_v2_response(wStream* s, NTLMv2_RESPONSE* response);
36BOOL ntlm_write_ntlm_v2_response(wStream* s, const NTLMv2_RESPONSE* response);
37
38void ntlm_output_target_name(NTLM_CONTEXT* context);
39void ntlm_output_channel_bindings(NTLM_CONTEXT* context);
40
41void ntlm_current_time(BYTE* timestamp);
42void ntlm_generate_timestamp(NTLM_CONTEXT* context);
43
44SECURITY_STATUS ntlm_compute_lm_v2_response(NTLM_CONTEXT* context);
45SECURITY_STATUS ntlm_compute_ntlm_v2_response(NTLM_CONTEXT* context);
46
47void ntlm_rc4k(BYTE* key, size_t length, BYTE* plaintext, BYTE* ciphertext);
48void ntlm_generate_client_challenge(NTLM_CONTEXT* context);
49void ntlm_generate_server_challenge(NTLM_CONTEXT* context);
50void ntlm_generate_key_exchange_key(NTLM_CONTEXT* context);
51void ntlm_generate_random_session_key(NTLM_CONTEXT* context);
52void ntlm_generate_exported_session_key(NTLM_CONTEXT* context);
53void ntlm_encrypt_random_session_key(NTLM_CONTEXT* context);
54void ntlm_decrypt_random_session_key(NTLM_CONTEXT* context);
55
56BOOL ntlm_generate_client_signing_key(NTLM_CONTEXT* context);
57BOOL ntlm_generate_server_signing_key(NTLM_CONTEXT* context);
58BOOL ntlm_generate_client_sealing_key(NTLM_CONTEXT* context);
59BOOL ntlm_generate_server_sealing_key(NTLM_CONTEXT* context);
60BOOL ntlm_init_rc4_seal_states(NTLM_CONTEXT* context);
61
62BOOL ntlm_compute_message_integrity_check(NTLM_CONTEXT* context, BYTE* mic, UINT32 size);
63
64#endif /* WINPR_AUTH_NTLM_COMPUTE_H */