diff options
author | Elias Norberg <xyzzy@kudzu.se> | 2012-01-27 12:02:25 +0100 |
---|---|---|
committer | Elias Norberg <xyzzy@kudzu.se> | 2012-02-11 01:04:23 +0100 |
commit | 246f40ff8e24f85140591d7c2e592f944c8fc855 (patch) | |
tree | f39b1575d3838f5ec33db2d3c002dda17b828bab /xxxterm.h | |
parent | 68d48040d0c70a260ec19073a6a17d76eeff874a (diff) | |
download | xombrero-246f40ff8e24f85140591d7c2e592f944c8fc855.tar.gz |
Add initial support for Strict-Transport-Security
Strict-Transport-Security is a HTTP-flag that a server can specify to force all future requests to that server to be done via https. The flag 'enable_strict_transport' specifies if STS should be used or not. Default is TRUE.
Diffstat (limited to 'xxxterm.h')
-rw-r--r-- | xxxterm.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/xxxterm.h b/xxxterm.h index 4c7c4d4..3da786a 100644 --- a/xxxterm.h +++ b/xxxterm.h @@ -283,6 +283,19 @@ struct history { RB_HEAD(history_list, history); RB_PROTOTYPE(history_list, history, entry, history_rb_cmp); +#define XT_STS_FLAGS_INCLUDE_SUBDOMAINS (1) +#define XT_STS_FLAGS_EXPAND (2) +#define XT_STS_FILE ("strict-transport") + +struct strict_transport { + RB_ENTRY(strict_transport) entry; + gchar *host; + time_t timeout; + int flags; +}; +RB_HEAD(strict_transport_tree, strict_transport); +RB_PROTOTYPE(strict_transport_tree, strict_transport, entry, strict_transport_rb_cmp); + /* utility */ #define XT_NAME ("XXXTerm") #define XT_CB_HANDLED (TRUE) @@ -582,6 +595,7 @@ extern int cookie_policy; extern char *ssl_ca_file; extern char *resource_dir; extern gboolean ssl_strict_certs; +extern gboolean enable_strict_transport; extern int append_next; extern char *home; extern char *search_string; @@ -647,6 +661,7 @@ extern struct about_type about_list[]; extern struct domain_list c_wl; extern struct domain_list js_wl; extern struct domain_list pl_wl; +extern struct strict_transport_tree st_tree; extern struct alias_list aliases; extern struct mime_type_list mtl; extern struct keybinding_list kbl; |