summaryrefslogtreecommitdiffstats
path: root/src/net/tcp/https.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/net/tcp/https.c')
-rw-r--r--src/net/tcp/https.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/net/tcp/https.c b/src/net/tcp/https.c
index e91000322..5a44bdebf 100644
--- a/src/net/tcp/https.c
+++ b/src/net/tcp/https.c
@@ -31,12 +31,24 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
*/
#include <ipxe/open.h>
+#include <ipxe/uri.h>
#include <ipxe/tls.h>
#include <ipxe/http.h>
#include <ipxe/features.h>
FEATURE ( FEATURE_PROTOCOL, "HTTPS", DHCP_EB_FEATURE_HTTPS, 1 );
+/**
+ * Add HTTPS filter
+ *
+ * @v conn HTTP connection
+ * @ret rc Return status code
+ */
+static int https_filter ( struct http_connection *conn ) {
+
+ return add_tls ( &conn->socket, conn->uri->host );
+}
+
/** HTTPS URI opener */
struct uri_opener https_uri_opener __uri_opener = {
.scheme = "https",
@@ -47,5 +59,5 @@ struct uri_opener https_uri_opener __uri_opener = {
struct http_scheme https_scheme __http_scheme = {
.name = "https",
.port = HTTPS_PORT,
- .filter = add_tls,
+ .filter = https_filter,
};