Main Page | Modules | Data Structures | Directories | File List | Data Fields | Globals

ses_prv.h File Reference

Go to the source code of this file.

Data Structures

struct  session_opt_s
struct  session_s

Typedefs

typedef int(* session_load_t )(session_t *)
typedef int(* session_save_t )(session_t *)
typedef int(* session_remove_t )(session_t *)
typedef int(* session_term_t )(session_t *)
typedef session_opt_s session_opt_t

Enumerations

enum  { SESSION_TYPE_UNKNOWN, SESSION_TYPE_FILE, SESSION_TYPE_MEMORY, SESSION_TYPE_CLIENT }
enum  { SESSION_ID_LENGTH = MD5_DIGEST_LEN, SESSION_ID_BUFSZ = 1 + SESSION_ID_LENGTH }
enum  { HMAC_KEY_SIZE = 64, CIPHER_KEY_SIZE = 64, CIPHER_IV_SIZE = 64 }

Functions

int session_create (session_opt_t *, request_t *, response_t *, session_t **)
int session_client_create (session_opt_t *, request_t *, response_t *, session_t **)
int session_file_create (session_opt_t *, request_t *, response_t *, session_t **)
int session_mem_create (session_opt_t *, request_t *, response_t *, session_t **)
int session_prv_init (session_t *, request_t *, response_t *)
int session_prv_load_from_io (session_t *, io_t *)
int session_prv_save_to_io (session_t *, io_t *)
int session_prv_save_var (var_t *, void *)
int session_prv_calc_maxsize (var_t *v, void *p)
int session_prv_save_to_buf (session_t *ss, char **pbuf, size_t *psz)
int session_prv_load_from_buf (session_t *ss, char *buf, size_t size)
int session_prv_set_id (session_t *ss, const char *sid)
int session_module_init (u_config_t *config, session_opt_t **pso)
int session_file_module_init (u_config_t *config, session_opt_t *pso)
int session_mem_module_init (u_config_t *config, session_opt_t *pso)
int session_client_module_init (u_config_t *config, session_opt_t *pso)
int session_module_term (session_opt_t *so)


Typedef Documentation

typedef int(* session_load_t)(session_t *)
 

Definition at line 33 of file ses_prv.h.

typedef struct session_opt_s session_opt_t
 

Referenced by http_get_session_opt(), session_client_create(), session_client_module_init(), session_create(), session_file_create(), session_file_module_init(), session_file_module_term(), session_mem_create(), session_mem_module_init(), session_module_init(), and session_module_term().

typedef int(* session_remove_t)(session_t *)
 

Definition at line 35 of file ses_prv.h.

typedef int(* session_save_t)(session_t *)
 

Definition at line 34 of file ses_prv.h.

typedef int(* session_term_t)(session_t *)
 

Definition at line 36 of file ses_prv.h.


Enumeration Type Documentation

anonymous enum
 

Enumeration values:
SESSION_TYPE_UNKNOWN 
SESSION_TYPE_FILE 
SESSION_TYPE_MEMORY 
SESSION_TYPE_CLIENT 

Definition at line 39 of file ses_prv.h.

anonymous enum
 

Enumeration values:
SESSION_ID_LENGTH 
SESSION_ID_BUFSZ 

Definition at line 46 of file ses_prv.h.

anonymous enum
 

Enumeration values:
HMAC_KEY_SIZE 
CIPHER_KEY_SIZE 
CIPHER_IV_SIZE 

Definition at line 52 of file ses_prv.h.


Function Documentation

int session_client_create session_opt_t ,
request_t ,
response_t ,
session_t ** 
 

Definition at line 210 of file ses_client.c.

References session_s::load, session_s::mtime, session_s::remove, request_t, response_t, session_s::save, session_free(), session_opt_t, session_prv_init(), session_t, session_s::so, and session_s::term.

Referenced by session_create().

int session_client_module_init u_config_t *  config,
session_opt_t pso
 

Definition at line 242 of file ses_client.c.

References session_opt_s::encrypt, HMAC_KEY_SIZE, and session_opt_t.

Referenced by session_module_init().

int session_file_create session_opt_t ,
request_t ,
response_t ,
session_t ** 
 

Definition at line 88 of file ses_file.c.

References session_s::filename, session_s::load, session_s::mtime, session_s::remove, request_t, response_t, session_s::save, session_free(), session_opt_t, session_prv_init(), session_t, session_s::so, and session_s::term.

Referenced by session_create().

int session_file_module_init u_config_t *  config,
session_opt_t pso
 

Definition at line 130 of file ses_file.c.

References session_opt_s::path, and session_opt_t.

Referenced by session_module_init().

int session_mem_create session_opt_t ,
request_t ,
response_t ,
session_t ** 
 

Definition at line 437 of file ses_mem.c.

References session_s::load, session_s::mtime, session_s::remove, request_t, response_t, session_s::save, session_free(), session_opt_t, session_prv_init(), session_t, session_s::so, and session_s::term.

Referenced by session_create().

int session_mem_module_init u_config_t *  config,
session_opt_t pso
 

Definition at line 469 of file ses_mem.c.

References session_opt_s::atoms, atoms_create(), ctx, session_opt_s::max_count, session_opt_s::mem_limit, PPC_CMD_MSES_DELOLD, PPC_CMD_MSES_GET, PPC_CMD_MSES_REMOVE, PPC_CMD_MSES_SAVE, ppc_register(), ppc_t, server_get_ppc(), and session_opt_t.

Referenced by session_module_init().

int session_module_init u_config_t *  config,
session_opt_t **  pso
 

Definition at line 52 of file session.c.

References CIPHER_IV_SIZE, CIPHER_KEY_SIZE, session_opt_s::compress, session_opt_s::encrypt, MAX, session_opt_s::max_age, session_client_module_init(), session_file_module_init(), session_opt_s::session_iv, session_opt_s::session_key, session_mem_module_init(), session_opt_t, and session_opt_s::type.

Referenced by http_backend_init().

int session_module_term session_opt_t so  ) 
 

Definition at line 45 of file session.c.

References session_opt_t.

Referenced by http_backend_term().

int session_prv_calc_maxsize var_t v,
void *  p
 

Definition at line 150 of file session.c.

References var_get_name(), var_get_value(), and var_t.

Referenced by session_prv_save_to_buf().

int session_prv_load_from_buf session_t ss,
char *  buf,
size_t  size
 

Definition at line 178 of file session.c.

References io_free(), io_mem_create(), io_t, session_prv_load_from_io(), and session_t.

int session_prv_save_to_buf session_t ss,
char **  pbuf,
size_t *  psz
 

Definition at line 200 of file session.c.

References io_codecs_remove(), io_free(), io_mem_create(), io_t, io_tell(), session_prv_calc_maxsize(), session_prv_save_to_io(), session_t, session_s::vars, and vars_foreach().

int session_prv_set_id session_t ss,
const char *  sid
 


←Products
© 2005-2006 - KoanLogic S.r.l. - All rights reserved