give headers to handler

This commit is contained in:
overflowerror 2021-06-10 22:47:30 +02:00
parent d89225b614
commit 759cc79b40
3 changed files with 6 additions and 6 deletions

View file

@ -22,7 +22,8 @@ static void handler(struct request request, struct response _response) {
queryString: request.metaData.queryString, queryString: request.metaData.queryString,
peerAddr: request.peer.addr, peerAddr: request.peer.addr,
peerPort: request.peer.port, peerPort: request.peer.port,
auth: getAuthData(request.headers) auth: getAuthData(request.headers),
headers: *request.headers
}; };
response_t response = routerHandler(ctx); response_t response = routerHandler(ctx);

View file

@ -102,8 +102,6 @@ int main(int argc, char** argv) {
fprintf(stderr, "%s: %s\n", argv[0], strerror(errno)); fprintf(stderr, "%s: %s\n", argv[0], strerror(errno));
exit(1); exit(1);
} }
// TODO use request headers
ctx_t ctx = { ctx_t ctx = {
method: getMethod(or(getenv("REQUEST_METHOD"), "GET")), method: getMethod(or(getenv("REQUEST_METHOD"), "GET")),
@ -111,16 +109,16 @@ int main(int argc, char** argv) {
queryString: or(getenv("QUERY_STRING"), ""), queryString: or(getenv("QUERY_STRING"), ""),
peerAddr: or(getenv("REMOTE_ADDR"), ""), peerAddr: or(getenv("REMOTE_ADDR"), ""),
peerPort: 0, // TODO peerPort: 0, // TODO
auth: getAuthData(request.headers) auth: getAuthData(request.headers),
headers: headers
}; };
headers_free(&headers);
response_t response = routerHandler(ctx); response_t response = routerHandler(ctx);
if (response.output == NULL) { if (response.output == NULL) {
response = errorResponse(500, "route did not provide a reponse handler"); response = errorResponse(500, "route did not provide a reponse handler");
} }
headers_free(&headers);
freeAuthData(ctx.auth); freeAuthData(ctx.auth);
printf("Status: %d\n\r", response.status); printf("Status: %d\n\r", response.status);

View file

@ -18,6 +18,7 @@ typedef struct {
const char* peerAddr; const char* peerAddr;
int peerPort; int peerPort;
struct auth auth; struct auth auth;
struct headers headers;
} ctx_t; } ctx_t;
typedef struct { typedef struct {