The C++ framework for developing highly scalable, high performance servers on Windows platforms.

CContext Class Reference

Inheritance diagram for CContext:
Collaboration diagram for CContext:

List of all members.

Public Member Functions

virtual CContextCopy () const =0
 CContext (const CContext &rhs)
CContextoperator= (const CContext &rhs)
virtual ~CContext ()
virtual const
IClientContext
GetAsClientContext () const
virtual const
IServerContext
GetAsServerContext () const
void ImpersonateClient () const override
void RevertToSelf () const override
JetByteTools::Core::_tstring GetPackageName () const override
ULONG GetAttributes () const override
TimeStamp GetExpiry () const override
JetByteTools::Core::_tstring GetTargetName () const override
Direction GetDirection () const override
Sizes GetMaximumMessageSize () const override
Sizes GetTokenSize () const override
Sizes GetTrailerSize () const override
Sizes GetSignatureSize () const override
bool IsComplete () const
SECURITY_STATUS GetLastStatus () const
virtual void StartHandshake (CToken &outputToken)=0
virtual void ContinueHandshake (const CSecurityBuffer &input, CToken &outputToken, CSecurityBuffer &extraData)=0
void EncryptData (CSecurityBuffer &data, CSecurityBuffer &trailer)
void DecryptData (CSecurityBuffer &data, const CSecurityBuffer &trailer)
void MakeSignature (const CSecurityBuffer &data, CSecurityBuffer &signature)
void VerifySignature (const CSecurityBuffer &data, const CSecurityBuffer &signature)
void QueryContextAttributes (SecPkgContext_PackageInfo &packageInfo) const

Protected Types

enum  Direction { InboundContext, OutboundContext }
typedef unsigned long Sizes
enum  Direction { InboundContext, OutboundContext }
typedef unsigned long Sizes

Protected Member Functions

 CContext (CCountedCredentialsHandle &credentials, Direction direction, ULONG requiredAttributes, ULONG tokenSize)
CtxtHandleGetContext () const
void CompleteTokenIfRequired (SECURITY_STATUS status, SecBufferDesc *pOutputToken)
void IsContextComplete (SECURITY_STATUS status)
CredHandleGetCredentials () const
bool IsNewContextRequired () const
void ResetContext ()
void CreateNewContext ()
void SetLastStatus (SECURITY_STATUS lastStatus)

Protected Attributes

CSmartCredentialsHandle m_credentials
ULONG m_requiredAttributes
ULONG m_achievedAttributes
TimeStamp m_expiry


Member Typedef Documentation

typedef unsigned long Sizes [inherited]

typedef unsigned long Sizes [inherited]


Member Enumeration Documentation

enum Direction [inherited]

Enumerator:
InboundContext 
OutboundContext 

enum Direction [inherited]

Enumerator:
InboundContext 
OutboundContext 


Constructor & Destructor Documentation

CContext ( const CContext rhs  ) 

~CContext (  )  [virtual]

CContext ( CCountedCredentialsHandle credentials,
Direction  direction,
ULONG  requiredAttributes,
ULONG  tokenSize 
) [protected]


Member Function Documentation

virtual CContext* Copy (  )  const [pure virtual]

Implemented in CClientContext, and CServerContext.

CContext & operator= ( const CContext rhs  ) 

const IClientContext * GetAsClientContext (  )  const [virtual]

Reimplemented in CClientContext.

const IServerContext * GetAsServerContext (  )  const [virtual]

Reimplemented in CServerContext.

void ImpersonateClient (  )  const [override, virtual]

Implements IServerContext.

Reimplemented in CServerContext.

void RevertToSelf (  )  const [override, virtual]

Implements IServerContext.

Reimplemented in CServerContext.

_tstring GetPackageName (  )  const [override, virtual]

Implements IContext.

ULONG GetAttributes (  )  const [override, virtual]

Implements IContext.

TimeStamp GetExpiry (  )  const [override, virtual]

Implements IContext.

_tstring GetTargetName (  )  const [override, virtual]

Implements IClientContext.

Reimplemented in CClientContext.

CContext::Direction GetDirection (  )  const [override, virtual]

Implements IContext.

CContext::Sizes GetMaximumMessageSize (  )  const [override, virtual]

Implements IContext.

CContext::Sizes GetTokenSize (  )  const [override, virtual]

Implements IContext.

CContext::Sizes GetTrailerSize (  )  const [override, virtual]

Implements IContext.

CContext::Sizes GetSignatureSize (  )  const [override, virtual]

Implements IContext.

bool IsComplete (  )  const

SECURITY_STATUS GetLastStatus (  )  const

virtual void StartHandshake ( CToken outputToken  )  [pure virtual]

Implemented in CClientContext, and CServerContext.

virtual void ContinueHandshake ( const CSecurityBuffer input,
CToken outputToken,
CSecurityBuffer extraData 
) [pure virtual]

Implemented in CClientContext, and CServerContext.

void EncryptData ( CSecurityBuffer data,
CSecurityBuffer trailer 
)

void DecryptData ( CSecurityBuffer data,
const CSecurityBuffer trailer 
)

void MakeSignature ( const CSecurityBuffer data,
CSecurityBuffer signature 
)

void VerifySignature ( const CSecurityBuffer data,
const CSecurityBuffer signature 
)

void QueryContextAttributes ( SecPkgContext_PackageInfo &  packageInfo  )  const

CtxtHandle & GetContext (  )  const [protected]

void CompleteTokenIfRequired ( SECURITY_STATUS  status,
SecBufferDesc pOutputToken 
) [protected]

void IsContextComplete ( SECURITY_STATUS  status  )  [protected]

CredHandle * GetCredentials (  )  const [protected]

bool IsNewContextRequired (  )  const [protected]

void ResetContext (  )  [protected]

void CreateNewContext (  )  [protected]

void SetLastStatus ( SECURITY_STATUS  lastStatus  )  [protected]


Member Data Documentation

TimeStamp m_expiry [protected]


Generated on Sun Sep 12 19:10:49 2021 for The Server Framework - v7.4 by doxygen 1.5.3