# hx509 certificate selecting functions

## Functions
int | hx509_peer_info_alloc (hx509_context context, hx509_peer_info *peer)
void | hx509_peer_info_free (hx509_peer_info peer)
int | hx509_peer_info_set_cert (hx509_peer_info peer, hx509_cert cert)
int | hx509_peer_info_add_cms_alg (hx509_context context, hx509_peer_info peer, const AlgorithmIdentifier *val)
int | hx509_peer_info_set_cms_algs (hx509_context context, hx509_peer_info peer, const AlgorithmIdentifier *val, size_t len)

## Detailed Description

## Function Documentation

int hx509_peer_info_add_cms_alg | ( | hx509_context | context,
|  | hx509_peer_info | peer,
|  | const AlgorithmIdentifier * | val |
| ) |  |  |

Add an additional algorithm that the peer supports.

Parameters:

  | context | A hx509 context.
  | peer | the peer to set the new algorithms for
  | val | an AlgorithmsIdentier to add

Returns:
  An hx509 error code, see hx509_get_error_string().

int hx509_peer_info_alloc | ( | hx509_context | context,
|  | hx509_peer_info * | peer |
| ) |  |  |

Allocate a new peer info structure an init it to default values.

Parameters:

  | context | A hx509 context.
  | peer | return an allocated peer, free with hx509_peer_info_free().

Returns:
  An hx509 error code, see hx509_get_error_string().

void hx509_peer_info_free | ( | hx509_peer_info | peer | ) |

Free a peer info structure.

Parameters:

  | peer | peer info to be freed.

int hx509_peer_info_set_cert | ( | hx509_peer_info | peer,
|  | hx509_cert | cert |
| ) |  |  |

Set the certificate that remote peer is using.

Parameters:

  | peer | peer info to update
  | cert | cerificate of the remote peer.

Returns:
  An hx509 error code, see hx509_get_error_string().

int hx509_peer_info_set_cms_algs | ( | hx509_context | context,
|  | hx509_peer_info | peer,
|  | const AlgorithmIdentifier * | val,
|  | size_t | len |
| ) |  |  |

Set the algorithms that the peer supports.

Parameters:

  | context | A hx509 context.
  | peer | the peer to set the new algorithms for
  | val | array of supported AlgorithmsIdentiers
  | len | length of array val.

Returns:
  An hx509 error code, see hx509_get_error_string().