Lines Matching defs:peer

1 /*	$NetBSD: peer.c,v 1.2 2017/01/28 21:31:48 christos Exp $	*/
50 * Allocate a new peer info structure an init it to default values.
53 * @param peer return an allocated peer, free with hx509_peer_info_free().
61 hx509_peer_info_alloc(hx509_context context, hx509_peer_info *peer)
63 *peer = calloc(1, sizeof(**peer));
64 if (*peer == NULL) {
73 free_cms_alg(hx509_peer_info peer)
75 if (peer->val) {
77 for (i = 0; i < peer->len; i++)
78 free_AlgorithmIdentifier(&peer->val[i]);
79 free(peer->val);
80 peer->val = NULL;
81 peer->len = 0;
86 * Free a peer info structure.
88 * @param peer peer info to be freed.
94 hx509_peer_info_free(hx509_peer_info peer)
96 if (peer == NULL)
98 if (peer->cert)
99 hx509_cert_free(peer->cert);
100 free_cms_alg(peer);
101 memset(peer, 0, sizeof(*peer));
102 free(peer);
106 * Set the certificate that remote peer is using.
108 * @param peer peer info to update
109 * @param cert cerificate of the remote peer.
117 hx509_peer_info_set_cert(hx509_peer_info peer,
120 if (peer->cert)
121 hx509_cert_free(peer->cert);
122 peer->cert = hx509_cert_ref(cert);
127 * Add an additional algorithm that the peer supports.
130 * @param peer the peer to set the new algorithms for
140 hx509_peer_info peer,
146 ptr = realloc(peer->val, sizeof(peer->val[0]) * (peer->len + 1));
151 peer->val = ptr;
152 ret = copy_AlgorithmIdentifier(val, &peer->val[peer->len]);
154 peer->len += 1;
161 * Set the algorithms that the peer supports.
164 * @param peer the peer to set the new algorithms for
175 hx509_peer_info peer,
181 free_cms_alg(peer);
183 peer->val = calloc(len, sizeof(*peer->val));
184 if (peer->val == NULL) {
185 peer->len = 0;
189 peer->len = len;
192 ret = copy_AlgorithmIdentifier(&val[i], &peer->val[i]);
195 free_cms_alg(peer);
209 hx509_peer_info_parse_smime(hx509_peer_info peer,
216 hx509_peer_info_unparse_smime(hx509_peer_info peer,
227 hx509_peer_info_parse(hx509_peer_info peer,
234 hx509_peer_info_unparse(hx509_peer_info peer,