added function certreq_payload_create_from_x509()
This commit is contained in:
@@ -258,3 +258,16 @@ certreq_payload_t *certreq_payload_create()
|
||||
|
||||
return (&(this->public));
|
||||
}
|
||||
|
||||
/*
|
||||
* Described in header
|
||||
*/
|
||||
certreq_payload_t *certreq_payload_create_from_x509(x509_t *cert)
|
||||
{
|
||||
certreq_payload_t *this = certreq_payload_create();
|
||||
rsa_public_key_t *pubkey = cert->get_public_key(cert);
|
||||
|
||||
this->set_cert_encoding(this, CERT_X509_SIGNATURE);
|
||||
this->set_data(this, pubkey->get_keyid(pubkey));
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -122,5 +122,14 @@ struct certreq_payload_t {
|
||||
*/
|
||||
certreq_payload_t *certreq_payload_create(void);
|
||||
|
||||
/**
|
||||
* @brief Creates a certreq_payload_t object from a X.509 CA certificate.
|
||||
*
|
||||
* @param cert X.509 CA certificate
|
||||
* @return certreq_payload_t object
|
||||
*
|
||||
* @ingroup payloads
|
||||
*/
|
||||
certreq_payload_t *certreq_payload_create_from_x509(x509_t *cert);
|
||||
|
||||
#endif /* CERTREQ_PAYLOAD_H_ */
|
||||
|
||||
Reference in New Issue
Block a user