diff options
author | Daniel Silverstone <dsilvers@digital-scurf.org> | 2019-08-05 18:11:13 +0100 |
---|---|---|
committer | Daniel Silverstone <dsilvers@digital-scurf.org> | 2019-08-05 18:12:47 +0100 |
commit | bfb1bb119241d85bb9b400881328496e12a39aed (patch) | |
tree | 4f05e7c9e1d61cb5229895da7d4f318f94ef90f1 /content/content.h | |
parent | bccf101714f2ca165b1fd754879f3813993d26ca (diff) | |
download | netsurf-bfb1bb119241d85bb9b400881328496e12a39aed.tar.gz netsurf-bfb1bb119241d85bb9b400881328496e12a39aed.tar.bz2 |
Migrate SSL certificate storage to the browser window
* Fetchers now provide the certificates before headers
* This is propagated all the way to the browser window
* When a query occurs, we retrieve it from there and fire
the query with those stored certificates.
* The serial number is a bignum, store it as hex.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
Diffstat (limited to 'content/content.h')
-rw-r--r-- | content/content.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/content/content.h b/content/content.h index 4fdcaf2c0..6e298e045 100644 --- a/content/content.h +++ b/content/content.h @@ -44,6 +44,7 @@ struct object_params; struct rect; struct redraw_context; struct llcache_query_msg; +struct ssl_cert_info; /** Status of a content */ typedef enum { @@ -59,6 +60,7 @@ typedef enum { /** Used in callbacks to indicate what has occurred. */ typedef enum { CONTENT_MSG_LOG, /**< Content wishes to log something */ + CONTENT_MSG_SSL_CERTS, /**< Content is from SSL and this is its chain */ CONTENT_MSG_QUERY, /**< Something under the content has a query */ CONTENT_MSG_QUERY_FINISHED, /**< Something under the content finished its query */ CONTENT_MSG_LOADING, /**< fetching or converting */ @@ -107,6 +109,11 @@ union content_msg_data { size_t msglen; /**< The length of that message */ browser_window_console_flags flags; /**< The flags of the logging */ } log; + /** CONTENT_MSG_SSL_CERTS - The certificate chain from the underlying fetch */ + struct { + const struct ssl_cert_info *certs; /**< The chain */ + size_t num; /**< The number of certs in the chain */ + } certs; /** CONTENT_MSG_QUERY - Query from underlying object somewhere */ const struct llcache_query_msg *query_msg; /** CONTENT_MSG_QUERY_FINISHED - Query from underlying object finished */ |