Fix 2004/hibachi/README.md

In order for connecting to the webserver one needs to start it from the
build subdirectory.

Format fix README.md.

Added links(1) :-) to the README.md.

Fix country in winners.csv.
This commit is contained in:
Cody Boone Ferguson committed 2023-04-25 06:03:54 -07:00
1 parent 60e9d4210f
commit f3cf06eb85
2 files changed
+60 -50

No files matched your search

+59 -49
View File
@@ -1,12 +1,8 @@
# Best Abuse of the Guidelines # Best Abuse of the Guidelines
Anthony Howe Anthony Howe
Snert Canada
42 av. Isola Bella <http://www.snert.com/>
06400 Cannes
France
http://www.snert.com/
## To build: ## To build:
@@ -17,45 +13,52 @@ make
## To run: ## To run:
```sh ```sh
cd build; ./hibachi-start.sh cd build; ./hibachi-start.sh &
``` ```
## Try: ## Try:
```sh ```sh
cd build; ./hibachi-start.sh cd build; ./hibachi-start.sh &
``` ```
Then use your web browser to visit http://localhost:8008/ Then use your web browser to visit `http://localhost:8008/`. When you're
finished make sure to kill `hibachi`.
NOTE: you must be in the `build` directory when running `hibachi` for this to
work.
## Judges' remarks: ## Judges' remarks:
This entry violates the guidelines in so many ways! We are not This entry violates the [guidelines](/2004/guidelines.txt) in so many ways! We
exactly sure how many org's will be upset with this entry, but we are not exactly sure how many organisations will be upset with this entry, but
are considering starting an IOCCC standards body just to reign in we are considering starting an IOCCC standards body just to reign in the likes
the likes Mr Howe. of Mr Howe.
This entry also has the dubious honour of being the only one to have This entry also has the dubious honour of being the only one to have been
been submitted with its own ./configure script. submitted with its own [configure](build/configure) script.
NOTE: the author states there is a tarball `hibachi.tgz` but this was extracted
so the file does not exist here.
## Author's remarks: ## Author's remarks:
### README.TXT (Feb 2004) ### README.TXT (Feb 2004)
Hibachi is a simple, small, and (probably) very secure web server. `Hibachi` is a simple, small, and (probably) very secure web server.
There is a `hibachi.tgz' file that unpacks several support There is a `hibachi.tgz` file that unpacks several support
files and a sub-directory tree containing the documentation and files and a sub-directory tree containing the documentation and
examples. It can be viewed by: examples. It can be viewed by:
tar -zxf hibachi.tgz ```sh
lynx hibachi/localhost/index.html tar -zxf hibachi.tgz
lynx hibachi/localhost/index.html
```
Or once Hibachi is running, use a web browser, preferably one that Or once `Hibachi` is running, use a web browser, preferably one that
supports images and JavaScript, to view the documentation and try supports images and JavaScript, to view the documentation and try
some of the CGI examples: some of the CGI examples, visit: http://localhost:8008/.
http://localhost:8008/
### Building ### Building
@@ -71,7 +74,7 @@ For Linux (older):
```sh ```sh
gcc -DSHUT_WR=1 -o hibachi hibachi.c gcc -DSHUT_WR=1 -o hibachi hibachi.c
`` ```
For SunOS: For SunOS:
@@ -79,12 +82,12 @@ For SunOS:
gcc -o hibachi hibachi.c -lnsl -lsocket gcc -o hibachi hibachi.c -lnsl -lsocket
``` ```
Since some systems place socket and network functions into other Since some systems place socket and network functions into other libraries, a
libraries, a GNU autoconf ./configure script has been provided to [GNU autoconf](https://en.wikipedia.org/wiki/Autoconf)
figure out the necessary link libraries, to verify all the [configure](https://en.wikipedia.org/wiki/Configure_script) script has been
necessary headers and functions are present, and setup the #! provided to figure out the necessary link libraries, to verify all the necessary
paths for the CGI examples. In which case the preferred build headers and functions are present, and setup the `#!` paths for the CGI
commands are: examples. In which case the preferred build commands are:
``` ```
./configure [--enable-port=number] ./configure [--enable-port=number]
@@ -94,6 +97,7 @@ make
To start the server on the default port (8008): To start the server on the default port (8008):
```sh ```sh
cd build;
./hibachi-start.sh & ./hibachi-start.sh &
``` ```
@@ -113,31 +117,33 @@ kill %1
* Supports virtual hosts. * Supports virtual hosts.
* Supports all MIME types. * Supports all [MIME](https://en.wikipedia.org/wiki/MIME) types.
* Supports Common Gateway Interface (CGI) scripts and programs. * Supports [Common Gateway Interface
(CGI)](https://en.wikipedia.org/wiki/Common_Gateway_Interface) scripts and programs.
* Supports multiple index.* file types: * Supports multiple index.* file types:
index.htm, index.html, index.php, index.pl, index.htm, index.html, index.php, index.pl, index.sh, index.rb, index.py
index.sh, index.rb, index.py
* Supports subset of RFC 2616 HTTP/1.1 methods: * Supports subset of [RFC 2616](https://datatracker.ietf.org/doc/html/rfc2616)
[HTTP](https://en.wikipedia.org/wiki/HTTP)/1.1 methods:
GET, HEAD, and POST `GET`, `HEAD`, and `POST`
* Simple & straight forward configuration using environment variables. * Simple & straight forward configuration using environment variables.
* Portability across Unix-like environments, such as: * Portability across Unix-like environments, such as: Cygwin, FreeBSD, Linux,
SunOS.
Cygwin, FreeBSD, Linux, SunOS.
* Known to work with Lynx, Mozilla, Opera, and Internet Explorer * Known to work with Lynx, Mozilla, Opera, and Internet Explorer
web browsers. web browsers.
* Is a dedicated process-forking server that does not use inetd. * Is a dedicated process-forking server that does not use
[inetd](https://en.wikipedia.org/wiki/Inetd).
* Is secure against relative path file snooping. * Is secure against [relative path file
snooping](https://cwe.mitre.org/data/definitions/23.html).
* Is secure against directory searches. * Is secure against directory searches.
@@ -147,27 +153,31 @@ kill %1
1940 bytes long by IOCCC 2004 rules, 1940 bytes long by IOCCC 2004 rules,
~6KB compiled & stripped for FreeBSD. ~6KB compiled & stripped for FreeBSD.
* Superior & smaller than micro_httpd from http://www.acme.com/ * Superior & smaller than
[micro_httpd](http://www.acme.com/software/micro_httpd/) from <http://www.acme.com/>.
* And has a really cool tongue-in-cheek animated logo too. * And has a really cool tongue-in-cheek animated logo too.
### Comments ### Comments
* This code is properly indented using the One True Brace style. * This code is properly indented using the [One True Brace
style](https://wiki.c2.com/?OneTrueBraceStyle).
* HTTP/1.0 200 OK == HTTP/1.1 200 OK CRLF Connection: close ? * `HTTP/1.0 200 OK` == `HTTP/1.1 200 OK CRLF Connection: close` ?
* getenv() == putenv() ? * `getenv()` == `putenv()` ?
* Hibachi can serve www.ioccc.org. * `Hibachi` can serve [www.ioccc.org](https://www.ioccc.org).
* Commented spoiler available. * Commented spoiler available.
### Known Issues ### Known Issues
* The "links" text browser does not support RFC 2616 section 7.2.1 * The [links][1] text browser does not support RFC 2616 section 7.2.1
paragraph 3 sentence 2, and so fails to display responses from paragraph 3 sentence 2, and so fails to display responses from
hibachi. `hibachi`.
[1]: https://en.wikipedia.org/wiki/Links_(web_browser)
### Suggested IOCCC Categories ### Suggested IOCCC Categories
+1 -1
View File
@@ -17,7 +17,7 @@ Andrea Marangoni,Andrea_Marangoni,http://www.andreamarangoni.it,null,andrea@andr
Andreas Gustafsson,Andreas_Gustafsson,http://www.araneus.fi/gson/,null,gson@araneus.fi,null,null Andreas Gustafsson,Andreas_Gustafsson,http://www.araneus.fi/gson/,null,gson@araneus.fi,null,null
Andrew T. Shapiro,Andrew_Shapiro,null,null,null,null,null Andrew T. Shapiro,Andrew_Shapiro,null,null,null,null,null
Andy Sloane,Andy_Sloane,null,null,null,US,null Andy Sloane,Andy_Sloane,null,null,null,US,null
Anthony C. Howe,Anthony_C._Howe,http://www.snert.com/,null,achowe@snert.com,Montreal, Quebec Anthony C. Howe,Anthony_C._Howe,http://www.snert.com/,achowe@snert.com,Canada,null
Anton Älgmyr,Anton_Älgmyr,null,null,algmyr@student.chalmers.se,null,@aalgmyr Anton Älgmyr,Anton_Älgmyr,null,null,algmyr@student.chalmers.se,null,@aalgmyr
Arch D. Robison,Arch_D_Robison,null,null,null,null,null Arch D. Robison,Arch_D_Robison,null,null,null,null,null
Arne "Timwi" Heizmann,Arne_"Timwi"_Heizmann,null,null,timwi@gmx.net,Germany,null Arne "Timwi" Heizmann,Arne_"Timwi"_Heizmann,null,null,timwi@gmx.net,Germany,null
Can't render this file because it contains an unexpected character in line 23 and column 6.