SMOLNET PORTAL home about changes
iMake compatibility serving a full feature. - geomyidae - A small C-based gopherd.	Err	bitreich.org	70
hgit clone git://bitreich.org/geomyidae/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/geomyidae/	URL:git://bitreich.org/geomyidae/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/geomyidae/	bitreich.org	70
1Log	/scm/geomyidae/log.gph	bitreich.org	70
1Files	/scm/geomyidae/files.gph	bitreich.org	70
1Refs	/scm/geomyidae/refs.gph	bitreich.org	70
1Tags	/scm/geomyidae/tag	bitreich.org	70
1README	/scm/geomyidae/file/README.gph	bitreich.org	70
1LICENSE	/scm/geomyidae/file/LICENSE.gph	bitreich.org	70
i---	Err	bitreich.org	70
1commit 81f3ec7d02246ab56d7fcc57ce18d546a3fe4b6f	/scm/geomyidae/commit/81f3ec7d02246ab56d7fcc57ce18d546a3fe4b6f.gph	bitreich.org	70
1parent 6dc65c6ce9c4a41c034aa1f21d9ff2a1573efde4	/scm/geomyidae/commit/6dc65c6ce9c4a41c034aa1f21d9ff2a1573efde4.gph	bitreich.org	70
hAuthor: Christoph Lohmann <20h@r-36.net>	URL:mailto:20h@r-36.net	bitreich.org	70
iDate:   Sat, 22 Jul 2023 17:27:20 +0200	Err	bitreich.org	70
i	Err	bitreich.org	70
iMake compatibility serving a full feature.	Err	bitreich.org	70
i	Err	bitreich.org	70
iDiffstat:	Err	bitreich.org	70
i  M main.c                              |      13 +++++++++----	Err	bitreich.org	70
i	Err	bitreich.org	70
i1 file changed, 9 insertions(+), 4 deletions(-)	Err	bitreich.org	70
i---	Err	bitreich.org	70
1diff --git a/main.c b/main.c	/scm/geomyidae/file/main.c.gph	bitreich.org	70
i@@ -187,19 +187,24 @@ handlerequest(int sock, char *req, int rlen, char *base, char *ohost,	Err	bitreich.org	70
i         if (c)	Err	bitreich.org	70
i                 c[0] = '\0';	Err	bitreich.org	70
i 	Err	bitreich.org	70
i+        memmove(recvc, recvb, rlen+1);	Err	bitreich.org	70
i         /*	Err	bitreich.org	70
i          * Try to guess if we have some HTTP-like protocol compatibility	Err	bitreich.org	70
i          * mode.	Err	bitreich.org	70
i          */	Err	bitreich.org	70
i         if (!nocgi && recvb[0] != '/' && (c = strchr(recvb, ' '))) {	Err	bitreich.org	70
i-                *c = '\0';	Err	bitreich.org	70
i+                *c++ = '\0';	Err	bitreich.org	70
i                 if (strchr(recvb, '/'))	Err	bitreich.org	70
i                         goto dothegopher;	Err	bitreich.org	70
i                 if (snprintf(path, sizeof(path), "%s/%s", base, recvb) <= sizeof(path)) {	Err	bitreich.org	70
i                         if (realpath(path, (char *)rpath)) {	Err	bitreich.org	70
i-                                if (stat(rpath, &dir)) {	Err	bitreich.org	70
i-                                        handlecgi(sock, rpath, port, base, NULL, NULL, ohost,	Err	bitreich.org	70
i-                                                clienth, serverh, istls, req, NULL);	Err	bitreich.org	70
i+                                if (stat(rpath, &dir) == 0) {	Err	bitreich.org	70
i+                                        if (loglvl & FILES)	Err	bitreich.org	70
i+                                                logentry(clienth, clientp, recvc, "compatibility serving");	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+                                        handlecgi(sock, rpath, port, base, "", "", ohost,	Err	bitreich.org	70
i+                                                clienth, serverh, istls, req, "");	Err	bitreich.org	70
i+                                        return;	Err	bitreich.org	70
i                                 }	Err	bitreich.org	70
i                         }	Err	bitreich.org	70
i                 }	Err	bitreich.org	70
.
Response: text/plain
Original URLgopher://bitreich.org/0/scm/geomyidae/commit/81f3ec7d0224...
Content-Typetext/plain; charset=utf-8