commit - d6d9f9b2a9493f3a6271fd52f3e63a51b2c57f67
commit + 10cc819309de08fbab770ce9605dec1b35a4fad9
blob - 29fd94d35192dc546fd202dd7f2b253dfb643e82
blob + 37e5845724a737c5d2e2853591e9cc9119047889
--- crypto.c
+++ crypto.c
struct imsg_crypto_res res;
struct iovec iov[2];
const void *from;
- unsigned char *to;
+ unsigned char *data, *to;
size_t datalen;
int n, ret;
unsigned int len;
+ data = imsg->data;
datalen = IMSG_DATA_SIZE(imsg);
switch (imsg->hdr.type) {
case IMSG_CRYPTO_RSA_PRIVDEC:
if (datalen < sizeof(req))
fatalx("size mismatch for imsg %d", imsg->hdr.type);
- memcpy(&req, imsg->data, sizeof(req));
+ memcpy(&req, data, sizeof(req));
if (datalen != sizeof(req) + req.flen)
fatalx("size mismatch for imsg %d", imsg->hdr.type);
- from = imsg->data + sizeof(req);
+ from = data + sizeof(req);
if ((pkey = get_pkey(req.hash)) == NULL ||
(rsa = EVP_PKEY_get1_RSA(pkey)) == NULL)
case IMSG_CRYPTO_ECDSA_SIGN:
if (datalen < sizeof(req))
fatalx("size mismatch for imsg %d", imsg->hdr.type);
- memcpy(&req, imsg->data, sizeof(req));
+ memcpy(&req, data, sizeof(req));
if (datalen != sizeof(req) + req.flen)
fatalx("size mismatch for imsg %d", imsg->hdr.type);
- from = imsg->data + sizeof(req);
+ from = data + sizeof(req);
if ((pkey = get_pkey(req.hash)) == NULL ||
(ecdsa = EVP_PKEY_get1_EC_KEY(pkey)) == NULL)
int n, done = 0;
const void *toptr;
char *hash;
+ unsigned char *data;
size_t datalen;
if ((hash = RSA_get_ex_data(rsa, 0)) == NULL)
"crypto", imsg.hdr.pid);
}
+ data = imsg.data;
datalen = IMSG_DATA_SIZE(&imsg);
if (datalen < sizeof(res))
fatalx("size mismatch for imsg %d",
imsg.hdr.type);
- memcpy(&res, imsg.data, sizeof(res));
+ memcpy(&res, data, sizeof(res));
if (datalen != sizeof(res) + res.ret)
fatalx("size mismatch for imsg %d",
imsg.hdr.type);
ret = res.ret;
- toptr = imsg.data + sizeof(res);
+ toptr = data + sizeof(res);
if (res.id != reqid)
fatalx("invalid id; got %llu, want %llu",
int n, done = 0;
const void *toptr;
char *hash;
+ unsigned char *data;
size_t datalen;
if ((hash = EC_KEY_get_ex_data(eckey, 0)) == NULL)
imsg.hdr.type, imsg.hdr.peerid,
"crypto", imsg.hdr.pid);
+ data = imsg.data;
datalen = IMSG_DATA_SIZE(&imsg);
if (datalen < sizeof(res))
fatalx("size mismatch for imsg %d",
imsg.hdr.type);
- memcpy(&res, imsg.data, sizeof(res));
+ memcpy(&res, data, sizeof(res));
if (datalen != sizeof(res) + res.ret)
fatalx("size mismatch for imsg %d",
imsg.hdr.type);
- toptr = imsg.data + sizeof(res);
+ toptr = data + sizeof(res);
if (res.id != reqid)
fatalx("invalid response id");
blob - 984b32829ee5ff2866e6ff3bf9df8de3d5e189a3
blob + 54fb280b4af16cd6f9a5da79744be04d161aef67
--- gg.c
+++ gg.c
}
static size_t
-dorep(struct tls *ctx, void *buf, size_t len)
+dorep(struct tls *ctx, uint8_t *buf, size_t len)
{
ssize_t w;
size_t tot = 0;
int foundhdr = 0, code = -1, od;
char iribuf[GEMINI_URL_LEN];
char req[GEMINI_URL_LEN];
- char buf[2048];
+ uint8_t buf[2048];
const char *parse_err, *host, *port;
if (strlcpy(iribuf, r, sizeof(iribuf)) >= sizeof(iribuf))
doreq(ctx, req);
for (;;) {
- char *t;
+ uint8_t *t;
size_t len;
len = dorep(ctx, buf, sizeof(buf));