Added HTTP request types

This commit is contained in:
Pin
2022-02-21 15:03:26 -05:00
parent 44a6447047
commit 2f73f776f6
6 changed files with 155 additions and 32 deletions

View File

@@ -18,20 +18,37 @@ int returnRequest(int socket, char *message, int status, SSL *ssl) {
}
int return200Request(int socket, unsigned char *content, SSL *ssl) {
char *message = "";//= "HTTP/1.1 200 OK\nContent-Length: 6\nConnection: close\n\nhello\n";
char *message = "";
message = calloc(strlen((char *)content) + 128, sizeof(unsigned char));
sprintf(message, "HTTP/1.1 200 OK\nContent-Length: %zu\nConnection: close\n\n%s\n",
strlen((char *)content), content);
return returnRequest(socket, message, 200, ssl);
}
int return201Request(int socket, unsigned char *content, SSL *ssl) {
char *message = "";
message = calloc(strlen((char *)content) + 128, sizeof(unsigned char));
sprintf(message, "HTTP/1.1 201 Created\nContent-Length: %zu\nConnection: close\n\n%s\n",
strlen((char *)content), content);
return returnRequest(socket, message, 201, ssl);
}
int return404Request(int socket, SSL *ssl) {
char *message = "HTTP/1.1 404 Not Found\nContent-Length: 12\nConnection: close\n\n404 Request\n";
return returnRequest(socket, message, 404, ssl);
}
int return400Request(int socket, SSL *ssl) {
char *message = "HTTP/1.1 400 HTTP Request Not Valid\n Content-Length: 0\nConnection: close\n\n";
char *message = "HTTP/1.1 400 HTTP Request Not Valid\nContent-Length: 0\nConnection: close\n\n";
return returnRequest(socket, message, 400, ssl);
}
int return500Request(int socket, SSL *ssl) {
char *message = "HTTP/1.1 500 Internal Server Error\nContent-Length: 0\nConnection: close\n\n";
return returnRequest(socket, message, 500, ssl);
}
int return501Request(int socket, SSL *ssl) {
char *message = "HTTP/1.1 501 Not Implemented\nContent-Length: 0\nConnection: close\n\n";
return returnRequest(socket, message, 501, ssl);
}

13
src/utils.c Normal file
View File

@@ -0,0 +1,13 @@
#include <stdio.h>
#include <time.h>
int PrintLog(unsigned char *message) {
time_t UTCTime;
// Setting time in EPOC
time(&UTCTime);
struct tm *now = localtime(&UTCTime);
printf("[Log] %02d/%02d/%d %02d:%02d:%02d - %s\n", (now->tm_mon + 1), now->tm_mday,
(now->tm_year + 1900), now->tm_hour, now->tm_min, now->tm_sec, message);
return 0;
}