iAdding gopher+ compatibility. - 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 a1cdda3a103efbe3da4dfed6b2b26301d1b83757 /scm/geomyidae/commit/a1cdda3a103efbe3da4dfed6b2b26301d1b83757.gph bitreich.org 70 1parent 1ee9a83904a0077b273014297bd5ca0a1d076148 /scm/geomyidae/commit/1ee9a83904a0077b273014297bd5ca0a1d076148.gph bitreich.org 70 hAuthor: Christoph Lohmann <20h@r-36.net> URL:mailto:20h@r-36.net bitreich.org 70 iDate: Tue, 30 Jan 2018 22:21:42 +0100 Err bitreich.org 70 i Err bitreich.org 70 iAdding gopher+ compatibility. Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M main.c | 17 ++++++++++++++--- Err bitreich.org 70 i Err bitreich.org 70 i1 file changed, 14 insertions(+), 3 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@@ -130,6 +130,20 @@ handlerequest(int sock, char *base, char *ohost, char *port, char *clienth, Err bitreich.org 70 i c = strchr(recvb, '\n'); Err bitreich.org 70 i if (c) Err bitreich.org 70 i c[0] = '\0'; Err bitreich.org 70 i+ sear = strchr(recvb, '\t'); Err bitreich.org 70 i+ if (sear != nil) { Err bitreich.org 70 i+ *sear++ = '\0'; Err bitreich.org 70 i+ Err bitreich.org 70 i+ /* Gopher+ compatibility hack. */ Err bitreich.org 70 i+ if (*sear == '+' || *sear == '$' || *sear == '!') { Err bitreich.org 70 i+ dprintf(sock, "+-2\r\n"); Err bitreich.org 70 i+ dprintf(sock, "+INFO: 1gopher+\t\t%s\t%s\r\n", Err bitreich.org 70 i+ ohost, port); Err bitreich.org 70 i+ dprintf(sock, "+ADMIN:\r\n Admin: Me\r\n"); 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 i memmove(recvc, recvb, len+1); Err bitreich.org 70 i Err bitreich.org 70 i if (!strncmp(recvb, "URL:", 4)) { Err bitreich.org 70 i@@ -143,9 +157,6 @@ handlerequest(int sock, char *base, char *ohost, char *port, char *clienth, Err bitreich.org 70 i return; Err bitreich.org 70 i } Err bitreich.org 70 i Err bitreich.org 70 i- sear = strchr(recvb, '\t'); Err bitreich.org 70 i- if (sear != nil) Err bitreich.org 70 i- *sear++ = '\0'; Err bitreich.org 70 i args = strchr(recvb, '?'); Err bitreich.org 70 i if (args != nil) Err bitreich.org 70 i *args++ = '\0'; Err bitreich.org 70 .