surf

surf browser, a WebKit based browser
git clone git://git.suckless.org/surf
Log | Files | Refs | README | LICENSE

commit d66904675dddd63bab62e9e962cf195248a8bf97
parent 7823ab6fc0d035a1e75a3d08867a0dfd04ff635f
Author: Quentin Rameau <quinq@fifth.space>
Date:   Sat, 29 Apr 2017 17:21:12 +0200

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.

Diffstat:
surf.1 | 9+++++++++
surf.c | 16++++++++++++----
2 files changed, 21 insertions(+), 4 deletions(-)

diff --git 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 @@ -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;