about summary refs log tree commit diff
path: root/smalldog/README.md
diff options
context:
space:
mode:
authorgennyble <gen@nyble.dev>2025-04-04 01:45:07 -0500
committergennyble <gen@nyble.dev>2025-04-04 01:45:07 -0500
commit4410950c761970d640af00f245fdba859f8795b0 (patch)
treeae2ced50c1ea96f01eed51e1ee0394473475da81 /smalldog/README.md
parent31d650e75acfd447cf6c58d29ca4d6ad1010a65c (diff)
downloadcorgi-4410950c761970d640af00f245fdba859f8795b0.tar.gz
corgi-4410950c761970d640af00f245fdba859f8795b0.zip
rip out module system
Diffstat (limited to 'smalldog/README.md')
-rw-r--r--smalldog/README.md43
1 files changed, 0 insertions, 43 deletions
diff --git a/smalldog/README.md b/smalldog/README.md
deleted file mode 100644
index 2505f5f..0000000
--- a/smalldog/README.md
+++ /dev/null
@@ -1,43 +0,0 @@
-smalldog
-
-a crate for safely working with corgi's cgi module system.
-
-module's are loaded in a new thread at the time of request.
-
-if you want to build a module in C, these structs will be of use:
-```c
-// In Rust this is interpreted as a fixed size, 2-element array of char*
-// but i cannot get C to like that kind of at all. sorry.
-struct pair {
-	char *name;
-	char *value;
-};
-
-// The request from corgi. body may be null if one was not sent.
-struct request {
-	u64_t headers_len;
-	struct pair *headers;
-	u64_t body_len;
-	u8_t *body;
-};
-
-// The request your module should return to corgi
-struct response {
-	u16_t status;
-	u64_t headers_len;
-	struct pair *headers;
-	u64_t body_len;
-	u8_t *body;
-};
-```
-
-as well as that, there are two functions that corgi expects to exist and will call.
-
-`struct response *cgi_handle(struct request*);`  
-this function is called after the module is loaded. here you should process the
-request and send back a response. be sure to keep track of any allocations so
-you can clean them up later.
-
-`void cgi_cleanup(struct response*);`  
-this is where you clean up, later. function is called after corgi copies all
-required data to an internal structure. free memory here.
\ No newline at end of file