axtls ssl\u客户端\u新的双自由或损坏

axtls ssl\u客户端\u新的双自由或损坏,ssl,Ssl,我对AXTLS有一个小问题。我正在尝试与服务器建立SSL通信,但它似乎在“SSL\u client\u new”函数中双重释放了一些内容 代码创建一个新的ctx(ssl_ctx_new)并在初始化期间加载证书(ssl_obj_load)(这里没有问题),套接字已连接,当我调用“ssl_client_new”时,libc检测到双重空闲: “双重自由或损坏(fasttop):0x0809f740” 我在gdb下启动了应用程序,这是回溯: Program received signal SIGABRT

我对AXTLS有一个小问题。我正在尝试与服务器建立SSL通信,但它似乎在“SSL\u client\u new”函数中双重释放了一些内容

代码创建一个新的ctx(ssl_ctx_new)并在初始化期间加载证书(ssl_obj_load)(这里没有问题),套接字已连接,当我调用“ssl_client_new”时,libc检测到双重空闲:

“双重自由或损坏(fasttop):0x0809f740”

我在gdb下启动了应用程序,这是回溯:

Program received signal SIGABRT, Aborted. 0xb7fdd424 in
__kernel_vsyscall () (gdb) bt
#0  0xb7fdd424 in __kernel_vsyscall ()
#1  0xb7d371ef in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#2  0xb7d3a835 in __GI_abort () at abort.c:91
#3  0xb7d722fa in __libc_message (do_abort=2, fmt=0xb7e6a3bc "*** glibc detected *** %s: %s: 0x%s ***\n") at ../sysdeps/unix/sysv/linux/libc_fatal.c:201
#4  0xb7d7ce42 in malloc_printerr (action=<optimized out>, str=<optimized out>, ptr=0x809f740) at malloc.c:5007
#5  0x080712fd in asn1_name ()
#6  0x0806849f in x509_new ()
#7  0x080642cc in process_certificate ()
#8  0x08067caa in do_clnt_handshake ()
#9  0x08066675 in basic_read ()
#10 0x08067a07 in ssl_client_new ()
于是ssl握手开始了。 紧接着:

open("/dev/tty", O_RDWR|O_NOCTTY|O_NONBLOCK) = 9
writev(9, [{"*** glibc detected *** ", 23}, {"./HTTPS_TOOL", 11}, {": ", 2}, {"double free or corruption (fastt"..., 35}, {": 0x", 4}, {"082ba740", 8}, {" ***\n", 5}], 7*** glibc detected *** ./HTTPS_TOOL: double free or corruption (fasttop): 0x082ba740 ***
) = 88
有什么想法吗?这可能是问题所在,我能做什么


谢谢你。

你还收到这个问题吗?我没有任何关于这方面的报道,这可能是图书馆的一种使用方式

在Valgrand,图书馆已经被检查了很多次,最近没有任何问题。你可以在Valgrind运行它来验证吗

open("/dev/tty", O_RDWR|O_NOCTTY|O_NONBLOCK) = 9
writev(9, [{"*** glibc detected *** ", 23}, {"./HTTPS_TOOL", 11}, {": ", 2}, {"double free or corruption (fastt"..., 35}, {": 0x", 4}, {"082ba740", 8}, {" ***\n", 5}], 7*** glibc detected *** ./HTTPS_TOOL: double free or corruption (fasttop): 0x082ba740 ***
) = 88