diff options
| author | Soikk | 2025-12-08 21:00:26 +0100 |
|---|---|---|
| committer | Soikk | 2025-12-08 21:00:26 +0100 |
| commit | 6cab1ce01bc4700e9afc76b38bec04257ea17544 (patch) | |
| tree | 1e0b739d86b126d0496f82a2eeb542a8af6fe638 /src/net | |
| parent | 9667b73250733c997df46f1f7b8f042bab1108ab (diff) | |
| download | soikk-server-6cab1ce01bc4700e9afc76b38bec04257ea17544.tar.xz soikk-server-6cab1ce01bc4700e9afc76b38bec04257ea17544.tar.zst | |
Fixed receive_request and cleaning up in general
Diffstat (limited to 'src/net')
| -rwxr-xr-x | src/net/net.c | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/src/net/net.c b/src/net/net.c index 526d1a7..ce1c815 100755 --- a/src/net/net.c +++ b/src/net/net.c @@ -166,22 +166,22 @@ int accept_connection(http_server *hs, char ip[INET_ADDRSTRLEN]){ int casize = sizeof(caddr); log_info("Waiting..."); if((hs->csocket = accept(hs->ssocket, (struct sockaddr *)&caddr, (socklen_t*)&casize)) == -1){ - log_error("accept_connection() -> accept(): %s", strerror(errno)); + log_error("Couldnt't accept connection: %s", strerror(errno)); return -1; } + inet_ntop(caddr.ss_family, &(((struct sockaddr_in*)&caddr)->sin_addr), ip, INET_ADDRSTRLEN); log_info("accepted"); if(hs->secure){ - int err = SSL_set_fd(hs->ssl, hs->csocket); - if(err != 1){ - log_error("setting fd %d", hs->csocket); + int err = 0; + if((err = SSL_set_fd(hs->ssl, hs->csocket)) != 1){ + log_error("Error setting SSL's fd %d", hs->csocket); return pleasesslgivemetheerror(SSL_get_error(hs->ssl, err)); } if((err = SSL_accept(hs->ssl)) != 1){ - log_error("couldnt accept"); + log_error("SSL couldnt accept"); return pleasesslgivemetheerror(SSL_get_error(hs->ssl, err)); } } - inet_ntop(caddr.ss_family, &(((struct sockaddr_in*)&caddr)->sin_addr), ip, INET_ADDRSTRLEN); return 0; } @@ -207,12 +207,8 @@ int receive_request(http_server *hs, str *request){ }else{ rb = server_read(hs, request); if(rb == 0){ - if(request->len == 0){ - return -1; - } - return 0; - } - if(rb < 0){ + return request->len; + }else if(rb < 0){ return rb; } } @@ -228,7 +224,7 @@ int receive_request(http_server *hs, str *request){ log_error("Socket returned revents '%d'", pfd[0].revents); } } - return 0; + return request->len; } str generate_resource(url resource, str rurl){ |
