add TODO and kinda not-really fix memory issues

master
Drake 2 years ago
parent 109469d4b6
commit b74d15ead8

@ -0,0 +1,6 @@
- url unescaping (uriparser? libcurl?)
- parse request headers (ie Authentication)
- threading or async
- optional allowlist of available paths (throw something else on unavailable ones)
- denylist of known-bad url strings
- fix memory issues or use a GC (bdwgc probably)

Binary file not shown.

@ -27,5 +27,6 @@ char* readFile(char* path) {
buf[length] = '\0';
char* tmp = buf;
free(buf);
return tmp;
}

@ -14,6 +14,7 @@ void info(char* ustr, ...) {
va_list lst;
va_start(lst, ustr);
vprintf(str, lst);
free(str);
}
void warn(char* ustr, ...) {
@ -24,6 +25,7 @@ void warn(char* ustr, ...) {
va_list lst;
va_start(lst, ustr);
vprintf(str, lst);
free(str);
}
void error(char* ustr, ...) {
@ -34,6 +36,7 @@ void error(char* ustr, ...) {
va_list lst;
va_start(lst, ustr);
vprintf(str, lst);
free(str);
}
void reqlog(char* ustr, ...) {
@ -44,4 +47,5 @@ void reqlog(char* ustr, ...) {
va_list lst;
va_start(lst, ustr);
vprintf(str, lst);
free(str);
}

@ -14,7 +14,6 @@
#include "log.h"
int srv(char* ADDR, int PORT) {
char buffer[BUFSIZ];
int srvSocket;
struct sockaddr_in srvAddr;
@ -98,6 +97,7 @@ funy: {
sprintf(resHeader, "%s%s", (char*)tmpHeader, file);
send(client, resHeader, strlen(resHeader), 0);
close(client);
free(resHeader);
}
}
}

Loading…
Cancel
Save