Skip to content

opensips 1.8.1-tls crash issue #36

@littlehi

Description

@littlehi

hi,all

I found some crash issue with opensips 1.8.1

core file 1:

(gdb) bt full
#0  0x0000003d9d8bb7f1 in EVP_MD_CTX_cleanup () from /usr/lib64/libcrypto.so.10
No symbol table info available.
#1  0x0000003d9d86c05d in HMAC_CTX_cleanup () from /usr/lib64/libcrypto.so.10
No symbol table info available.
#2  0x0000003d9d86cb3e in ?? () from /usr/lib64/libcrypto.so.10
No symbol table info available.
#3  0x0000003d9d8c777c in EVP_PKEY_CTX_free () from /usr/lib64/libcrypto.so.10
No symbol table info available.
#4  0x0000003d9d8c7a74 in EVP_PKEY_CTX_dup () from /usr/lib64/libcrypto.so.10
No symbol table info available.
#5  0x0000003d9d8bb9bd in EVP_MD_CTX_copy_ex () from /usr/lib64/libcrypto.so.10
No symbol table info available.
#6  0x0000003311e2b9a0 in tls1_mac () from /usr/lib64/libssl.so.10
No symbol table info available.
#7  0x0000003311e25bbe in ssl3_read_bytes () from /usr/lib64/libssl.so.10
No symbol table info available.
#8  0x0000003311e22270 in ?? () from /usr/lib64/libssl.so.10
No symbol table info available.
#9  0x000000000054c10a in _tls_read (c=0x7f12bd8e48e0) at tls/tls_server.c:509
        ret = <value optimized out>
        err = <value optimized out>
        ssl = 0x7f12bd96d910
#10 tls_read (c=0x7f12bd8e48e0) at tls/tls_server.c:854
        bytes_free = 65535
        r = 0x7f12bd8e4958
        fd = 31
        read = 65535
        __FUNCTION__ = "tls_read"
#11 0x00000000004b2704 in tcp_read_headers (c=0x7f12bd8e48e0) at tcp_read.c:191
        remaining = <value optimized out>
        bytes = <value optimized out>
        p = <value optimized out>
        r = 0x7f12bd8e4958
        __FUNCTION__ = "tcp_read_headers"
#12 0x00000000004b2b61 in tcp_read_req (con=0x7f12bd8e48e0, bytes_read=0x7fffa7cc444c) at tcp_read.c:462
        bytes = <value optimized out>
        total_bytes = <value optimized out>
---Type <return> to continue, or q <return> to quit--- 
        resp = 0
        size = <value optimized out>
        req = 0x7f12bd8e4958
        c = <value optimized out>
        __FUNCTION__ = "tcp_read_req"
#13 0x00000000004b32e0 in handle_io (fm=0x7f12c2ac3980, idx=-1) at tcp_read.c:817
        ret = <value optimized out>
        n = <value optimized out>
        con = 0x7f12bd8e48e0
        s = <value optimized out>
        resp = <value optimized out>
        __FUNCTION__ = "handle_io"
#14 0x00000000004b5294 in io_wait_loop_epoll (unix_sock=<value optimized out>) at io_wait.h:728
        n = 1
        r = <value optimized out>
#15 tcp_receive_loop (unix_sock=<value optimized out>) at tcp_read.c:922
        __FUNCTION__ = "tcp_receive_loop"
#16 0x00000000004a4d64 in tcp_init_children (chd_rank=0x7b0808, startup_done=0x0) at tcp_main.c:1846
        r = <value optimized out>
        reader_fd = {26, 28}
        pid = <value optimized out>
        si = <value optimized out>
        load_p = 0x7f12bd6ccbd0
        __FUNCTION__ = "tcp_init_children"
#17 0x0000000000432b99 in main_loop (argc=<value optimized out>, argv=<value optimized out>) at main.c:953
        i = <value optimized out>
        pid = <value optimized out>
        si = 0x0
        startup_done = 0x0
        chd_rank = 10
        rc = <value optimized out>
        load_p = 0x7f12bd6ccac0
#18 main (argc=<value optimized out>, argv=<value optimized out>) at main.c:1541
        cfg_log_stderr = <value optimized out>
        cfg_stream = <value optimized out>
        c = <value optimized out>
        r = <value optimized out>
---Type <return> to continue, or q <return> to quit---
        tmp = 0xff <Address 0xff out of bounds>
        tmp_len = <value optimized out>
        port = <value optimized out>
        proto = <value optimized out>
        options = 0x55add8 "f:cCm:M:b:l:n:N:rRvdDETSVhw:t:u:g:P:G:W:o:"
        ret = -1
        seed = 1633377465
        rfd = <value optimized out>
        __FUNCTION__ = "main"

core file 2:

(gdb) bt full
#0  0x0000000000000000 in ?? ()
No symbol table info available.
#1  0x0000003311e2b98b in tls1_mac () from /usr/lib64/libssl.so.10
No symbol table info available.
#2  0x0000003311e250d6 in ?? () from /usr/lib64/libssl.so.10
No symbol table info available.
#3  0x0000003311e251e3 in ssl3_dispatch_alert () from /usr/lib64/libssl.so.10
No symbol table info available.
#4  0x0000003311e224c3 in ssl3_shutdown () from /usr/lib64/libssl.so.10
No symbol table info available.
#5  0x000000000054a2c0 in tls_shutdown (c=0x7fdfbce57760, fd=<value optimized out>) at tls/tls_server.c:410
        ret = <value optimized out>
        err = <value optimized out>
        ssl = 0x7fdfbce520c8
#6  tls_close (c=0x7fdfbce57760, fd=<value optimized out>) at tls/tls_server.c:682
        __FUNCTION__ = "tls_close"
#7  0x00000000004a9a5b in tcpconn_destroy (tcpconn=0x7fdfbce57760) at tcp_main.c:1104
        fd = 38
        __FUNCTION__ = "tcpconn_destroy"
#8  0x00000000004ae058 in handle_tcp_child (tcp_c=0x7fdfc218ed54, fd_i=<value optimized out>) at tcp_main.c:1302
        tcpconn = 0x7fdfbce57760
        response = {140598923589472, -2}
        cmd = -2
        bytes = 16
        __FUNCTION__ = "handle_tcp_child"
#9  0x00000000004af8c8 in io_wait_loop_epoll () at io_wait.h:728
        n = 1
#10 tcp_main_loop () at tcp_main.c:1616
        si = <value optimized out>
        r = <value optimized out>
        __FUNCTION__ = "tcp_main_loop"
#11 0x0000000000432d7e in main_loop (argc=<value optimized out>, argv=<value optimized out>) at main.c:982
        i = <value optimized out>
        pid = <value optimized out>
        si = <value optimized out>
        startup_done = 0x0
        chd_rank = 12
---Type <return> to continue, or q <return> to quit--- 
        rc = <value optimized out>
        load_p = 0x7fdfbcda2ac0
#12 main (argc=<value optimized out>, argv=<value optimized out>) at main.c:1541
        cfg_log_stderr = <value optimized out>
        cfg_stream = <value optimized out>
        c = <value optimized out>
        r = <value optimized out>
        tmp = 0xff <Address 0xff out of bounds>
        tmp_len = <value optimized out>
        port = <value optimized out>
        proto = <value optimized out>
        options = 0x55add8 "f:cCm:M:b:l:n:N:rRvdDETSVhw:t:u:g:P:G:W:o:"
        ret = -1
        seed = 2123405531
        rfd = <value optimized out>
        __FUNCTION__ = "main"
(gdb) 

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions