iAdd zuccless random mode. - bitreich-httpd - Bitreich HTTPD service Err bitreich.org 70
hgit clone git://bitreich.org/bitreich-httpd git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/bitreich-httpd URL:git://bitreich.org/bitreich-httpd git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/bitreich-httpd bitreich.org 70
1Log /scm/bitreich-httpd/log.gph bitreich.org 70
1Files /scm/bitreich-httpd/files.gph bitreich.org 70
1Refs /scm/bitreich-httpd/refs.gph bitreich.org 70
1Tags /scm/bitreich-httpd/tag bitreich.org 70
1README /scm/bitreich-httpd/file/README.md.gph bitreich.org 70
1LICENSE /scm/bitreich-httpd/file/LICENSE.gph bitreich.org 70
i--- Err bitreich.org 70
1commit a0590477c4c74d7111a031a4cb1c9e5d61ff3044 /scm/bitreich-httpd/commit/a0590477c4c74d7111a031a4cb1c9e5d61ff3044.gph bitreich.org 70
1parent 0f24889dc4f0b3982034d9c4ff58e73f8abe3e16 /scm/bitreich-httpd/commit/0f24889dc4f0b3982034d9c4ff58e73f8abe3e16.gph bitreich.org 70
hAuthor: Christoph Lohmann <20h@r-36.net> URL:mailto:20h@r-36.net bitreich.org 70
iDate: Thu, 4 Aug 2022 21:13:33 +0200 Err bitreich.org 70
i Err bitreich.org 70
iAdd zuccless random mode. Err bitreich.org 70
i Err bitreich.org 70
iDiffstat: Err bitreich.org 70
i M bitreich-httpd.c | 27 ++++++++++++++++++--------- Err bitreich.org 70
i Err bitreich.org 70
i1 file changed, 18 insertions(+), 9 deletions(-) Err bitreich.org 70
i--- Err bitreich.org 70
1diff --git a/bitreich-httpd.c b/bitreich-httpd.c /scm/bitreich-httpd/file/bitreich-httpd.c.gph bitreich.org 70
i@@ -13,6 +13,7 @@ Err bitreich.org 70
i #include <string.h> Err bitreich.org 70
i #include <sys/socket.h> Err bitreich.org 70
i #include <netdb.h> Err bitreich.org 70
i+#include <time.h> Err bitreich.org 70
i Err bitreich.org 70
i void * Err bitreich.org 70
i xmalloc(size_t size) Err bitreich.org 70
i@@ -109,6 +110,7 @@ main(int argc, char *argv[]) Err bitreich.org 70
i int rlen; Err bitreich.org 70
i struct sockaddr_storage clt; Err bitreich.org 70
i socklen_t cltlen = sizeof(clt); Err bitreich.org 70
i+ time_t tim; Err bitreich.org 70
i Err bitreich.org 70
i wwwbase = "/bitreich/www"; Err bitreich.org 70
i wwwindex = "index.html"; Err bitreich.org 70
i@@ -164,17 +166,24 @@ main(int argc, char *argv[]) Err bitreich.org 70
i sleep(1); Err bitreich.org 70
i asprintf(&path, "%s/s/yolo-css.css", wwwbase); Err bitreich.org 70
i ctype = "text/css"; Err bitreich.org 70
i- } else if (strstr(request, "zucc-meat.webm")) { Err bitreich.org 70
i- asprintf(&path, "%s/zucc-meat.webm", zuccbase); Err bitreich.org 70
i- ctype = "video/webm"; Err bitreich.org 70
i } else { Err bitreich.org 70
i- if (strstr(request, "Host: www.zuccless.org")) Err bitreich.org 70
i- wwwbase = zuccbase; Err bitreich.org 70
i- if (strstr(request, "Host: zuccless.org")) Err bitreich.org 70
i+ if (strstr(request, "zuccless.org")) { Err bitreich.org 70
i+ tim = time(NULL); Err bitreich.org 70
i+ srandom(tim); Err bitreich.org 70
i wwwbase = zuccbase; Err bitreich.org 70
i- Err bitreich.org 70
i- asprintf(&path, "%s/%s", wwwbase, wwwindex); Err bitreich.org 70
i- ctype = "text/html"; Err bitreich.org 70
i+ switch (random() % 3) { Err bitreich.org 70
i+ case 0: Err bitreich.org 70
i+ asprintf(&path, "%s/zucc-job.webm", zuccbase); Err bitreich.org 70
i+ break; Err bitreich.org 70
i+ default: Err bitreich.org 70
i+ asprintf(&path, "%s/zucc-meat.webm", zuccbase); Err bitreich.org 70
i+ break; Err bitreich.org 70
i+ } Err bitreich.org 70
i+ ctype = "video/webm"; Err bitreich.org 70
i+ } else { Err bitreich.org 70
i+ asprintf(&path, "%s/%s", wwwbase, wwwindex); Err bitreich.org 70
i+ ctype = "text/html"; Err bitreich.org 70
i+ } Err bitreich.org 70
i } Err bitreich.org 70
i Err bitreich.org 70
i rlen = servefile(path, ctype, 1); Err bitreich.org 70
.
Response:
text/plain