Prosody generic: API: sm_sec_module

Prototype Definition

int sm_sec_module(struct sm_sec_module_parms *module_parmsp)

Parameters

*module_parmsp
a structure of the following type:
typedef struct sm_sec_module_parms {
	tSMModuleId module_id;					/* in */
	tSM_INT exclude_data_to_module;				/* in */
	tSM_INT exclude_data_from_module;			/* in */
	tSM_INT key_id;						/* in */
	char *context;						/* in */
	tSMSecCallback encdec;					/* in */
} SM_SEC_MODULE_PARMS;

Description

Sets up encrypted communication with module. Must be used in conjunction with a compatible external encryption library, for example kmlib3des. If encryption is required, this function must be invoked immediately after calling sm_open_module(). Requires an encryption capable kernel to be running on the module.

Fields

module_id
An id for an open module previously obtained from sm_open_module()
exclude_data_to_module
If non-zero causes bulk data (e.g. replay data) sent to module to be excluded from encryption.
exclude_data_from_module
If non-zero causes bulk data (e.g. record data) sent from module to be excluded from encryption.
key_id
An id from an external encryption library used to identify a previously agreed key for use with this module.
context
The context from an external encryption library used by TiNG library in callbacks.
encdec
The callback with type void (*)(tSM_INT,tSM_INT,void*,tSM_UT8*) from an external encryption library used by TiNG library to encrypt and decrypt messages.

Returns

0 if call completed successfully, otherwise a standard error such as:


This function is part of the Prosody generic API.