diff options
author | Daniel Silverstone <dsilvers@digital-scurf.org> | 2020-05-22 09:01:39 +0100 |
---|---|---|
committer | Daniel Silverstone <dsilvers@digital-scurf.org> | 2020-05-22 09:01:39 +0100 |
commit | e6c666d4f432d51ff449bbd4dfd137107c9e774c (patch) | |
tree | 9e66a539e1a0cd55d1146c4898f71aecfddabdf5 /frontends/monkey/cert.c | |
parent | 10fc242aa94c8a9a440baccbf7170b36b4d54cb7 (diff) | |
download | netsurf-e6c666d4f432d51ff449bbd4dfd137107c9e774c.tar.gz netsurf-e6c666d4f432d51ff449bbd4dfd137107c9e774c.tar.bz2 |
chore: Perform sslcert_viewer-ectomy
This removes the sslcert_viewer entirely from the code. Where
possible I've also trimmed out of frontends any code I think
should not be present.
Frontends should check and remove any further references that I
have failed to catch.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
Diffstat (limited to 'frontends/monkey/cert.c')
-rw-r--r-- | frontends/monkey/cert.c | 149 |
1 files changed, 0 insertions, 149 deletions
diff --git a/frontends/monkey/cert.c b/frontends/monkey/cert.c deleted file mode 100644 index 3ec2fbee0..000000000 --- a/frontends/monkey/cert.c +++ /dev/null @@ -1,149 +0,0 @@ -/* - * Copyright 2011 Daniel Silverstone <dsilvers@digital-scurf.org> - * - * This file is part of NetSurf, http://www.netsurf-browser.org/ - * - * NetSurf is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. - * - * NetSurf is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#include <stdlib.h> -#include <stdio.h> -#include <string.h> - -#include "utils/ring.h" -#include "utils/nsurl.h" -#include "content/urldb.h" - -#include "monkey/output.h" -#include "monkey/cert.h" - -struct monkey_cert { - struct monkey_cert *r_next, *r_prev; - uint32_t num; - nserror (*cb)(bool,void*); - void *cbpw; - nsurl *url; -}; - -static struct monkey_cert *cert_ring = NULL; -static uint32_t cert_ctr = 0; - -nserror -gui_cert_verify(nsurl *url, - const struct cert_chain *chain, - nserror (*cb)(bool proceed, void *pw), - void *cbpw) -{ - struct monkey_cert *mcrt_ctx; - - mcrt_ctx = calloc(sizeof(*mcrt_ctx), 1); - if (mcrt_ctx == NULL) { - return NSERROR_NOMEM; - } - - mcrt_ctx->cb = cb; - mcrt_ctx->cbpw = cbpw; - mcrt_ctx->num = cert_ctr++; - mcrt_ctx->url = nsurl_ref(url); - - RING_INSERT(cert_ring, mcrt_ctx); - - moutf(MOUT_SSLCERT, "VERIFY CWIN %u URL %s", - mcrt_ctx->num, nsurl_access(url)); - - return NSERROR_OK; -} - - -static struct monkey_cert * -monkey_find_sslcert_by_num(uint32_t sslcert_num) -{ - struct monkey_cert *ret = NULL; - - RING_ITERATE_START(struct monkey_cert, cert_ring, c_ring) { - if (c_ring->num == sslcert_num) { - ret = c_ring; - RING_ITERATE_STOP(cert_ring, c_ring); - } - } RING_ITERATE_END(cert_ring, c_ring); - - return ret; -} - -static void free_sslcert_context(struct monkey_cert *mcrt_ctx) { - moutf(MOUT_SSLCERT, "DESTROY CWIN %u", mcrt_ctx->num); - RING_REMOVE(cert_ring, mcrt_ctx); - if (mcrt_ctx->url) { - nsurl_unref(mcrt_ctx->url); - } - free(mcrt_ctx); -} - -static void -monkey_sslcert_handle_go(int argc, char **argv) -{ - struct monkey_cert *mcrt_ctx; - - if (argc != 3) { - moutf(MOUT_ERROR, "SSLCERT GO ARGS BAD"); - return; - } - - mcrt_ctx = monkey_find_sslcert_by_num(atoi(argv[2])); - if (mcrt_ctx == NULL) { - moutf(MOUT_ERROR, "SSLCERT NUM BAD"); - return; - } - - urldb_set_cert_permissions(mcrt_ctx->url, true); - - mcrt_ctx->cb(true, mcrt_ctx->cbpw); - - free_sslcert_context(mcrt_ctx); -} - -static void -monkey_sslcert_handle_destroy(int argc, char **argv) -{ - struct monkey_cert *mcrt_ctx; - - if (argc != 3) { - moutf(MOUT_ERROR, "SSLCERT DESTROY ARGS BAD"); - return; - } - - mcrt_ctx = monkey_find_sslcert_by_num(atoi(argv[2])); - if (mcrt_ctx == NULL) { - moutf(MOUT_ERROR, "SSLCERT NUM BAD"); - return; - } - - mcrt_ctx->cb(false, mcrt_ctx->cbpw); - - free_sslcert_context(mcrt_ctx); -} - -void -monkey_sslcert_handle_command(int argc, char **argv) -{ - if (argc == 1) - return; - - if (strcmp(argv[1], "DESTROY") == 0) { - monkey_sslcert_handle_destroy(argc, argv); - } else if (strcmp(argv[1], "GO") == 0) { - monkey_sslcert_handle_go(argc, argv); - } else { - moutf(MOUT_ERROR, "SSLCERT COMMAND UNKNOWN %s", argv[1]); - } -} |