small fixes
This commit is contained in:
10
cmd/server.c
10
cmd/server.c
@@ -39,6 +39,7 @@ int parseHTTPRequest(unsigned char *buffer, struct HTTPRequest *r) {
|
|||||||
int contentCheck = 0;
|
int contentCheck = 0;
|
||||||
unsigned char *checkLine = calloc(1000, sizeof(unsigned char));
|
unsigned char *checkLine = calloc(1000, sizeof(unsigned char));
|
||||||
unsigned char *logLine = malloc(sizeof(unsigned char));
|
unsigned char *logLine = malloc(sizeof(unsigned char));
|
||||||
|
char * varCheck;
|
||||||
|
|
||||||
// Creating empty requestBody
|
// Creating empty requestBody
|
||||||
r->requestBody = calloc(8, sizeof(char));
|
r->requestBody = calloc(8, sizeof(char));
|
||||||
@@ -61,8 +62,11 @@ int parseHTTPRequest(unsigned char *buffer, struct HTTPRequest *r) {
|
|||||||
strcpy(r->requestType, token);
|
strcpy(r->requestType, token);
|
||||||
// Grabbing HTTP Request Dir
|
// Grabbing HTTP Request Dir
|
||||||
token = strtok(NULL, " ");
|
token = strtok(NULL, " ");
|
||||||
r->requestDir = malloc(strlen(token));
|
varCheck = strchr(token, '?');
|
||||||
strcpy(r->requestDir, token);
|
if (varCheck != NULL) {
|
||||||
|
*varCheck = ' ';
|
||||||
|
}
|
||||||
|
sscanf(token, "%ms %ms", &r->requestDir, &r->requestVars);
|
||||||
// Grabbing HTTP Request Version
|
// Grabbing HTTP Request Version
|
||||||
token = strtok(NULL, "");
|
token = strtok(NULL, "");
|
||||||
token[strlen(token) - 1] = '\0'; // Fixing version end char
|
token[strlen(token) - 1] = '\0'; // Fixing version end char
|
||||||
@@ -233,7 +237,7 @@ int handleRequest(unsigned char buffer[], int socket, SSL *ssl) {
|
|||||||
if (checkerr != 0) { // Checking for HTTP parsing error
|
if (checkerr != 0) { // Checking for HTTP parsing error
|
||||||
if (checkerr == -1) {
|
if (checkerr == -1) {
|
||||||
printDebug("Error reading request, returning empty 500");
|
printDebug("Error reading request, returning empty 500");
|
||||||
return500Request(socket, ssl);
|
return return500Request(socket, ssl);
|
||||||
} else {
|
} else {
|
||||||
printDebug("Error parsing, returning 501");
|
printDebug("Error parsing, returning 501");
|
||||||
return return501Request(socket, ssl);
|
return return501Request(socket, ssl);
|
||||||
|
|||||||
@@ -7,5 +7,6 @@ struct HTTPRequest {
|
|||||||
char *requestVersion;
|
char *requestVersion;
|
||||||
char *requestHost;
|
char *requestHost;
|
||||||
char *requestDir;
|
char *requestDir;
|
||||||
|
char *requestVars;
|
||||||
unsigned char *requestBody;
|
unsigned char *requestBody;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -23,7 +23,6 @@ int checkHTTPVersion(char *version) {
|
|||||||
int supported = -1; // Default fail state
|
int supported = -1; // Default fail state
|
||||||
char testVer[16];
|
char testVer[16];
|
||||||
strcpy(testVer, version);
|
strcpy(testVer, version);
|
||||||
//testVer[strlen(version) - 1] = '\0'; // Removing
|
|
||||||
for (int i = 0; i < NUM_SUPPORTED_VERSIONS; i++) {
|
for (int i = 0; i < NUM_SUPPORTED_VERSIONS; i++) {
|
||||||
if (!strcmp(testVer, supportedHTTPVersions[i])) {
|
if (!strcmp(testVer, supportedHTTPVersions[i])) {
|
||||||
supported = 0;
|
supported = 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user