· Quick Download
· README file
· Report bugs, etc.
Main » About
Welcome to the home page of the Shark CGI Function project.
The Shark CGI Function is a one line function for (more easily) programming CGI:s in C.
It extracts variables and contents from GET, POST & multipart/form-data forms, as well as
cookies, and makes them accessible as environment variables.
Both C and assembly source!
The previous assembler code (which only work on x86 Linux) has now been ported to C and
can be downloaded from SourceForge. The C source is portable and have been tested under
Linux, FreeBSD and SunOS 5.8 (Solaris).
The function was designed to give the CGI coder the power and
flexibility needed in today's rotten, broke and mutilated dot-com-world.
Because ASP, PHP, JSP and Perl consume extremely much resources, I have chosen to
make CGI:s in the assembly language. Assembler is the choice for
non-consumptive applications design, and is thus the no.1 choice for
webservers with alot of incoming requests. Though not many write code in assembler these
days, it's tough and takes time...
Where does C come in?
Well, C is basically the second best design after assembler. But as all
disadvantages come with an advantage, C is much easier to handle than
assembler and C programs compile and run under any processor architecture.
The Shark CGI Function is coded in both C and assembler, though the current assembler
source is running obsolete.
What do I need?
All you need is a UNIX system with gcc (the GNU C Compiler (or the "GNU Compiler
Collection")). If you choose the assembler source you'll need an x86 machine (Intel or AMD)
running Linux and the Netwide Assembler - http://nasm.sourceforge.net/.
Read the README file for more detailed information.
Which webserver does it run on?
It runs on Apache and should work on most other webservers conforming to the
Can I make proprietary software that use the Shark CGI Function?
Yes you can, the Shark CGI Function is licensed under the GNU Lesser General Public License
which allows you to use the function with no obligation unless you copy,
modify or redistribute the source.
Good Luck and happy coding!