PokerUnicorn
Loading...
Searching...
No Matches
Authentication & Session

Authentication and session management. More...

Data Structures

struct  pkrsrv_auth_session_t
 Authentication session object. More...
 

Macros

#define PKRSRV_AUTH_SESSION_EXPIRATION   3600
 Default session expiration time in seconds.
 

Functions

pkrsrv_auth_session_t * pkrsrv_auth_session_new (pkrsrv_account_t *account, pkrsrv_string_t *token)
 Creates a new authentication session.
 
void pkrsrv_auth_session_free (pkrsrv_auth_session_t *session)
 Frees the memory occupied by an authentication session.
 
pkrsrv_auth_session_t * pkrsrv_auth_session_create (pkrsrv_account_t *account)
 Creates a new authentication session.
 
bool pkrsrv_auth_session_destroy (pkrsrv_auth_session_t *session)
 Destroys an authentication session.
 
pkrsrv_auth_session_t * pkrsrv_auth_session_getby_token (PGconn *pg_conn, pkrsrv_string_t *token)
 Returns the session by given token.
 
bool pkrsrv_auth_session_refresh (pkrsrv_auth_session_t *session)
 Refreshes the session expiration time.
 

Detailed Description

Authentication and session management.


Data Structure Documentation

◆ pkrsrv_auth_session

struct pkrsrv_auth_session

Authentication session object.

+ Inheritance diagram for pkrsrv_auth_session_t:

Data Fields

pkrsrv_ref_counted_t ref_counted
 
pkrsrv_string_t * token
 
pkrsrv_account_t * account
 
- Data Fields inherited from pkrsrv_ref_counted_t
int count
 
pkrsrv_ref_free_f_t free_f
 
pthread_mutex_t mutex
 

Additional Inherited Members

- Protected Member Functions inherited from pkrsrv_ref_counted_t
void pkrsrv_ref_counted_init (pkrsrv_ref_counted_t *ref_counted, pkrsrv_ref_free_f_t free_f)
 Initializes a reference-counted object. Should be called in the constructor of the object after the dynamic allocation.
 
void pkrsrv_ref_counted_use (pkrsrv_ref_counted_t *ref_counted)
 Increments the reference count of a reference-counted object.
 
void pkrsrv_ref_counted_leave (void **obj_vp, pkrsrv_ref_counted_t *ref_counted)
 Decrements the reference count of a reference-counted object.
 

Field Documentation

◆ ref_counted

pkrsrv_ref_counted_t pkrsrv_auth_session_t::ref_counted

◆ token

pkrsrv_string_t* pkrsrv_auth_session_t::token

◆ account

pkrsrv_account_t* pkrsrv_auth_session_t::account

Macro Definition Documentation

◆ PKRSRV_AUTH_SESSION_EXPIRATION

#define PKRSRV_AUTH_SESSION_EXPIRATION   3600

Default session expiration time in seconds.

Function Documentation

◆ pkrsrv_auth_session_new()

pkrsrv_auth_session_t * pkrsrv_auth_session_new ( pkrsrv_account_t * account,
pkrsrv_string_t * token )

Creates a new authentication session.

This function creates a new authentication session object.

Parameters
paramsThe session creation parameters.
Returns
A pointer to the newly created authentication session.

◆ pkrsrv_auth_session_free()

void pkrsrv_auth_session_free ( pkrsrv_auth_session_t * session)

Frees the memory occupied by an authentication session.

This function frees the memory occupied by the given authentication session object.

Parameters
sessionThe authentication session to be freed.

◆ pkrsrv_auth_session_create()

pkrsrv_auth_session_t * pkrsrv_auth_session_create ( pkrsrv_account_t * account)

Creates a new authentication session.

This function creates a new authentication session object.

Parameters
paramsThe session creation parameters.

◆ pkrsrv_auth_session_destroy()

bool pkrsrv_auth_session_destroy ( pkrsrv_auth_session_t * session)

Destroys an authentication session.

This function destroys an authentication session object.

Parameters
sessionThe session to be destroyed.
Returns
True if the session is destroyed successfully, false otherwise.

◆ pkrsrv_auth_session_getby_token()

pkrsrv_auth_session_t * pkrsrv_auth_session_getby_token ( PGconn * pg_conn,
pkrsrv_string_t * token )

Returns the session by given token.

This function returns the session object by the given token.

Parameters
tokenThe token of the session.
Returns
The session object.

◆ pkrsrv_auth_session_refresh()

bool pkrsrv_auth_session_refresh ( pkrsrv_auth_session_t * session)

Refreshes the session expiration time.

This function refreshes the expiration time of the given session.

Parameters
sessionThe session to be refreshed.