summaryrefslogtreecommitdiff
path: root/data.c
diff options
context:
space:
mode:
authorGravatar default2024-11-12 05:47:11 +0100
committerGravatar default2024-11-12 05:47:11 +0100
commitbbe061ca1995ac3aa2da2f88726e9e9723dd1dde (patch)
tree72b4b2c39d73dcf68dee2f4d6a54df05e2bcf4bf /data.c
parentAdded new proxy authorization by token. (diff)
downloadsnac2-bbe061ca1995ac3aa2da2f88726e9e9723dd1dde.tar.gz
snac2-bbe061ca1995ac3aa2da2f88726e9e9723dd1dde.tar.xz
snac2-bbe061ca1995ac3aa2da2f88726e9e9723dd1dde.zip
make_url() now accepts generating proxied urls by token.
Diffstat (limited to 'data.c')
-rw-r--r--data.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/data.c b/data.c
index d42f9c8..f3dcc01 100644
--- a/data.c
+++ b/data.c
@@ -3676,7 +3676,17 @@ xs_str *make_url(const char *href, const char *proxy, int by_token)
3676 xs_str *url = NULL; 3676 xs_str *url = NULL;
3677 3677
3678 if (proxy && !xs_startswith(href, srv_baseurl)) { 3678 if (proxy && !xs_startswith(href, srv_baseurl)) {
3679 xs *p = xs_str_cat(xs_dup(proxy), "/x/"); 3679 xs *p = NULL;
3680
3681 if (by_token) {
3682 xs *tks = xs_fmt("%s:%s", xs_dict_get(srv_config, "proxy_token_seed"), proxy);
3683 xs *tk = xs_md5_hex(tks, strlen(tks));
3684
3685 p = xs_fmt("y/%s/", tk);
3686 }
3687 else
3688 p = xs_str_cat(xs_dup(proxy), "/x/");
3689
3680 url = xs_replace(href, "https:/" "/", p); 3690 url = xs_replace(href, "https:/" "/", p);
3681 } 3691 }
3682 else 3692 else