summaryrefslogtreecommitdiff
path: root/http.c
diff options
context:
space:
mode:
authorGravatar default2022-09-30 04:33:42 +0200
committerGravatar default2022-09-30 04:33:42 +0200
commit2688230a190cc5a98bfb5e95b3a41864854b3151 (patch)
tree1f53ddd117a51f68422e7f85162b5d66916072e3 /http.c
parentMore work in check_signature() (non-working). (diff)
downloadpenes-snac2-2688230a190cc5a98bfb5e95b3a41864854b3151.tar.gz
penes-snac2-2688230a190cc5a98bfb5e95b3a41864854b3151.tar.xz
penes-snac2-2688230a190cc5a98bfb5e95b3a41864854b3151.zip
Fixed check_signature().
Diffstat (limited to '')
-rw-r--r--http.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/http.c b/http.c
index 1d8cc7d..a58aaf4 100644
--- a/http.c
+++ b/http.c
@@ -108,8 +108,6 @@ int check_signature(snac *snac, char *req)
108 xs *keyId = NULL; 108 xs *keyId = NULL;
109 xs *headers = NULL; 109 xs *headers = NULL;
110 xs *signature = NULL; 110 xs *signature = NULL;
111 xs *sig_bin = NULL;
112 int s_size;
113 char *pubkey; 111 char *pubkey;
114 char *p; 112 char *p;
115 113
@@ -127,7 +125,7 @@ int check_signature(snac *snac, char *req)
127 headers = xs_crop(xs_dup(v), 9, -1); 125 headers = xs_crop(xs_dup(v), 9, -1);
128 else 126 else
129 if (xs_startswith(v, "signature")) 127 if (xs_startswith(v, "signature"))
130 signature = xs_crop(xs_dup(v), 12, -1); 128 signature = xs_crop(xs_dup(v), 11, -1);
131 } 129 }
132 } 130 }
133 131
@@ -187,10 +185,7 @@ int check_signature(snac *snac, char *req)
187 } 185 }
188 } 186 }
189 187
190 /* convert the signature to binary */ 188 if (xs_evp_verify(pubkey, sig_str, strlen(sig_str), signature) != 1) {
191 sig_bin = xs_base64_dec(signature, &s_size);
192
193 if (xs_evp_verify(pubkey, sig_str, strlen(sig_str), sig_bin) != 1) {
194 snac_debug(snac, 1, xs_fmt("rsa verify error %s", keyId)); 189 snac_debug(snac, 1, xs_fmt("rsa verify error %s", keyId));
195 } 190 }
196 191