<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
<div class="" id="mail-body" style="line-height: 1.8; transform-origin: left top 0px;"><div><div><div>No memory leakage, if I comment out all SSL related constructs from my code.<br></div><div>Thus, the SSL related code parts seem to be the cause of this leak.<br></div><div>What is the issue here?<br></div></div><div>Makefile:<br></div><div><br></div></div><div style="color: #d4d4d4;background-color: #1e1e1e;font-family: 'Droid Sans Mono', 'monospace', monospace, 'Droid Sans Fallback';font-weight: normal;font-size: 14px;line-height: 19px;white-space: pre;"><div><span style="color: #9cdcfe;">CC</span><span style="color: #d4d4d4;">=clang</span><br></div><div><span style="color: #9cdcfe;">CFLAGS</span><span style="color: #d4d4d4;">=-g -Wextra -Wall -Werror -pedantic -std=c89 -lssl -fsanitize=address -fno-omit-frame-pointer</span><br></div><div><br></div><div><span style="color: #dcdcaa;">.PHONY</span><span style="color: #d4d4d4;">: clean</span><br></div><div><br></div><div><span style="color: #dcdcaa;">test</span><span style="color: #d4d4d4;">: main.c</span><br></div><div><span style="color: #ce9178;">$(</span><span style="color: #9cdcfe;">CC</span><span style="color: #ce9178;">)</span><span style="color: #d4d4d4;"> </span><span style="color: #ce9178;">$(</span><span style="color: #9cdcfe;">CFLAGS</span><span style="color: #ce9178;">)</span><span style="color: #d4d4d4;"> </span><span style="color: #569cd6;">$^</span><span style="color: #d4d4d4;"> -o </span><span style="color: #569cd6;">$@</span><br></div><div><br></div><div><span style="color: #dcdcaa;">clean</span><span style="color: #d4d4d4;">:</span><br></div><div><span style="color: #d4d4d4;">rm -rf test</span><br></div></div><div><div><div><br></div><div>Code:<br></div></div><div><br></div></div><div style="color: #d4d4d4;background-color: #1e1e1e;font-family: 'Droid Sans Mono', 'monospace', monospace, 'Droid Sans Fallback';font-weight: normal;font-size: 14px;line-height: 19px;white-space: pre;"><div><span style="color: #c586c0;">#define</span><span style="color: #569cd6;"> </span><span style="color: #569cd6;">_DEFAULT_SOURCE</span><br></div><div><span style="color: #c586c0;">#include</span><span style="color: #569cd6;"> </span><span style="color: #ce9178;"><sys/socket.h></span><br></div><div><span style="color: #c586c0;">#include</span><span style="color: #569cd6;"> </span><span style="color: #ce9178;"><sys/types.h></span><br></div><div><span style="color: #c586c0;">#include</span><span style="color: #569cd6;"> </span><span style="color: #ce9178;"><netinet/in.h></span><br></div><div><span style="color: #c586c0;">#include</span><span style="color: #569cd6;"> </span><span style="color: #ce9178;"><netdb.h></span><br></div><div><span style="color: #c586c0;">#include</span><span style="color: #569cd6;"> </span><span style="color: #ce9178;"><arpa/inet.h></span><br></div><div><span style="color: #c586c0;">#include</span><span style="color: #569cd6;"> </span><span style="color: #ce9178;"><unistd.h></span><br></div><div><span style="color: #c586c0;">#include</span><span style="color: #569cd6;"> </span><span style="color: #ce9178;"><assert.h></span><br></div><div><span style="color: #c586c0;">#include</span><span style="color: #569cd6;"> </span><span style="color: #ce9178;"><string.h></span><br></div><div><span style="color: #c586c0;">#include</span><span style="color: #569cd6;"> </span><span style="color: #ce9178;"><stdlib.h></span><br></div><div><span style="color: #c586c0;">#include</span><span style="color: #569cd6;"> </span><span style="color: #ce9178;"><stdio.h></span><br></div><div><span style="color: #c586c0;">#include</span><span style="color: #569cd6;"> </span><span style="color: #ce9178;"><openssl/ssl.h></span><br></div><div><br></div><div><span style="color: #569cd6;">int</span><span style="color: #d4d4d4;"> </span><span style="color: #dcdcaa;">main</span><span style="color: #d4d4d4;">(</span><span style="color: #569cd6;">int</span><span style="color: #d4d4d4;"> </span><span style="color: #9cdcfe;">argc</span><span style="color: #d4d4d4;">, </span><span style="color: #569cd6;">char</span><span style="color: #d4d4d4;"> **</span><span style="color: #9cdcfe;">argv</span><span style="color: #d4d4d4;">)</span><br></div><div><span style="color: #d4d4d4;">{</span><br></div><div><span style="color: #569cd6;">int</span><span style="color: #d4d4d4;"> </span><span style="color: #9cdcfe;">sfd</span><span style="color: #d4d4d4;"> = </span><span style="color: #b5cea8;">0</span><span style="color: #d4d4d4;">;</span><br></div><div><span style="color: #569cd6;">int</span><span style="color: #d4d4d4;"> </span><span style="color: #9cdcfe;">ret</span><span style="color: #d4d4d4;"> = </span><span style="color: #b5cea8;">0</span><span style="color: #d4d4d4;">;</span><br></div><div><span style="color: #569cd6;">struct</span><span style="color: #d4d4d4;"> </span><span style="color: #4ec9b0;">addrinfo</span><span style="color: #d4d4d4;"> *</span><span style="color: #9cdcfe;">result</span><span style="color: #d4d4d4;"> = </span><span style="color: #569cd6;">NULL</span><span style="color: #d4d4d4;">;</span><br></div><div><span style="color: #569cd6;">struct</span><span style="color: #d4d4d4;"> </span><span style="color: #4ec9b0;">addrinfo</span><span style="color: #d4d4d4;"> *</span><span style="color: #9cdcfe;">rp</span><span style="color: #d4d4d4;"> = </span><span style="color: #569cd6;">NULL</span><span style="color: #d4d4d4;">;</span><br></div><div><span style="color: #4ec9b0;">SSL_CTX</span><span style="color: #d4d4d4;"> *</span><span style="color: #9cdcfe;">ssl_ctx</span><span style="color: #d4d4d4;"> = </span><span style="color: #569cd6;">NULL</span><span style="color: #d4d4d4;">;</span><br></div><div><span style="color: #4ec9b0;">SSL</span><span style="color: #d4d4d4;"> *</span><span style="color: #9cdcfe;">ssl</span><span style="color: #d4d4d4;"> = </span><span style="color: #569cd6;">NULL</span><span style="color: #d4d4d4;">;</span><br></div><div><br></div><div><span style="color: #6a9955;">/* Socket initialization and connection */</span><br></div><div><span style="color: #9cdcfe;">sfd</span><span style="color: #d4d4d4;"> = </span><span style="color: #dcdcaa;">socket</span><span style="color: #d4d4d4;">(</span><span style="color: #569cd6;">AF_INET</span><span style="color: #d4d4d4;">, </span><span style="color: #569cd6;">SOCK_STREAM</span><span style="color: #d4d4d4;">, </span><span style="color: #b5cea8;">0</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #569cd6;">assert</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">sfd</span><span style="color: #d4d4d4;"> != -</span><span style="color: #b5cea8;">1</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #d4d4d4;">{</span><br></div><div><span style="color: #569cd6;">const</span><span style="color: #d4d4d4;"> </span><span style="color: #569cd6;">unsigned</span><span style="color: #d4d4d4;"> </span><span style="color: #569cd6;">int</span><span style="color: #d4d4d4;"> </span><span style="color: #9cdcfe;">min_argc</span><span style="color: #d4d4d4;"> = </span><span style="color: #b5cea8;">4</span><span style="color: #d4d4d4;">;</span><br></div><div><span style="color: #569cd6;">assert</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">argc</span><span style="color: #d4d4d4;"> == </span><span style="color: #9cdcfe;">min_argc</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #d4d4d4;">}</span><br></div><div><span style="color: #9cdcfe;">ret</span><span style="color: #d4d4d4;"> = </span><span style="color: #dcdcaa;">getaddrinfo</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">argv</span><span style="color: #d4d4d4;">[</span><span style="color: #b5cea8;">1</span><span style="color: #d4d4d4;">], </span><span style="color: #9cdcfe;">argv</span><span style="color: #d4d4d4;">[</span><span style="color: #b5cea8;">2</span><span style="color: #d4d4d4;">], </span><span style="color: #569cd6;">NULL</span><span style="color: #d4d4d4;">, &</span><span style="color: #9cdcfe;">result</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #569cd6;">assert</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">ret</span><span style="color: #d4d4d4;"> != -</span><span style="color: #b5cea8;">1</span><span style="color: #d4d4d4;">);</span><br></div><div><br></div><div><span style="color: #c586c0;">for</span><span style="color: #d4d4d4;"> (</span><span style="color: #9cdcfe;">rp</span><span style="color: #d4d4d4;"> = </span><span style="color: #9cdcfe;">result</span><span style="color: #d4d4d4;">; </span><span style="color: #9cdcfe;">rp</span><span style="color: #d4d4d4;"> != </span><span style="color: #569cd6;">NULL</span><span style="color: #d4d4d4;">; </span><span style="color: #9cdcfe;">rp</span><span style="color: #d4d4d4;"> = </span><span style="color: #9cdcfe;">rp</span><span style="color: #d4d4d4;">-></span><span style="color: #9cdcfe;">ai_next</span><span style="color: #d4d4d4;">) {</span><br></div><div><span style="color: #c586c0;">if</span><span style="color: #d4d4d4;"> (</span><span style="color: #dcdcaa;">connect</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">sfd</span><span style="color: #d4d4d4;">, </span><span style="color: #9cdcfe;">rp</span><span style="color: #d4d4d4;">-></span><span style="color: #9cdcfe;">ai_addr</span><span style="color: #d4d4d4;">, </span><span style="color: #9cdcfe;">rp</span><span style="color: #d4d4d4;">-></span><span style="color: #9cdcfe;">ai_addrlen</span><span style="color: #d4d4d4;">) != -</span><span style="color: #b5cea8;">1</span><span style="color: #d4d4d4;">)</span><br></div><div><span style="color: #c586c0;">break</span><span style="color: #d4d4d4;">;</span><br></div><div><span style="color: #d4d4d4;">}</span><br></div><div><br></div><div><span style="color: #6a9955;">/* SSL initialization */</span><br></div><div><span style="color: #569cd6;">SSL_load_error_strings</span><span style="color: #d4d4d4;">();</span><br></div><div><span style="color: #569cd6;">SSL_library_init</span><span style="color: #d4d4d4;">();</span><br></div><div><span style="color: #9cdcfe;">ssl_ctx</span><span style="color: #d4d4d4;"> = </span><span style="color: #dcdcaa;">SSL_CTX_new</span><span style="color: #d4d4d4;">(</span><span style="color: #569cd6;">SSLv23_client_method</span><span style="color: #d4d4d4;">());</span><br></div><div><span style="color: #9cdcfe;">ssl</span><span style="color: #d4d4d4;"> = </span><span style="color: #dcdcaa;">SSL_new</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">ssl_ctx</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #dcdcaa;">SSL_set_fd</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">ssl</span><span style="color: #d4d4d4;">, </span><span style="color: #9cdcfe;">sfd</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #9cdcfe;">ret</span><span style="color: #d4d4d4;"> = </span><span style="color: #dcdcaa;">SSL_connect</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">ssl</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #569cd6;">assert</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">ret</span><span style="color: #d4d4d4;"> != -</span><span style="color: #b5cea8;">1</span><span style="color: #d4d4d4;">);</span><br></div><div><br></div><div><span style="color: #6a9955;">/* HTTP requests */</span><br></div><div><span style="color: #d4d4d4;">{</span><br></div><div><span style="color: #569cd6;">const</span><span style="color: #d4d4d4;"> </span><span style="color: #4ec9b0;">size_t</span><span style="color: #d4d4d4;"> </span><span style="color: #9cdcfe;">buf_sz</span><span style="color: #d4d4d4;"> = </span><span style="color: #dcdcaa;">atoi</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">argv</span><span style="color: #d4d4d4;">[</span><span style="color: #b5cea8;">3</span><span style="color: #d4d4d4;">]);</span><br></div><div><span style="color: #569cd6;">const</span><span style="color: #d4d4d4;"> </span><span style="color: #569cd6;">unsigned</span><span style="color: #d4d4d4;"> </span><span style="color: #569cd6;">int</span><span style="color: #d4d4d4;"> </span><span style="color: #9cdcfe;">max</span><span style="color: #d4d4d4;"> = </span><span style="color: #b5cea8;">30</span><span style="color: #d4d4d4;">;</span><br></div><div><span style="color: #569cd6;">char</span><span style="color: #d4d4d4;"> *</span><span style="color: #9cdcfe;">buf</span><span style="color: #d4d4d4;"> = (</span><span style="color: #569cd6;">char</span><span style="color: #d4d4d4;"> *)</span><span style="color: #dcdcaa;">calloc</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">buf_sz</span><span style="color: #d4d4d4;"> + </span><span style="color: #b5cea8;">1</span><span style="color: #d4d4d4;">, </span><span style="color: #569cd6;">sizeof</span><span style="color: #d4d4d4;">(</span><span style="color: #569cd6;">char</span><span style="color: #d4d4d4;">));</span><br></div><div><span style="color: #dcdcaa;">strncat</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">buf</span><span style="color: #d4d4d4;">, </span><span style="color: #ce9178;">"GET / HTTP/1.1</span><span style="color: #d7ba7d;">\r\n</span><span style="color: #ce9178;">Host: "</span><span style="color: #d4d4d4;">, </span><span style="color: #9cdcfe;">max</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #dcdcaa;">strncat</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">buf</span><span style="color: #d4d4d4;">, </span><span style="color: #9cdcfe;">argv</span><span style="color: #d4d4d4;">[</span><span style="color: #b5cea8;">1</span><span style="color: #d4d4d4;">], </span><span style="color: #9cdcfe;">max</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #dcdcaa;">strncat</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">buf</span><span style="color: #d4d4d4;">, </span><span style="color: #ce9178;">"</span><span style="color: #d7ba7d;">\r\n\r\n</span><span style="color: #ce9178;">"</span><span style="color: #d4d4d4;">, </span><span style="color: #9cdcfe;">max</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #9cdcfe;">ret</span><span style="color: #d4d4d4;"> = </span><span style="color: #dcdcaa;">SSL_write</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">ssl</span><span style="color: #d4d4d4;">, </span><span style="color: #9cdcfe;">buf</span><span style="color: #d4d4d4;">, </span><span style="color: #dcdcaa;">strlen</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">buf</span><span style="color: #d4d4d4;">) + </span><span style="color: #b5cea8;">1</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #569cd6;">assert</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">ret</span><span style="color: #d4d4d4;"> != -</span><span style="color: #b5cea8;">1</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #dcdcaa;">free</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">buf</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #d4d4d4;">}</span><br></div><div><br></div><div><br></div><div><span style="color: #d4d4d4;">{</span><br></div><div><span style="color: #569cd6;">const</span><span style="color: #d4d4d4;"> </span><span style="color: #4ec9b0;">size_t</span><span style="color: #d4d4d4;"> </span><span style="color: #9cdcfe;">buf_sz</span><span style="color: #d4d4d4;"> = </span><span style="color: #dcdcaa;">atoi</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">argv</span><span style="color: #d4d4d4;">[</span><span style="color: #b5cea8;">3</span><span style="color: #d4d4d4;">]);</span><br></div><div><span style="color: #569cd6;">char</span><span style="color: #d4d4d4;"> *</span><span style="color: #9cdcfe;">buf</span><span style="color: #d4d4d4;"> = (</span><span style="color: #569cd6;">char</span><span style="color: #d4d4d4;"> *)</span><span style="color: #dcdcaa;">calloc</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">buf_sz</span><span style="color: #d4d4d4;"> + </span><span style="color: #b5cea8;">1</span><span style="color: #d4d4d4;">, </span><span style="color: #569cd6;">sizeof</span><span style="color: #d4d4d4;">(</span><span style="color: #569cd6;">char</span><span style="color: #d4d4d4;">));</span><br></div><div><span style="color: #569cd6;">assert</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">buf</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #9cdcfe;">ret</span><span style="color: #d4d4d4;"> = </span><span style="color: #dcdcaa;">SSL_read</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">ssl</span><span style="color: #d4d4d4;">, </span><span style="color: #9cdcfe;">buf</span><span style="color: #d4d4d4;">, </span><span style="color: #9cdcfe;">buf_sz</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #569cd6;">assert</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">ret</span><span style="color: #d4d4d4;"> != -</span><span style="color: #b5cea8;">1</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #dcdcaa;">printf</span><span style="color: #d4d4d4;">(</span><span style="color: #ce9178;">"%s</span><span style="color: #d7ba7d;">\n</span><span style="color: #ce9178;">"</span><span style="color: #d4d4d4;">, </span><span style="color: #9cdcfe;">buf</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #dcdcaa;">free</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">buf</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #d4d4d4;">}</span><br></div><div><br></div><div><span style="color: #6a9955;">/* Clean up */</span><br></div><div><span style="color: #dcdcaa;">SSL_free</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">ssl</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #dcdcaa;">close</span><span style="color: #d4d4d4;">(</span><span style="color: #9cdcfe;">sfd</span><span style="color: #d4d4d4;">);</span><br></div><div><span style="color: #c586c0;">return</span><span style="color: #d4d4d4;"> </span><span style="color: #b5cea8;">0</span><span style="color: #d4d4d4;">;</span><br></div><div><span style="color: #d4d4d4;">}</span><br></div></div><div><div>Program output:<br></div><div><br></div><div>user@user-ubuntu:~/projects/https$ ./test finance.yahoo.com 443 1024<br></div></div><div>HTTP/1.1 200 OK<br></div><div>Referrer-Policy: no-referrer-when-downgrade<br></div><div>Strict-Transport-Security: max-age=15552000<br></div><div>X-Frame-Options: SAMEORIGIN<br></div><div>Content-Security-Policy:
 sandbox allow-downloads allow-forms allow-modals allow-same-origin 
