added uri + fixes

This commit is contained in:
overflowerror 2019-03-07 17:36:43 +01:00
parent c5376732ea
commit 20d6ff66c1
3 changed files with 19 additions and 7 deletions

View file

@ -196,8 +196,8 @@ int headers_metadata(struct metaData* metaData, char* header) {
method = DELETE;
else if (strcmp(_method, "CONNECT") == 0)
method = CONNECT;
else if (strcmp(_method, "OPTION") == 0)
method = OPTION;
else if (strcmp(_method, "OPTIONS") == 0)
method = OPTIONS;
else if (strcmp(_method, "TRACE") == 0)
method = TRACE;
else if (strcmp(_method, "PATCH") == 0)
@ -224,11 +224,22 @@ int headers_metadata(struct metaData* metaData, char* header) {
return HEADERS_ALLOC_ERROR;
}
strcpy(queryString, _queryString);
char* uri = malloc(strlen(_path) + 1 + strlen(_queryString) + 1);
if (uri == NULL) {
free(path);
free(queryString);
return HEADERS_ALLOC_ERROR;
}
strcpy(uri, path);
strcat(uri, "?");
strcat(uri, queryString);
metaData->method = method;
metaData->httpVersion = httpVersion;
metaData->path = path;
metaData->queryString = queryString;
metaData->uri = uri;
return HEADERS_SUCCESS;
}
@ -241,21 +252,19 @@ const char* methodString(struct metaData metaData) {
return "HEAD";
case POST:
return "POST";
case POST:
return "POST";
case PUT:
return "PUT";
case DELETE:
return "DELETE";
case CONNECT:
return "CONNECT";
case OPTION:
return "OPTION";
case OPTIONS:
return "OPTIONS";
case TRACE:
return "TRACE";
case PATCH:
return "PATCH";
default:
return NULL
return NULL;
}
}

View file

@ -20,6 +20,7 @@ struct metaData {
enum httpVersion httpVersion;
char* path;
char* queryString;
char* uri;
};
/*

View file

@ -95,6 +95,8 @@ void cleanup() {
free(connection->metaData.path);
if (connection->metaData.queryString != NULL)
free(connection->metaData.queryString);
if (connection->metaData.uri != NULL)
free(connection->metaData.uri);
if (connection->currentHeader != NULL)
free(connection->currentHeader);