Compare commits
2 Commits
deaea2ebdc
...
49030166f3
Author | SHA1 | Date | |
---|---|---|---|
49030166f3 | |||
d0d1660367 |
30
request.c
30
request.c
@@ -1,16 +1,42 @@
|
||||
#include "stdlib.h"
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "url.h"
|
||||
#include "request.h"
|
||||
|
||||
#define MAX_BUFFER_SIZE 50000
|
||||
|
||||
struct Request_s {
|
||||
URL* url;
|
||||
char* req_type;
|
||||
};
|
||||
|
||||
Request* new_Request(char* url_str,char* req_type_str) {
|
||||
Request* new_request(char* url_str,char* req_type_str) {
|
||||
Request* req = malloc(sizeof(struct Request_s));
|
||||
req->url = new_url(url_str);
|
||||
req->req_type = req_type_str;
|
||||
}
|
||||
|
||||
URL* get_url(Request* req) {
|
||||
return req->url;
|
||||
}
|
||||
|
||||
char* make_request(Request* req) {
|
||||
char* request_str = malloc(sizeof(char) * MAX_BUFFER_SIZE);
|
||||
|
||||
strcat(request_str,req->req_type);
|
||||
strcat(request_str," ");
|
||||
strcat(request_str,req->url->filepath);
|
||||
strcat(request_str," HTTP/1.1");
|
||||
strcat(request_str,"\r\n");
|
||||
strcat(request_str,"Host: ");
|
||||
strcat(request_str,req->url->hostname);
|
||||
strcat(request_str,"\r\n\r\n");
|
||||
|
||||
|
||||
|
||||
if (strcmp(req->url->schema,"http") == 0) {
|
||||
|
||||
} else if (strcmp(req->url->schema,"https") == 0) {
|
||||
|
||||
}
|
||||
}
|
||||
|
13
url.c
13
url.c
@@ -7,6 +7,7 @@ struct URL_s {
|
||||
char* hostname;
|
||||
char* port;
|
||||
char* filepath;
|
||||
char* url_str;
|
||||
};
|
||||
|
||||
char* get_schema(URL* url) {
|
||||
@@ -26,11 +27,15 @@ char* get_filepath(URL* url) {
|
||||
}
|
||||
|
||||
|
||||
URL* new_url(char* url_str) {
|
||||
char* url_dup = strdup(url_str);
|
||||
URL* url = malloc(sizeof(struct URL_s));
|
||||
char* url_to_str(URL* url) {
|
||||
return url->url_str;
|
||||
}
|
||||
|
||||
url->schema = strtok(url_dup,":");
|
||||
URL* new_url(char* url_str) {
|
||||
URL* url = malloc(sizeof(struct URL_s));
|
||||
url->url_str = strdup(url_str);
|
||||
|
||||
url->schema = strtok(url->url_str,":");
|
||||
|
||||
url->hostname = strtok(NULL,"/");
|
||||
|
||||
|
Reference in New Issue
Block a user