FreeRDP
Loading...
Searching...
No Matches
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
27WINPR_ATTR_NODISCARD
28BOOL ntlm_get_version_info(NTLM_VERSION_INFO* versionInfo);
29
30WINPR_ATTR_NODISCARD
31BOOL ntlm_read_version_info(wStream* s, NTLM_VERSION_INFO* versionInfo);
32
33WINPR_ATTR_NODISCARD
34BOOL ntlm_write_version_info(wStream* s, const NTLM_VERSION_INFO* versionInfo);
35
36#ifdef WITH_DEBUG_NTLM
37void ntlm_print_version_info(const NTLM_VERSION_INFO* versionInfo);
38#endif
39
40WINPR_ATTR_NODISCARD
41BOOL ntlm_read_ntlm_v2_response(wStream* s, NTLMv2_RESPONSE* response);
42
43WINPR_ATTR_NODISCARD
44BOOL ntlm_write_ntlm_v2_response(wStream* s, const NTLMv2_RESPONSE* response);
45
46void ntlm_output_target_name(NTLM_CONTEXT* context);
47void ntlm_output_channel_bindings(NTLM_CONTEXT* context);
48
49void ntlm_generate_timestamp(NTLM_CONTEXT* context);
50
51WINPR_ATTR_NODISCARD
52SECURITY_STATUS ntlm_compute_lm_v2_response(NTLM_CONTEXT* context);
53
54WINPR_ATTR_NODISCARD
55SECURITY_STATUS ntlm_compute_ntlm_v2_response(NTLM_CONTEXT* context);
56
57WINPR_ATTR_NODISCARD
58BOOL ntlm_rc4k(BYTE* key, size_t length, BYTE* plaintext, BYTE* ciphertext);
59
60WINPR_ATTR_NODISCARD
61BOOL ntlm_generate_client_challenge(NTLM_CONTEXT* context);
62
63WINPR_ATTR_NODISCARD
64BOOL ntlm_generate_server_challenge(NTLM_CONTEXT* context);
65
66WINPR_ATTR_NODISCARD
67BOOL ntlm_generate_key_exchange_key(NTLM_CONTEXT* context);
68
69WINPR_ATTR_NODISCARD
70BOOL ntlm_generate_random_session_key(NTLM_CONTEXT* context);
71
72WINPR_ATTR_NODISCARD
73BOOL ntlm_generate_exported_session_key(NTLM_CONTEXT* context);
74
75WINPR_ATTR_NODISCARD
76BOOL ntlm_encrypt_random_session_key(NTLM_CONTEXT* context);
77
78WINPR_ATTR_NODISCARD
79BOOL ntlm_decrypt_random_session_key(NTLM_CONTEXT* context);
80
81WINPR_ATTR_NODISCARD
82BOOL ntlm_generate_client_signing_key(NTLM_CONTEXT* context);
83
84WINPR_ATTR_NODISCARD
85BOOL ntlm_generate_server_signing_key(NTLM_CONTEXT* context);
86
87WINPR_ATTR_NODISCARD
88BOOL ntlm_generate_client_sealing_key(NTLM_CONTEXT* context);
89
90WINPR_ATTR_NODISCARD
91BOOL ntlm_generate_server_sealing_key(NTLM_CONTEXT* context);
92
93WINPR_ATTR_NODISCARD
94BOOL ntlm_init_rc4_seal_states(NTLM_CONTEXT* context);
95
96WINPR_ATTR_NODISCARD
97BOOL ntlm_compute_message_integrity_check(NTLM_CONTEXT* context, BYTE* mic, UINT32 size);
98
99#endif /* WINPR_AUTH_NTLM_COMPUTE_H */