Rev 43 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed
/* $Id: tw_http.h 140 2024-09-23 11:31:18Z nishi $ */
#ifndef __TW_HTTP_H__
#define __TW_HTTP_H__
#ifdef __cplusplus
extern "C" {
#endif
#include <stdbool.h>
#include "../config.h"
struct tw_http_request {
char* method;
char* path;
char* query;
char* version;
char** headers;
char* body;
};
struct tw_http_response {
char** headers;
int status;
bool _processed; /* Internal parameter */
};
#ifdef SOURCE
#ifndef NO_SSL
#include <openssl/ssl.h>
#endif
void tw_free_request(struct tw_http_request* req);
#ifndef NO_SSL
int tw_http_parse(SSL* ssl, int sock, struct tw_http_request* req);
#else
int tw_http_parse(void* ssl, int sock, struct tw_http_request* req);
#endif
#endif
#ifdef __cplusplus
}
#endif
#endif