ica_get_functionlist

Purpose

Returns a list of crypto mechanisms supported by libica.

Format


unsigned int ica_get_functionlist(libica_func_list_element *mech_list,
  unsigned int *mech_list_len);

Parameters

libica_func_list_element *mech_list
Null or pointer to an array of at least as many libica_func_list_element structures as denoted in the *mech_list_len argument. If the value in the *mech_list_len argument is equal to or greater than the number of mechanisms available in libica then the libica_func_list_element structures in *mech_list are filled (in the order of the array indices) with information for the supported mechanisms. Otherwise the *mech_list argument remains unchanged.
unsigned int *mech_list_len
Pointer to an integer which contains the actual number of array elements (number of structures). If *mech_list was NULL the contents of *mech_list_len is replaced by the number of mechanisms available in libica.

Return codes

0
Success
EINVAL
The value in *mech_list is to small

For return codes indicating exceptions, see Return codes.

Recommended usage

First call ica_get_functionlist with a NULL mechanism list, then allocate the mechanism list according to number of mechanisms in libica returned by that function, and then call ica_get_functionlist with the allocated mechanism list.