From bfb1bb119241d85bb9b400881328496e12a39aed Mon Sep 17 00:00:00 2001 From: Daniel Silverstone Date: Mon, 5 Aug 2019 18:11:13 +0100 Subject: 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 --- desktop/browser_private.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'desktop/browser_private.h') diff --git a/desktop/browser_private.h b/desktop/browser_private.h index 0883c54ac..7e2d7e76d 100644 --- a/desktop/browser_private.h +++ b/desktop/browser_private.h @@ -25,6 +25,7 @@ #ifndef NETSURF_DESKTOP_BROWSER_PRIVATE_H_ #define NETSURF_DESKTOP_BROWSER_PRIVATE_H_ +#include "content/fetch.h" #include "desktop/frame_types.h" struct box; @@ -88,6 +89,14 @@ struct browser_fetch_parameters { bool parent_quirks; /**< Optional parent quirks */ }; +/** + * The SSL context for a fetch, as provided by the fetchers + */ +struct browser_ssl_info { + struct ssl_cert_info certs[MAX_SSL_CERTS]; /**< The certificate chain */ + size_t num; /**< The number of certificates in the chain */ +}; + /** * Browser window data. */ @@ -103,6 +112,11 @@ struct browser_window { */ struct browser_fetch_parameters current_parameters; + /** + * The SSL information for the current content + */ + struct browser_ssl_info current_ssl_info; + /** * Content handle of page in process of being loaded or NULL * if no page is being loaded. @@ -114,6 +128,11 @@ struct browser_window { */ struct browser_fetch_parameters loading_parameters; + /** + * The SSL information for the loading content + */ + struct browser_ssl_info loading_ssl_info; + /** * Favicon */ -- cgit v1.2.3