allow-scripts allow-popups allow-popups-to-escape-sandbox 
allow-top-navigation-by-user-activation allow-presentation;<br></div><div>Content-Type: text/html; charset=utf-8<br></div><div>Set-Cookie: B=8mraj0lfhbaol&b=3&s=r7; expires=Mon, 20-Jul-2021 14:32:53 GMT; path=/; domain=.yahoo.com<br></div><div>Date: Mon, 20 Jul 2020 14:32:53 GMT<br></div><div>Server: ATS<br></div><div>Cache-Control: max-age=0, private<br></div><div>Expires: -1<br></div><div>Age: 0<br></div><div>Transfer-Encoding: chunked<br></div><div>Connection: keep-alive<br></div><div>Expect-CT: max-age=31536000, report-uri="<a target="_blank" rel="noopener noreferrer" href="http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only">http://csp.yahoo.com/beacon/csp?src=yahoocom-expect-ct-report-only</a>"<br></div><div>X-XSS-Protection: 1; mode=block<br></div><div>X-Content-Type-Options: nosniff<br></div><div><br></div><div><br></div><div><br></div><div>=================================================================<br></div><div>==28089==ERROR: LeakSanitizer: detected memory leaks<br></div><div><br></div><div>Direct leak of 1024 byte(s) in 1 object(s) allocated from:<br></div><div>    #0 0x493aed in malloc (/home/user/projects/https/test+0x493aed)<br></div><div>    #1 0x7f59b7cf88cd in CRYPTO_zalloc (/lib/x86_64-linux-gnu/libcrypto.so.1.1+0x17b8cd)<br></div><div>    #2 0x7f59b7e7a0b2 in __libc_start_main /build/glibc-YYA7BZ/glibc-2.31/csu/../csu/libc-start.c:308:16<br></div><div><br></div><div>Direct leak of 64 byte(s) in 1 object(s) allocated from:<br></div><div>    #0 0x493aed in malloc (/home/user/projects/https/test+0x493aed)<br></div><div>    #1 0x7f59b7f59be9 in gaih_inet /build/glibc-YYA7BZ/glibc-2.31/posix/../sysdeps/posix/getaddrinfo.c:1058:18<br></div><div>    #2 0x7f59b7f5bf48 in getaddrinfo /build/glibc-YYA7BZ/glibc-2.31/posix/../sysdeps/posix/getaddrinfo.c:2256:12<br></div><div>    #3 0x442e3a in getaddrinfo (/home/user/projects/https/test+0x442e3a)<br></div><div>    #4 0x4c349c in main /home/user/projects/https/main.c:30:11<br></div><div>    #5 0x7f59b7e7a0b2 in __libc_start_main /build/glibc-YYA7BZ/glibc-2.31/csu/../csu/libc-start.c:308:16<br></div><div><br></div><div>Indirect leak of 1712 byte(s) in 19 object(s) allocated from:<br></div><div>    #0 0x493aed in malloc (/home/user/projects/https/test+0x493aed)<br></div><div>    #1 0x7f59b7cf88cd in CRYPTO_zalloc (/lib/x86_64-linux-gnu/libcrypto.so.1.1+0x17b8cd)<br></div><div><br></div><div>Indirect leak of 504 byte(s) in 1 object(s) allocated from:<br></div><div>    #0 0x493e09 in realloc (/home/user/projects/https/test+0x493e09)<br></div><div>    #1 0x7f59b7d5b464  (/lib/x86_64-linux-gnu/libcrypto.so.1.1+0x1de464)<br></div><div><br></div><div>Indirect leak of 504 byte(s) in 1 object(s) allocated from:<br></div><div>    #0 0x493aed in malloc (/home/user/projects/https/test+0x493aed)<br></div><div>    #1 0x7f59b7d5ba48 in OPENSSL_sk_dup (/lib/x86_64-linux-gnu/libcrypto.so.1.1+0x1dea48)<br></div><div><br></div><div>Indirect leak of 456 byte(s) in 6 object(s) allocated from:<br></div><div>    #0 0x493aed in malloc (/home/user/projects/https/test+0x493aed)<br></div><div>    #1 0x7f59b7f59a59 in gaih_inet /build/glibc-YYA7BZ/glibc-2.31/posix/../sysdeps/posix/getaddrinfo.c:1058:18<br></div><div>    #2 0x7f59b7f5bf48 in getaddrinfo /build/glibc-YYA7BZ/glibc-2.31/posix/../sysdeps/posix/getaddrinfo.c:2256:12<br></div><div>    #3 0x442e3a in getaddrinfo (/home/user/projects/https/test+0x442e3a)<br></div><div>    #4 0x4c349c in main /home/user/projects/https/main.c:30:11<br></div><div>    #5 0x7f59b7e7a0b2 in __libc_start_main /build/glibc-YYA7BZ/glibc-2.31/csu/../csu/libc-start.c:308:16<br></div><div><br></div><div>Indirect leak of 320 byte(s) in 5 object(s) allocated from:<br></div><div>    #0 0x493aed in malloc (/home/user/projects/https/test+0x493aed)<br></div><div>    #1 0x7f59b7f59be9 in gaih_inet /build/glibc-YYA7BZ/glibc-2.31/posix/../sysdeps/posix/getaddrinfo.c:1058:18<br></div><div>    #2 0x7f59b7f5bf48 in getaddrinfo /build/glibc-YYA7BZ/glibc-2.31/posix/../sysdeps/posix/getaddrinfo.c:2256:12<br></div><div>    #3 0x442e3a in getaddrinfo (/home/user/projects/https/test+0x442e3a)<br></div><div>    #4 0x4c349c in main /home/user/projects/https/main.c:30:11<br></div><div>    #5 0x7f59b7e7a0b2 in __libc_start_main /build/glibc-YYA7BZ/glibc-2.31/csu/../csu/libc-start.c:308:16<br></div><div><br></div><div>Indirect leak of 32 byte(s) in 1 object(s) allocated from:<br></div><div>    #0 0x493aed in malloc (/home/user/projects/https/test+0x493aed)<br></div><div>    #1 0x7f59b7d5b9f3 in OPENSSL_sk_dup (/lib/x86_64-linux-gnu/libcrypto.so.1.1+0x1de9f3)<br></div><div><br></div><div>SUMMARY: AddressSanitizer: 4616 byte(s) leaked in 35 allocation(s).<br></div><div><br></div></div><div><br></div>  </body>
</html>