@@ -117,8 +117,8 @@ static void read_cb(struct ev_loop __attribute__((unused)) *loop,
117117 dns_server_tcp_t * d = client -> d ;
118118
119119 // Receive data
120- char buf [UINT16_MAX ]; // stack buffer for largest DNS request
121- ssize_t len = recv (w -> fd , buf , UINT16_MAX , 0 );
120+ char buf [DNS_REQUEST_BUFFER_SIZE ]; // if there would be more data, callback will be called again
121+ ssize_t len = recv (w -> fd , buf , DNS_REQUEST_BUFFER_SIZE , 0 );
122122 if (len <= 0 ) {
123123 if (len == 0 || errno == ECONNRESET ) {
124124 DLOG_CLIENT ("Connection closed" );
@@ -239,7 +239,7 @@ static int get_tcp_listen_sock(struct addrinfo *listen_addrinfo) {
239239 ELOG ("Reuse address failed: %s (%d)" , strerror (errno ), errno );
240240 }
241241
242- uint16_t port ;
242+ uint16_t port = 0 ;
243243 char ipstr [INET6_ADDRSTRLEN ];
244244 if (listen_addrinfo -> ai_family == AF_INET ) {
245245 port = ntohs (((struct sockaddr_in * ) listen_addrinfo -> ai_addr )-> sin_port );
@@ -306,7 +306,7 @@ void dns_server_tcp_respond(dns_server_tcp_t *d,
306306 struct sockaddr * raddr , char * resp , size_t resp_len )
307307{
308308 if (resp_len < DNS_HEADER_LENGTH || resp_len > UINT16_MAX ) {
309- WLOG ("Malformed request received, invalid length: %u" , resp_len );
309+ WLOG ("Malformed response received, invalid length: %u" , resp_len );
310310 return ;
311311 }
312312
0 commit comments