FreeRDP
libfreerdp/core/gateway/ntlm.h File Reference
#include <winpr/wtypes.h>
#include <freerdp/api.h>
#include <winpr/sspi.h>
This graph shows which files directly or indirectly include this file:

Functions

FREERDP_LOCAL rdpNtlm * ntlm_new (void)
 
FREERDP_LOCAL void ntlm_free (rdpNtlm *ntlm)
 
FREERDP_LOCAL BOOL ntlm_authenticate (rdpNtlm *ntlm, BOOL *pbContinueNeeded)
 
FREERDP_LOCAL BOOL ntlm_client_init (rdpNtlm *ntlm, BOOL confidentiality, LPCTSTR user, LPCTSTR domain, LPCTSTR password, SecPkgContext_Bindings *Bindings)
 
FREERDP_LOCAL BOOL ntlm_client_make_spn (rdpNtlm *ntlm, LPCTSTR ServiceClass, LPCTSTR hostname)
 
FREERDP_LOCAL SSIZE_T ntlm_client_query_auth_size (rdpNtlm *ntlm)
 
FREERDP_LOCAL SSIZE_T ntlm_client_get_context_max_size (rdpNtlm *ntlm)
 
FREERDP_LOCAL BOOL ntlm_client_encrypt (rdpNtlm *ntlm, ULONG fQOP, SecBufferDesc *Message, size_t sequence)
 
FREERDP_LOCAL BOOL ntlm_client_set_input_buffer (rdpNtlm *ntlm, BOOL copy, const void *data, size_t size)
 
FREERDP_LOCAL const SecBuffer * ntlm_client_get_output_buffer (rdpNtlm *ntlm)
 

Function Documentation

FREERDP_LOCAL BOOL ntlm_authenticate ( rdpNtlm *  ntlm,
BOOL *  pbContinueNeeded 
)

SSPI Client Ceremony


( Client Begin )

| | |/ --------—+-----------—

| AcquireCredentialsHandle |

| | |/ ----------—+-----------— +------------—> / InitializeSecurityContext / | -------------------------— | | | | | |/ ------------------------— ------—+----------— -------------------— / Receive blob from server / < Received security blob? > –Yes-> / Send blob to server / ----------—+----------— --------------------— -------------------— /|\ | | | No | Yes |/ | | ---------—+--------— |

+-------------— < Received Continue Needed > <--------------—+

| No |/ ---—+----—

( Client End )

Here is the call graph for this function:

Here is the caller graph for this function:

FREERDP_LOCAL BOOL ntlm_client_encrypt ( rdpNtlm *  ntlm,
ULONG  fQOP,
SecBufferDesc *  Message,
size_t  sequence 
)

Here is the call graph for this function:

Here is the caller graph for this function:

FREERDP_LOCAL SSIZE_T ntlm_client_get_context_max_size ( rdpNtlm *  ntlm)

Here is the caller graph for this function:

FREERDP_LOCAL const SecBuffer* ntlm_client_get_output_buffer ( rdpNtlm *  ntlm)

Here is the caller graph for this function:

FREERDP_LOCAL BOOL ntlm_client_init ( rdpNtlm *  ntlm,
BOOL  confidentiality,
LPCTSTR  user,
LPCTSTR  domain,
LPCTSTR  password,
SecPkgContext_Bindings *  Bindings 
)

flags for RPC authentication: RPC_C_AUTHN_LEVEL_PKT_INTEGRITY: ISC_REQ_USE_DCE_STYLE | ISC_REQ_DELEGATE | ISC_REQ_MUTUAL_AUTH | ISC_REQ_REPLAY_DETECT | ISC_REQ_SEQUENCE_DETECT

Here is the call graph for this function:

Here is the caller graph for this function:

FREERDP_LOCAL BOOL ntlm_client_make_spn ( rdpNtlm *  ntlm,
LPCTSTR  ServiceClass,
LPCTSTR  hostname 
)

Here is the call graph for this function:

Here is the caller graph for this function:

FREERDP_LOCAL SSIZE_T ntlm_client_query_auth_size ( rdpNtlm *  ntlm)

Here is the call graph for this function:

Here is the caller graph for this function:

FREERDP_LOCAL BOOL ntlm_client_set_input_buffer ( rdpNtlm *  ntlm,
BOOL  copy,
const void data,
size_t  size 
)

Here is the call graph for this function:

Here is the caller graph for this function:

FREERDP_LOCAL void ntlm_free ( rdpNtlm *  ntlm)

Here is the call graph for this function:

Here is the caller graph for this function:

FREERDP_LOCAL rdpNtlm* ntlm_new ( void  )

Here is the caller graph for this function: