summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQuentin Rameau <quinq@fifth.space>2017-04-29 17:21:12 +0200
committerQuentin Rameau <quinq@fifth.space>2017-04-29 17:59:08 +0200
commitd66904675dddd63bab62e9e962cf195248a8bf97 (patch)
tree2b14e895abb7785e7ddbe1bf742679631063c851
parent7823ab6fc0d035a1e75a3d08867a0dfd04ff635f (diff)
downloadsurf-d66904675dddd63bab62e9e962cf195248a8bf97.tar.gz
surf-d66904675dddd63bab62e9e962cf195248a8bf97.tar.bz2
surf-d66904675dddd63bab62e9e962cf195248a8bf97.zip
Add a flag for custom certificates
I don't think a keybinding would be useful here because we can't remove a custom certificate which is alread set anyway. I'll add it if somebody convince me of it's usefulness.
-rw-r--r--surf.19
-rw-r--r--surf.c16
2 files changed, 21 insertions, 4 deletions
diff --git a/surf.1 b/surf.1
index cc54351..45b75de 100644
--- a/surf.1
+++ b/surf.1
@@ -126,6 +126,12 @@ Prints xid to standard output. This can be used to script the browser in for
example
.BR xdotool(1).
.TP
+.B -x
+Disable custom certificates.
+.TP
+.B -X
+Enable custom certificates.
+.TP
.B \-z zoomlevel
Specify the
.I zoomlevel
@@ -268,6 +274,9 @@ plugins
.TP
.B m M
styles
+.TP
+.B x X
+custom certificates
.SH INDICATORS OF WEB PAGE
The second part of the indicators specifies modes of the web page itself.
.SS First character: encryption
diff --git a/surf.c b/surf.c
index 84ab8e3..59cea07 100644
--- a/surf.c
+++ b/surf.c
@@ -236,7 +236,7 @@ static void clicknewwindow(Client *c, const Arg *a, WebKitHitTestResult *h);
static void clickexternplayer(Client *c, const Arg *a, WebKitHitTestResult *h);
static char winid[64];
-static char togglestats[11];
+static char togglestats[12];
static char pagestats[2];
static Atom atoms[AtomLast];
static Window embed;
@@ -590,8 +590,9 @@ gettogglestats(Client *c)
togglestats[6] = curconfig[Plugins].val.b ? 'V' : 'v';
togglestats[7] = curconfig[Style].val.b ? 'M' : 'm';
togglestats[8] = curconfig[FrameFlattening].val.b ? 'F' : 'f';
- togglestats[9] = curconfig[StrictTLS].val.b ? 'T' : 't';
- togglestats[10] = '\0';
+ togglestats[9] = curconfig[Certificate].val.b ? 'X' : 'x';
+ togglestats[10] = curconfig[StrictTLS].val.b ? 'T' : 't';
+ togglestats[11] = '\0';
}
void
@@ -881,7 +882,7 @@ newwindow(Client *c, const Arg *a, int noembed)
{
int i = 0;
char tmp[64];
- const char *cmd[28], *uri;
+ const char *cmd[29], *uri;
const Arg arg = { .v = cmd };
cmd[i++] = argv0;
@@ -921,6 +922,7 @@ newwindow(Client *c, const Arg *a, int noembed)
}
if (showxid)
cmd[i++] = "-w";
+ cmd[i++] = curconfig[Certificate].val.b ? "-X" : "-x" ;
/* do not keep zoom level */
cmd[i++] = "--";
if ((uri = a->v))
@@ -1902,6 +1904,12 @@ main(int argc, char *argv[])
case 'w':
showxid = 1;
break;
+ case 'x':
+ defconfig CSETB(Certificate, 0);
+ break;
+ case 'X':
+ defconfig CSETB(Certificate, 1);
+ break;
case 'z':
defconfig CSETF(ZoomLevel, strtof(EARGF(usage()), NULL));
break;