aboutsummaryrefslogtreecommitdiff
path: root/src/include/ipxe
diff options
context:
space:
mode:
authorMichael Brown <mcb30@ipxe.org>2012-05-08 11:12:09 +0100
committerMichael Brown <mcb30@ipxe.org>2012-05-08 12:49:01 +0100
commit1a5f025ad85c484697718eeba13680dc4ffebd24 (patch)
treec938e52c806ff0b3a55f9826868f8b4c4d8d78f6 /src/include/ipxe
parent99c798d87a94838be62976cb1632e7d0a9550df3 (diff)
downloadipxe-1a5f025ad85c484697718eeba13680dc4ffebd24.zip
ipxe-1a5f025ad85c484697718eeba13680dc4ffebd24.tar.gz
ipxe-1a5f025ad85c484697718eeba13680dc4ffebd24.tar.bz2
[crypto] Add x509_auto_append()
CMS includes an unordered certificate set, from which certificates must be extracted in order by matching up issuers with subjects. We will use the same functionality as part of the automatic download of cross-signing certificates. Generalise cms_find_subject() to x509_find_subject(), and create x509_auto_append(). Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/include/ipxe')
-rw-r--r--src/include/ipxe/x509.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/include/ipxe/x509.h b/src/include/ipxe/x509.h
index 78b180c..8753bb0 100644
--- a/src/include/ipxe/x509.h
+++ b/src/include/ipxe/x509.h
@@ -335,6 +335,8 @@ extern int x509_append ( struct x509_chain *chain,
struct x509_certificate *cert );
extern int x509_append_raw ( struct x509_chain *chain, const void *data,
size_t len );
+extern int x509_auto_append ( struct x509_chain *chain,
+ struct x509_chain *certs );
extern int x509_validate_chain ( struct x509_chain *chain, time_t time,
struct x509_root *root );