summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorstderr64 <stderr64@null.net>2024-05-15 22:09:40 +0300
committerstderr64 <stderr64@null.net>2024-05-15 22:09:40 +0300
commitbcb07c7207b1194cf032ed8f0f841b3c3e57367b (patch)
tree5b06fa8a28af0311e32a9f5fd98eafeaebf8e0b1
parent2d22f149180ba28186cf142ec30dc91c841d0328 (diff)
downloadCWebHook-master.tar.gz
CWebHook-master.tar.zst
Change long long int to int64_t and ssize_tHEADmaster
Because long long int is bad idea, using int64_t and ssize_t it can at least be expected that the max and minimum values are for each
-rw-r--r--Makefile4
-rw-r--r--https_response.h14
-rw-r--r--https_server.h6
-rw-r--r--https_server_structs.h4
-rw-r--r--load_config.h24
-rw-r--r--load_webhooks.h4
-rw-r--r--log.h2
-rw-r--r--socket_init.h2
8 files changed, 30 insertions, 30 deletions
diff --git a/Makefile b/Makefile
index 109c9b3..6287880 100644
--- a/Makefile
+++ b/Makefile
@@ -6,7 +6,7 @@ MAX_HEADER_LENGTH=32767
MAX_CONTENT_LENGTH=524288
rel:
- $(CC) -DMAX_PEEK_BYTES=${MAX_PEEK_BYTES} -DMAX_RECV_BYTES=${MAX_RECV_BYTES} -DMAX_HEADER_LENGTH=${MAX_HEADER_LENGTH} -DMAX_CONTENT_LENGTH=${MAX_CONTENT_LENGTH} -DMAX_WEBHOOK_OUTPUT_LENGTH=${MAX_WEBHOOK_OUTPUT_LENGTH} -Wall -pedantic-errors -Werror cwebhook.c -o cwebhook -lssl -lcrypto -lcjson
+ $(CC) -DMAX_PEEK_BYTES=${MAX_PEEK_BYTES} -DMAX_RECV_BYTES=${MAX_RECV_BYTES} -DMAX_HEADER_LENGTH=${MAX_HEADER_LENGTH} -DMAX_CONTENT_LENGTH=${MAX_CONTENT_LENGTH} -DMAX_WEBHOOK_OUTPUT_LENGTH=${MAX_WEBHOOK_OUTPUT_LENGTH} -fPIE -Wall -pedantic-errors -Werror cwebhook.c -o cwebhook -lssl -lcrypto -lcjson
debug:
- $(CC) -DMAX_PEEK_BYTES=${MAX_PEEK_BYTES} -DMAX_RECV_BYTES=${MAX_RECV_BYTES} -DMAX_HEADER_LENGTH=${MAX_HEADER_LENGTH} -DMAX_CONTENT_LENGTH=${MAX_CONTENT_LENGTH} -DMAX_WEBHOOK_OUTPUT_LENGTH=${MAX_WEBHOOK_OUTPUT_LENGTH} -Wall -pedantic-errors -Werror -ggdb cwebhook.c -o cwebhook -lssl -lcrypto -lcjson
+ $(CC) -DMAX_PEEK_BYTES=${MAX_PEEK_BYTES} -DMAX_RECV_BYTES=${MAX_RECV_BYTES} -DMAX_HEADER_LENGTH=${MAX_HEADER_LENGTH} -DMAX_CONTENT_LENGTH=${MAX_CONTENT_LENGTH} -DMAX_WEBHOOK_OUTPUT_LENGTH=${MAX_WEBHOOK_OUTPUT_LENGTH} -fPIE -Wall -pedantic-errors -Werror -ggdb cwebhook.c -o cwebhook -lssl -lcrypto -lcjson
diff --git a/https_response.h b/https_response.h
index 58be84b..ce17197 100644
--- a/https_response.h
+++ b/https_response.h
@@ -19,28 +19,28 @@ int send_response( server_socket_t *sdata, server_config_t *scf, webhooks_data_t
clear_request_copy( hdata );
clear_request_data( hdata );
log_write( scf, lfd, "Error: failed to read headers" );
- if ( (long long int)SSL_write(sdata->tls_session, HTTP_ERROR_HEADERS, (size_t)strlen(HTTP_ERROR_HEADERS)) <= 0 )
+ if ( (int64_t)SSL_write(sdata->tls_session, HTTP_ERROR_HEADERS, (size_t)strlen(HTTP_ERROR_HEADERS)) <= 0 )
return RES_FAILED;
return RES_SUCCESS;
}
if ( strcmp((const char*)hdata->request_method, "GET") != 0 && strcmp((const char*)hdata->request_method, "POST") != 0 ){
clear_request_copy( hdata );
clear_request_data( hdata );
- if ( (long long int)SSL_write(sdata->tls_session, HTTP_DISALLOWED_METHOD, (size_t)strlen(HTTP_DISALLOWED_METHOD)) <= 0 )
+ if ( (int64_t)SSL_write(sdata->tls_session, HTTP_DISALLOWED_METHOD, (size_t)strlen(HTTP_DISALLOWED_METHOD)) <= 0 )
return RES_FAILED;
return RES_SUCCESS;
}
if ( hdata->request_body == NULL || (uint64_t)strlen(hdata->request_body) <= 0 ){
clear_request_copy( hdata );
clear_request_data( hdata );
- if ( (long long int)SSL_write(sdata->tls_session, HTTP_UNAUTHORIZED, (size_t)strlen(HTTP_UNAUTHORIZED)) <= 0 )
+ if ( (int64_t)SSL_write(sdata->tls_session, HTTP_UNAUTHORIZED, (size_t)strlen(HTTP_UNAUTHORIZED)) <= 0 )
return RES_FAILED;
return RES_UNAUTHORIZED;
}
if ( check_password(hdata->request_body, scf->server_password->valuestring) != AUTH_SUCCESS ){
clear_request_copy( hdata );
clear_request_data( hdata );
- if ( (long long int)SSL_write(sdata->tls_session, HTTP_UNAUTHORIZED, (size_t)strlen(HTTP_UNAUTHORIZED)) <= 0 )
+ if ( (int64_t)SSL_write(sdata->tls_session, HTTP_UNAUTHORIZED, (size_t)strlen(HTTP_UNAUTHORIZED)) <= 0 )
return RES_FAILED;
return RES_UNAUTHORIZED;
}
@@ -51,7 +51,7 @@ int send_response( server_socket_t *sdata, server_config_t *scf, webhooks_data_t
r_size = 0;
free_wh_output( wdt );
wh_exec_res = NULL;
- if ( (long long int)SSL_write(sdata->tls_session, HTTP_MEM_ALLOC_ERROR, (size_t)strlen(HTTP_MEM_ALLOC_ERROR)) <= 0 )
+ if ( (int64_t)SSL_write(sdata->tls_session, HTTP_MEM_ALLOC_ERROR, (size_t)strlen(HTTP_MEM_ALLOC_ERROR)) <= 0 )
return RES_FAILED;
return RES_SUCCESS;
}
@@ -60,11 +60,11 @@ int send_response( server_socket_t *sdata, server_config_t *scf, webhooks_data_t
r_size = 0;
free_wh_output( wdt );
wh_exec_res = NULL;
- if ( (long long int)SSL_write(sdata->tls_session, HTTP_MEM_WRITE_ERROR, (size_t)strlen(HTTP_MEM_WRITE_ERROR)) <= 0 )
+ if ( (int64_t)SSL_write(sdata->tls_session, HTTP_MEM_WRITE_ERROR, (size_t)strlen(HTTP_MEM_WRITE_ERROR)) <= 0 )
return RES_FAILED;
return RES_SUCCESS;
}
- if ( (long long int)SSL_write(sdata->tls_session, sdata->send_buffer, r_size) <= 0 ){
+ if ( (int64_t)SSL_write(sdata->tls_session, sdata->send_buffer, r_size) <= 0 ){
free( sdata->send_buffer );
free_wh_output( wdt );
wh_exec_res = NULL;
diff --git a/https_server.h b/https_server.h
index 80fb77a..d7ec5e1 100644
--- a/https_server.h
+++ b/https_server.h
@@ -65,7 +65,7 @@ void https_server_event_loop( server_socket_t *sv, client_info_t *cl, server_con
log_write( svcfg, logf, "Error: failed to allocate memory for reading amount of incoming data" );
continue;
}
- sv->recv_pending_bytes = (long long int)SSL_peek( sv->tls_session, sv->recv_peek, (long long int)MAX_PEEK_BYTES );
+ sv->recv_pending_bytes = (int64_t)SSL_peek( sv->tls_session, sv->recv_peek, (int64_t)MAX_PEEK_BYTES );
if ( sv->recv_pending_bytes <= 0 || SSL_get_error(sv->tls_session, sv->recv_pending_bytes) != SSL_ERROR_NONE ){
free( sv->recv_peek );
sv->recv_peek = NULL;
@@ -80,7 +80,7 @@ void https_server_event_loop( server_socket_t *sv, client_info_t *cl, server_con
}
free( sv->recv_peek );
sv->recv_peek = NULL;
- if ( sv->recv_pending_bytes > (long long int)MAX_RECV_BYTES ){
+ if ( sv->recv_pending_bytes > (int64_t)MAX_RECV_BYTES ){
SSL_shutdown( sv->tls_session );
shutdown( sv->client_socket_fd, SHUT_RDWR );
close( sv->client_socket_fd );
@@ -98,7 +98,7 @@ void https_server_event_loop( server_socket_t *sv, client_info_t *cl, server_con
log_write( svcfg, logf, "Error: failed to allocate memory for received bytes" );
continue;
}
- sv->recv_read_bytes = (long long int)SSL_read( sv->tls_session, sv->recv_data, sv->recv_pending_bytes );
+ sv->recv_read_bytes = (int64_t)SSL_read( sv->tls_session, sv->recv_data, sv->recv_pending_bytes );
if ( sv->recv_read_bytes > 0 && SSL_get_error(sv->tls_session, sv->recv_read_bytes) == SSL_ERROR_NONE ){
int res_status = send_response( sv, svcfg, wdata, http_req_data, logf );
if ( res_status == RES_SUCCESS ){
diff --git a/https_server_structs.h b/https_server_structs.h
index 09b7074..e00db97 100644
--- a/https_server_structs.h
+++ b/https_server_structs.h
@@ -6,8 +6,8 @@ typedef struct server_socket{
struct pollfd pstruct[1];
SSL *tls_session;
SSL_CTX *tls_context;
- long long int recv_pending_bytes;
- long long int recv_read_bytes;
+ int64_t recv_pending_bytes;
+ int64_t recv_read_bytes;
char *recv_peek;
char *recv_data;
char *send_buffer;
diff --git a/load_config.h b/load_config.h
index 165c676..65f5e7f 100644
--- a/load_config.h
+++ b/load_config.h
@@ -4,41 +4,41 @@
#define CONFIG_PARSE_SUCCESS 0
#define CONFIG_PARSE_FAILED -1
-int parse_config( server_config_t *svconfig, long long int cfg_len ){
+int parse_config( server_config_t *svconfig, ssize_t cfg_len ){
if ( svconfig->config_contents == NULL || cfg_len <= 0 )
return CONFIG_PARSE_FAILED;
svconfig->config_parsed = cJSON_ParseWithLength( svconfig->config_contents, (size_t)cfg_len );
if ( svconfig->config_parsed == NULL )
return CONFIG_PARSE_FAILED;
svconfig->log_enabled = cJSON_GetObjectItemCaseSensitive( svconfig->config_parsed, "log_enabled" );
- if ( svconfig->log_enabled == NULL || (long long int)strlen(svconfig->log_enabled->valuestring) <= 0 )
+ if ( svconfig->log_enabled == NULL || (int64_t)strlen(svconfig->log_enabled->valuestring) <= 0 )
return CONFIG_PARSE_FAILED;
svconfig->log_file = cJSON_GetObjectItemCaseSensitive( svconfig->config_parsed, "log_file" );
- if ( svconfig->log_file == NULL || (long long int)strlen(svconfig->log_file->valuestring) <= 0 )
+ if ( svconfig->log_file == NULL || (int64_t)strlen(svconfig->log_file->valuestring) <= 0 )
return CONFIG_PARSE_FAILED;
svconfig->bind_address = cJSON_GetObjectItemCaseSensitive( svconfig->config_parsed, "bind_address" );
- if ( svconfig->bind_address == NULL || (long long int)strlen(svconfig->bind_address->valuestring) <= 0 )
+ if ( svconfig->bind_address == NULL || (int64_t)strlen(svconfig->bind_address->valuestring) <= 0 )
return CONFIG_PARSE_FAILED;
svconfig->bind_port = cJSON_GetObjectItemCaseSensitive( svconfig->config_parsed, "bind_port" );
- if ( svconfig->bind_port == NULL || (long long int)strlen(svconfig->bind_port->valuestring) <= 0 )
+ if ( svconfig->bind_port == NULL || (int64_t)strlen(svconfig->bind_port->valuestring) <= 0 )
return CONFIG_PARSE_FAILED;
svconfig->server_password = cJSON_GetObjectItemCaseSensitive( svconfig->config_parsed, "server_password" );
- if ( svconfig->server_password == NULL || (long long int)strlen(svconfig->server_password->valuestring) <= 0 )
+ if ( svconfig->server_password == NULL || (int64_t)strlen(svconfig->server_password->valuestring) <= 0 )
return CONFIG_PARSE_FAILED;
svconfig->cert_file = cJSON_GetObjectItemCaseSensitive( svconfig->config_parsed, "cert_file" );
- if ( svconfig->cert_file == NULL || (long long int)strlen(svconfig->cert_file->valuestring) <= 0 )
+ if ( svconfig->cert_file == NULL || (int64_t)strlen(svconfig->cert_file->valuestring) <= 0 )
return CONFIG_PARSE_FAILED;
svconfig->cert_key_file = cJSON_GetObjectItemCaseSensitive( svconfig->config_parsed, "cert_key_file" );
- if ( svconfig->cert_key_file == NULL || (long long int)strlen(svconfig->cert_key_file->valuestring) <= 0 )
+ if ( svconfig->cert_key_file == NULL || (int64_t)strlen(svconfig->cert_key_file->valuestring) <= 0 )
return CONFIG_PARSE_FAILED;
svconfig->webhooks_file = cJSON_GetObjectItemCaseSensitive( svconfig->config_parsed, "webhooks_file" );
- if ( svconfig->webhooks_file == NULL || (long long int)strlen(svconfig->webhooks_file->valuestring) <= 0 )
+ if ( svconfig->webhooks_file == NULL || (int64_t)strlen(svconfig->webhooks_file->valuestring) <= 0 )
return CONFIG_PARSE_FAILED;
return CONFIG_PARSE_SUCCESS;
}
int load_config( char *config_file_name, server_config_t *sv_config ){
- if ( config_file_name == NULL || (long long int)strlen(config_file_name) <= 0 || strcmp((const char*)config_file_name, "") == 0 )
+ if ( config_file_name == NULL || (int64_t)strlen(config_file_name) <= 0 || strcmp((const char*)config_file_name, "") == 0 )
return CONFIG_LOAD_FAILED;
FILE *cfg_file = fopen( config_file_name, "r" );
if ( cfg_file == NULL )
@@ -47,7 +47,7 @@ int load_config( char *config_file_name, server_config_t *sv_config ){
fclose( cfg_file );
return CONFIG_LOAD_FAILED;
}
- long long int cfg_file_size = (long long int)ftell( cfg_file );
+ ssize_t cfg_file_size = (ssize_t)ftell( cfg_file );
if ( cfg_file_size <= 0 ){
rewind( cfg_file );
fclose( cfg_file );
@@ -60,7 +60,7 @@ int load_config( char *config_file_name, server_config_t *sv_config ){
cfg_file_size = 0;
return CONFIG_LOAD_FAILED;
}
- if ( (long long int)fread(sv_config->config_contents, sizeof(char), (size_t)(cfg_file_size * sizeof(char)), cfg_file) == (long long int)-1 ){
+ if ( (int64_t)fread(sv_config->config_contents, sizeof(char), (size_t)(cfg_file_size * sizeof(char)), cfg_file) == (int64_t)-1 ){
free( sv_config->config_contents );
sv_config->config_contents = NULL;
fclose( cfg_file );
diff --git a/load_webhooks.h b/load_webhooks.h
index 5c3a60b..816e9ba 100644
--- a/load_webhooks.h
+++ b/load_webhooks.h
@@ -25,7 +25,7 @@ int load_webhooks( char *wh_file_name, webhooks_data_t *wdt ){
fclose( whconf );
return WH_LOAD_FAILED;
}
- long long int wh_file_size = (long long int)ftell( whconf );
+ int64_t wh_file_size = (int64_t)ftell( whconf );
if ( wh_file_size <= 0 ){
wh_file_size = 0;
fclose( whconf );
@@ -38,7 +38,7 @@ int load_webhooks( char *wh_file_name, webhooks_data_t *wdt ){
fclose( whconf );
return WH_LOAD_FAILED;
}
- if ( (long long int)fread(wdt->webhooks_config, sizeof(char), (size_t)(wh_file_size * sizeof(char)), whconf) == (long long int)-1 ){
+ if ( (int64_t)fread(wdt->webhooks_config, sizeof(char), (size_t)(wh_file_size * sizeof(char)), whconf) == (int64_t)-1 ){
wh_file_size = 0;
free( wdt->webhooks_config );
fclose( whconf );
diff --git a/log.h b/log.h
index 6fd3235..8c5e94c 100644
--- a/log.h
+++ b/log.h
@@ -4,7 +4,7 @@
int log_init( server_config_t *sc, log_file_t *lf ){
if ( strcmp((const char*)sc->log_enabled->valuestring, "no") == 0 )
return LOG_INIT_SUCCESS;
- if ( sc->log_file == NULL || (long long int)strlen(sc->log_file->valuestring) <= 0 )
+ if ( sc->log_file == NULL || (int64_t)strlen(sc->log_file->valuestring) <= 0 )
return LOG_INIT_FAILED;
lf->log_file = fopen( sc->log_file->valuestring, "a" );
if ( lf->log_file == NULL )
diff --git a/socket_init.h b/socket_init.h
index ceddb9c..ab223dc 100644
--- a/socket_init.h
+++ b/socket_init.h
@@ -4,7 +4,7 @@
int init_socket( server_socket_t *sckdata, server_config_t *scfg ){
if ( (uint16_t)atoi(scfg->bind_port->valuestring) == 0 )
return SOCKET_INIT_FAILED;
- if ( scfg->bind_address == NULL || (long long int)strlen(scfg->bind_address->valuestring) <= 0 || strcmp((const char*)scfg->bind_address->valuestring, "") == 0 )
+ if ( scfg->bind_address == NULL || (int64_t)strlen(scfg->bind_address->valuestring) <= 0 || strcmp((const char*)scfg->bind_address->valuestring, "") == 0 )
return SOCKET_INIT_FAILED;
sckdata->socket_fd = socket( AF_INET, SOCK_STREAM, IPPROTO_TCP );
if ( sckdata->socket_fd == -1 )