[openssl-dev] "openssl s_client" memory leak

Gisle Vanem gvanem at yahoo.no
Tue Jan 19 02:25:52 UTC 2016


There seems to be some memory leak(s) somewhere during the life
of 's_client_main()'. Example from a client.bat here:

  set OPENSSL_DEBUG_MEMORY=on
  echo -e GET /ssltest/viewMyClient.html\r\n | openssl.exe s_client ^
             -connect www.ssllabs.com:443

('echo -e' is from Cygwin32).

All .html output gets produced correctly; ends with:
  </html>read:errno=0
and dumped okay in Lynx.

But the mem-tracker reports:
  [12:06:07]  6930 file=crypto/bio/bio_lib.c, line=68, thread=1092, number=72, address=0x284ef78
  72 bytes leaked in 1 chunks

And adding other options show additional leaks.
E.g. '-nbio_test -reconnect' results in 12 leaks:

  [12:15:17] 13704 file=crypto/bio/bio_lib.c, line=68, thread=4248, number=72, address=0x2ccf468
  [12:15:15] 13016 file=crypto/bio/bio_lib.c, line=68, thread=4248, number=72, address=0x2ccedb0
  [12:15:18] 14345 file=crypto/bio/bio_lib.c, line=68, thread=4248, number=72, address=0x2ccf238
  [12:15:14]  6906 file=crypto/bio/bio_lib.c, line=68, thread=4248, number=72, address=0x2c7e618
  [12:15:17] 13705 file=crypto/bio/bio_lib.c, line=68, thread=4248, number=72, address=0x2ccf2a8
  [12:15:15] 13017 file=crypto/bio/bio_lib.c, line=68, thread=4248, number=72, address=0x2ccee20
  [12:15:16] 13363 file=crypto/bio/bio_lib.c, line=68, thread=4248, number=72, address=0x2ccf078
  [12:15:14]  6907 file=crypto/bio/bio_lib.c, line=68, thread=4248, number=72, address=0x2c7e688
  [12:15:18] 14344 file=crypto/bio/bio_lib.c, line=68, thread=4248, number=72, address=0x2ccf0e8
  [12:15:17] 14022 file=crypto/bio/bio_lib.c, line=68, thread=4248, number=72, address=0x2cceeb8
  [12:15:16] 13364 file=crypto/bio/bio_lib.c, line=68, thread=4248, number=72, address=0x2ccef28
  [12:15:17] 14021 file=crypto/bio/bio_lib.c, line=68, thread=4248, number=72, address=0x2ccf628
  864 bytes leaked in 12 chunks

line 68 in bio_lib.c is inside BIO_new() which gives me no clue as to
the caller(s). And these order-values in column 2, what exactly are they?

All this is with a ver 0x10100003L, MingW + gcc 5.1 build on Win-10.
Maybe someone can verify this happening on other OSes too?

BTW. 'memleaktest.exe freeit' reports nothing. So the mem-dbg seems okay
    in this memtleaktest program. But maybe not in the 'big-picture'?

-- 
--gv


More information about the openssl-dev mailing list