Structure SilcClient
NAME
typedef struct SilcClientStruct { ... } *SilcClient
DESCRIPTION
This is the actual SILC Client structure which represents one
SILC Client. It is allocated with the silc_client_alloc function
and given as argument to all SILC Client Library functions. It
is initialized with silc_client_init function, and freed with
silc_client_free function.
SOURCE
struct SilcClientStruct {
/*
* The following fields are set by application. Strings MUST be UTF-8
* encoded strings.
*/
char *nickname; /* Nickname, MAY be set by application */
char *username; /* Username, MUST be set by application */
char *hostname; /* hostname, MUST be set by application */
char *realname; /* Real name, MUST be set be application */
SilcPublicKey public_key; /* Public key of user, set by application */
SilcPrivateKey private_key; /* Private key of user, set by application */
SilcPKCS pkcs; /* PKCS allocated by application */
/*
* The following fields are set by the library
*/
/* Scheduler, set by library. Application may use this pointer. */
SilcSchedule schedule;
/* Random Number Generator. Application should use this as its primary
random number generator. */
SilcRng rng;
/* Application specific user data pointer. Client library does not
touch this. This the context sent as argument to silc_client_alloc.
Application can use it freely. */
void *application;
/* Generic hash context for application usage */
SilcHash md5hash;
SilcHash sha1hash;
/* Internal data for client library. Application cannot access this
data at all. */
SilcClientInternal internal;
};
|