diff options
author | Omar Polo <op@omarpolo.com> | 2023-06-26 09:44:46 +0000 |
---|---|---|
committer | Omar Polo <op@omarpolo.com> | 2023-06-26 09:44:46 +0000 |
commit | ed164e7221f75d3d7f48351e9427f2ce53ab284a (patch) | |
tree | 02b5682b5b239673ace2add072f4ea6d836e3194 /gmid.c | |
parent | da0821b6cb54a85bcbe76cdf0a9a16f8f1a14619 (diff) |
call getnameinfo() only once per request
Diffstat (limited to 'gmid.c')
-rw-r--r-- | gmid.c | 11 |
1 files changed, 2 insertions, 9 deletions
@@ -84,18 +84,11 @@ void log_request(struct client *c, char *meta, size_t l) { struct conf *conf = c->conf; - char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV], b[GEMINI_URL_LEN]; + char b[GEMINI_URL_LEN]; char *fmted; const char *t; int ec; - ec = getnameinfo((struct sockaddr*)&c->raddr, c->raddrlen, - hbuf, sizeof(hbuf), - sbuf, sizeof(sbuf), - NI_NUMERICHOST | NI_NUMERICSERV); - if (ec != 0) - fatalx("getnameinfo: %s", gai_strerror(ec)); - if (c->iri.schema != NULL) { /* serialize the IRI */ strlcpy(b, c->iri.schema, sizeof(b)); @@ -124,7 +117,7 @@ log_request(struct client *c, char *meta, size_t l) if ((t = memchr(meta, '\r', l)) == NULL) t = meta + l; - ec = asprintf(&fmted, "%s:%s GET %s %.*s", hbuf, sbuf, b, + ec = asprintf(&fmted, "%s:%s GET %s %.*s", c->rhost, c->rserv, b, (int)(t-meta), meta); if (ec == -1) fatal("asprintf"); |