FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
struct x509_chain * certificates
List of all certificates (for signature messages)
struct asn1_cursor oid
Object identifier.
struct asn1_cursor value
Signature or key value.
int cms_message(struct image *image, struct cms_message **cms)
Create CMS message.
struct stp_switch root
Root switch.
int cms_decrypt(struct cms_message *cms, struct image *image, const char *name, struct private_key *private_key)
Decrypt CMS message.
struct digest_algorithm * digest
Digest algorithm (for signature messages)
static struct cms_message * cms_get(struct cms_message *cms)
Get reference to CMS message.
struct pubkey_algorithm * pubkey
Public-key algorithm.
static int cms_is_encrypted(struct cms_message *cms)
Check if CMS message is an encrypted message.
Access to external ("user") memory.
A doubly-linked list entry (or list head)
An X.509 certificate chain.
CMS participant information.
struct cms_type * type
Message type.
int(* parse)(struct cms_message *cms, const struct asn1_cursor *raw)
Parse content.
struct cipher_algorithm * cipher
Cipher algorithm.
#define ref_get(refcnt)
Get additional reference to object.
struct asn1_cursor * raw
Raw ASN.1 data.
static int cms_is_signature(struct cms_message *cms)
Check if CMS message is a signature message.
An X.509 root certificate list.
static void cms_put(struct cms_message *cms)
Drop reference to CMS message.
struct list_head participants
List of participant information blocks.
struct list_head list
List of participant information blocks.
struct x509_chain * chain
Certificate chain.
A message digest algorithm.
struct asn1_cursor iv
Cipher initialization vector.
struct asn1_cursor mac
Cipher authentication tag.
int64_t time_t
Seconds since the Epoch.
int cms_verify(struct cms_message *cms, struct image *image, const char *name, time_t time, struct x509_chain *store, struct x509_root *root)
Verify CMS signature.
#define NULL
NULL pointer (VOID *)
struct refcnt refcnt
Reference count.
#define ref_put(refcnt)
Drop reference to object.