[vpn-devel] Ubuntu: Error in `ikec': double free or corruption

Илья Ермолин ermolinis at gmail.com
Wed Jun 11 01:58:33 CDT 2014


Hi, I try to use ike VPN under Linux.

For this reason I download last version of VPN and compile it.

Problem:
When I try to run ikec program with params I get system error:


cgi at iermolin-V3-771:~/data/data_lib/git_repos/ike$ *ikec -r rtk*
> ii : ## : VPN Connect, ver 2.2.1
> ## : Copyright 2013 Shrew Soft Inc.
> ## : press the <h> key for help
> *** Error in `ikec': double free or corruption (out): 0x0000000001198670
> ***
> ======= Backtrace: =========
> /lib/x86_64-linux-gnu/libc.so.6(+0x80a46)[0x7f1b507b9a46]
> /usr/lib/libss_idb.so.2.2.1(_ZN6_BDATA4growEm+0xa3)[0x7f1b51244391]
> /usr/lib/libss_idb.so.2.2.1(_ZN6_BDATA3insEPvmm+0x5e)[0x7f1b51244c58]
> /usr/lib/libss_idb.so.2.2.1(_ZN6_BDATA3insEPcmm+0x30)[0x7f1b51244d34]
>
> /usr/lib/libss_ike.so.2.2.1(_ZN15_CONFIG_MANAGER13file_vpn_loadER7_CONFIG+0xda)[0x7f1b51453f80]
>
> /usr/lib/libss_ike.so.2.2.1(_ZN7_CLIENT11config_loadEv+0xc3)[0x7f1b51451af9]
> ikec(main+0xcb)[0x4017b7]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5)[0x7f1b5075aea5]
> ikec[0x401629]
> ======= Memory map: ========
> 00400000-00403000 r-xp 00000000 fc:00 423705
> /usr/bin/ikec
> 00602000-00603000 r--p 00002000 fc:00 423705
> /usr/bin/ikec
> 00603000-00604000 rw-p 00003000 fc:00 423705
> /usr/bin/ikec
> 01188000-011a9000 rw-p 00000000 00:00 0
> [heap]
> 7f1b4e9a2000-7f1b4e9ae000 r-xp 00000000 fc:00 4200771
> /lib/x86_64-linux-gnu/libnss_files-2.17.so
> 7f1b4e9ae000-7f1b4ebad000 ---p 0000c000 fc:00 4200771
> /lib/x86_64-linux-gnu/libnss_files-2.17.so
> 7f1b4ebad000-7f1b4ebae000 r--p 0000b000 fc:00 4200771
> /lib/x86_64-linux-gnu/libnss_files-2.17.so
> 7f1b4ebae000-7f1b4ebaf000 rw-p 0000c000 fc:00 4200771
> /lib/x86_64-linux-gnu/libnss_files-2.17.so
> 7f1b4ebaf000-7f1b4ebba000 r-xp 00000000 fc:00 4200785
> /lib/x86_64-linux-gnu/libnss_nis-2.17.so
> 7f1b4ebba000-7f1b4edb9000 ---p 0000b000 fc:00 4200785
> /lib/x86_64-linux-gnu/libnss_nis-2.17.so
> 7f1b4edb9000-7f1b4edba000 r--p 0000a000 fc:00 4200785
> /lib/x86_64-linux-gnu/libnss_nis-2.17.so
> 7f1b4edba000-7f1b4edbb000 rw-p 0000b000 fc:00 4200785
> /lib/x86_64-linux-gnu/libnss_nis-2.17.so
> 7f1b4edbb000-7f1b4edd2000 r-xp 00000000 fc:00 4200763
> /lib/x86_64-linux-gnu/libnsl-2.17.so
> 7f1b4edd2000-7f1b4efd1000 ---p 00017000 fc:00 4200763
> /lib/x86_64-linux-gnu/libnsl-2.17.so
> 7f1b4efd1000-7f1b4efd2000 r--p 00016000 fc:00 4200763
> /lib/x86_64-linux-gnu/libnsl-2.17.so
> 7f1b4efd2000-7f1b4efd3000 rw-p 00017000 fc:00 4200763
> /lib/x86_64-linux-gnu/libnsl-2.17.so
> 7f1b4efd3000-7f1b4efd5000 rw-p 00000000 00:00 0
> 7f1b4efd5000-7f1b4efdd000 r-xp 00000000 fc:00 4200789
> /lib/x86_64-linux-gnu/libnss_compat-2.17.so
> 7f1b4efdd000-7f1b4f1dc000 ---p 00008000 fc:00 4200789
> /lib/x86_64-linux-gnu/libnss_compat-2.17.so
> 7f1b4f1dc000-7f1b4f1dd000 r--p 00007000 fc:00 4200789
> /lib/x86_64-linux-gnu/libnss_compat-2.17.so
> 7f1b4f1dd000-7f1b4f1de000 rw-p 00008000 fc:00 4200789
> /lib/x86_64-linux-gnu/libnss_compat-2.17.so
> 7f1b4f1de000-7f1b4f1f6000 r-xp 00000000 fc:00 4200765
> /lib/x86_64-linux-gnu/libpthread-2.17.so
> 7f1b4f1f6000-7f1b4f3f5000 ---p 00018000 fc:00 4200765
> /lib/x86_64-linux-gnu/libpthread-2.17.so
> 7f1b4f3f5000-7f1b4f3f6000 r--p 00017000 fc:00 4200765
> /lib/x86_64-linux-gnu/libpthread-2.17.so
> 7f1b4f3f6000-7f1b4f3f7000 rw-p 00018000 fc:00 4200765
> /lib/x86_64-linux-gnu/libpthread-2.17.so
> 7f1b4f3f7000-7f1b4f3fb000 rw-p 00000000 00:00 0
> 7f1b4f3fb000-7f1b4f411000 r-xp 00000000 fc:00 4194500
> /lib/x86_64-linux-gnu/libz.so.1.2.7
> 7f1b4f411000-7f1b4f610000 ---p 00016000 fc:00 4194500
> /lib/x86_64-linux-gnu/libz.so.1.2.7
> 7f1b4f610000-7f1b4f611000 r--p 00015000 fc:00 4194500
> /lib/x86_64-linux-gnu/libz.so.1.2.7
> 7f1b4f611000-7f1b4f612000 rw-p 00016000 fc:00 4194500
> /lib/x86_64-linux-gnu/libz.so.1.2.7
> 7f1b4f612000-7f1b4f615000 r-xp 00000000 fc:00 4200769
> /lib/x86_64-linux-gnu/libdl-2.17.so
> 7f1b4f615000-7f1b4f814000 ---p 00003000 fc:00 4200769
> /lib/x86_64-linux-gnu/libdl-2.17.so
> 7f1b4f814000-7f1b4f815000 r--p 00002000 fc:00 4200769
> /lib/x86_64-linux-gnu/libdl-2.17.so
> 7f1b4f815000-7f1b4f816000 rw-p 00003000 fc:00 4200769
> /lib/x86_64-linux-gnu/libdl-2.17.so
> 7f1b4f816000-7f1b4f81d000 r-xp 00000000 fc:00 4200777
> /lib/x86_64-linux-gnu/librt-2.17.so
> 7f1b4f81d000-7f1b4fa1c000 ---p 00007000 fc:00 4200777
> /lib/x86_64-linux-gnu/librt-2.17.so
> 7f1b4fa1c000-7f1b4fa1d000 r--p 00006000 fc:00 4200777
> /lib/x86_64-linux-gnu/librt-2.17.so
> 7f1b4fa1d000-7f1b4fa1e000 rw-p 00007000 fc:00 4200777
> /lib/x86_64-linux-gnu/librt-2.17.so
> 7f1b4fa1e000-7f1b4fb21000 r-xp 00000000 fc:00 4200787
> /lib/x86_64-linux-gnu/libm-2.17.so
> 7f1b4fb21000-7f1b4fd21000 ---p 00103000 fc:00 4200787
> /lib/x86_64-linux-gnu/libm-2.17.so
> 7f1b4fd21000-7f1b4fd22000 r--p 00103000 fc:00 4200787
> /lib/x86_64-linux-gnu/libm-2.17.so
> 7f1b4fd22000-7f1b4fd23000 rw-p 00104000 fc:00 4200787
> /lib/x86_64-linux-gnu/libm-2.17.so
> 7f1b4fd23000-7f1b4fd47000 r-xp 00000000 fc:00 4194516
> /lib/x86_64-linux-gnu/libtinfo.so.5.9
> 7f1b4fd47000-7f1b4ff46000 ---p 00024000 fc:00 4194516
> /lib/x86_64-linux-gnu/libtinfo.so.5.9
> 7f1b4ff46000-7f1b4ff4a000 r--p 00023000 fc:00 4194516
> /lib/x86_64-linux-gnu/libtinfo.so.5.9
> 7f1b4ff4a000-7f1b4ff4b000 rw-p 00027000 fc:00 4194516
> /lib/x86_64-linux-gnu/libtinfo.so.5.9
> 7f1b4ff4b000-7f1b4ff56000 r-xp 00000000 fc:00 4197925
> /lib/x86_64-linux-gnu/libbsd.so.0.4.2
> 7f1b4ff56000-7f1b50156000 ---p 0000b000 fc:00 4197925
> /lib/x86_64-linux-gnu/libbsd.so.0.4.2
> 7f1b50156000-7f1b50157000 r--p 0000b000 fc:00 4197925
> /lib/x86_64-linux-gnu/libbsd.so.0.4.2
> 7f1b50157000-7f1b50158000 rw-p 0000c000 fc:00 4197925
> /lib/x86_64-linux-gnu/libbsd.so.0.4.2
> 7f1b50158000-7f1b50309000 r-xp 00000000 fc:00 4199170
> /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
> 7f1b50309000-7f1b50509000 ---p 001b1000 fc:00 4199170
> /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
> 7f1b50509000-7f1b50524000 r--p 001b1000 fc:00 4199170
> /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
> 7f1b50524000-7f1b5052f000 rw-p 001cc000 fc:00 4199170
> /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
> 7f1b5052f000-7f1b50533000 rw-p 00000000 00:00 0
> 7f1b50533000-7f1b50538000 r-xp 00000000 fc:00 423702
> /usr/lib/libss_ith.so.2.2.1
> 7f1b50538000-7f1b50737000 ---p 00005000 fc:00 423702
> /usr/lib/libss_ith.so.2.2.1
> 7f1b50737000-7f1b50738000 r--p 00004000 fc:00 423702
> /usr/lib/libsAborted (core dumped)
>
>
I try to rebuild source with debug enabled and manged to get folowing
retrace using gdb:

--- stack trace ---
> #0  0x00007ffff6eef037 in __GI_raise (sig=sig at entry=6) at
> ../nptl/sysdeps/unix/sysv/linux/raise.c:56
>         resultvar = 0
>         pid = 12901
>         selftid = 12901
> #1  0x00007ffff6ef2698 in __GI_abort () at abort.c:90
>         save_stage = 2
>         act = {__sigaction_handler = {sa_handler = 0x7fffffffcdda,
> sa_sigaction = 0x7fffffffcdda}, sa_mask = {__val = {6, 140737337614732, 2,
> 140737488342510, 2, 140737337603700, 1, 140737337614728, 3,
> 140737488342484, 12, 140737337614732, 2, 140737488343296, 10,
> 140737488345056}}, sa_flags = 123,
>           sa_restorer = 0x7}
>         sigs = {__val = {32, 0 <repeats 15 times>}}
> #2  0x00007ffff6f2c5ab in __libc_message (do_abort=do_abort at entry=2,
> fmt=fmt at entry=0x7ffff7040440 "*** Error in `%s': %s: 0x%s ***\n") at
> ../sysdeps/unix/sysv/linux/libc_fatal.c:199
>         ap = {{gp_offset = 40, fp_offset = 48, overflow_arg_area =
> 0x7fffffffd7f0, reg_save_area = 0x7fffffffd700}}
>         ap_copy = {{gp_offset = 16, fp_offset = 48, overflow_arg_area =
> 0x7fffffffd7f0, reg_save_area = 0x7fffffffd700}}
>         fd = 11
>         on_2 = <optimized out>
>         list = <optimized out>
>         nlist = <optimized out>
>         cp = <optimized out>
>         written = <optimized out>
> #3  0x00007ffff6f38a46 in malloc_printerr (ptr=0x614670,
> str=0x7ffff7040570 "double free or corruption (out)", action=3) at
> malloc.c:4923
>         buf = "0000000000614670"
>         cp = <optimized out>
> #4  _int_free (av=<optimized out>, p=0x614660, have_lock=0) at
> malloc.c:3779
>         size = <optimized out>
>         fb = <optimized out>
>         nextchunk = <optimized out>
>         nextsize = <optimized out>
>         nextinuse = <optimized out>
>         prevsize = <optimized out>
>         bck = <optimized out>
>         fwd = <optimized out>
>         errstr = <optimized out>
>         locked = <optimized out>
>         __func__ = "_int_free"
> ---Type <return> to continue, or q <return> to quit---
> #5  0x00007ffff79c3401 in _BDATA::grow (this=0x7fffffffd960, new_real=4)
> at /home/cgi/data/data_lib/git_repos/ike/source/libidb/libidb.cpp:102
>         new_buff = 0x614690 "ȧ'\367\377\177"
> #6  0x00007ffff79c3cc8 in _BDATA::ins (this=0x7fffffffd960, buff=0x614650,
> size=3, oset=0) at
> /home/cgi/data/data_lib/git_repos/ike/source/libidb/libidb.cpp:338
>         new_size = 4
> #7  0x00007ffff79c3da4 in _BDATA::ins (this=0x7fffffffd960, buff=0x614650
> "rtk", size=3, oset=0) at
> /home/cgi/data/data_lib/git_repos/ike/source/libidb/libidb.cpp:358
> No locals.
> #8  0x00007ffff7bd3020 in _CONFIG_MANAGER::file_vpn_load
> (this=0x7fffffffda50, config=...) at
> /home/cgi/data/data_lib/git_repos/ike/source/libike/manager.file.cpp:182
>         path = {_vptr._BDATA = 0x7ffff7bc5d70 <vtable for _BDATA+16>,
> data_buff = 0x614670 "ȧ'\367\377\177", data_real = 1, data_size = 1,
> data_oset = 0}
> #9  0x00007ffff7bd0b99 in _CLIENT::config_load (this=0x7fffffffda20) at
> /home/cgi/data/data_lib/git_repos/ike/source/libike/client.cpp:1530
>         loaded = false
> #10 0x00000000004018b7 in main (argc=3, argv=0x7fffffffdff8) at
> /home/cgi/data/data_lib/git_repos/ike/source/ikec/main.cpp:69
>         ikec = {<_CLIENT> = {<_ITH_EXEC> = {_vptr._ITH_EXEC = 0x402790
> <vtable for _IKEC+16>, thread = 0}, connecting = {conn_wake = {7, 8},
> obj_name =
> "`\241\377\367\377\177\000\000\210\215\335\367\377\177\000\000H\016\354",
> <incomplete sequence \366>}, manager = {sites_all = {
>                 _vptr._BDATA = 0x7ffff7bc5d70 <vtable for _BDATA+16>,
> data_buff = 0x0, data_real = 0, data_size = 0, data_oset = 0}, certs_all =
> {_vptr._BDATA = 0x7ffff7bc5d70 <vtable for _BDATA+16>, data_buff = 0x0,
> data_real = 0, data_size = 0, data_oset = 0}, sites_user = {
>                 _vptr._BDATA = 0x7ffff7bc5d70 <vtable for _BDATA+16>,
> data_buff = 0x606710 "/home/cgi/.ike/sites", data_real = 21, data_size =
> 21, data_oset = 0}, certs_user = {_vptr._BDATA = 0x7ffff7bc5d70 <vtable for
> _BDATA+16>, data_buff = 0x606730 "/home/cgi/.ike/certs", data_real = 21,
> data_size = 21,
>                 data_oset = 0}}, site_name = {_vptr._BDATA =
> 0x7ffff7bc5d70 <vtable for _BDATA+16>, data_buff = 0x607fc0 "rtk",
> data_real = 4, data_size = 4, data_oset = 0}, peer = {saddr = {{saddr =
> {sa_family = 42812, sa_data =
> "\335\367\377\177\000\000\360\214\354\366\377\177\000"}, saddr4 = {
>                     sin_family = 42812, sin_port = 63453, sin_addr =
> {s_addr = 32767}, sin_zero = "\360\214\354\366\377\177\000"}}}, contact =
> 16 '\020', exchange = 164 '\244', notify = 221, nailed = 247, natt_mode =
> 4294967296, natt_port = 2205, natt_rate = 140737488345984, frag_ike_mode =
> 140737488346464,
>               frag_ike_size = 140737488346304, frag_esp_mode =
> 140737353927680, frag_esp_size = 140737354130880, dpd_mode =
> 140737354127864, dpd_delay = 1, dpd_retry = 140737351923356, life_check =
> 0, idtype_l = 6 '\006', idtype_r = 0 '\000', plcy_mode = 140737488346416,
> plcy_level = 17,
>               xconf_mode = 2972705047}, xconf = {opts = 140737351925408,
> rqst = 0, addr = {s_addr = 23}, mask = {s_addr = 0}, dhcp = {s_addr =
> 46448516}, expi = 0, vmtu = 4142644504, dhgr = 32767, svpw = 0, nscfg =
> {dnss_from_dhcp = 252, dnss_list = {{s_addr = 32767}, {s_addr =
> 4160742848}, {s_addr = 32767},
>                   {s_addr = 4142644504}, {s_addr = 32767}, {s_addr =
> 4294958096}, {s_addr = 32767}, {s_addr = 2090266759}}, dnss_count = 0,
> dnss_nodyn = 4142648416,
>                 dnss_suffix =
> "\377\177\000\000\000\000\000\000\000\000\000\000<\247\335\367\377\177\000\000\000\000\000\000\000\000\000\000\270\262\374\367\377\177\000\000\340\004\375\367\377\177\000\000\226\376\225\365\377\177\000\000\360\214\354\366\377\177\000\000\234\066\336\367\377\177\000\000\000\000\000\000\001\000\000\000\006\000\000\000\000\000\000\000\360\335\377\377\377\177\000\000\234\066\336\367\377\177\000\000\256`\207\377\000\000\000\000\006\000\000\000\000\000\000\000\020\336\377\377\377\177\000\000\021\000\000\000\000\000\000\000\355\351C+\000\000\000\000\240>\336\367\377\177\000\000\000\000\000\000\000\000\000\000-\000\000\000\000\000\000\000\247\017\255\000\000\000\000\000\030\275\353\366\377\177\000\000\000\247\353\366\377\177\000\000\270\313I\367\377\177\000\000\030\275\353\366"...,
> nbns_list = {{s_addr = 0}, {s_addr = 4294958752}, {s_addr = 32767}, {s_addr
> = 17}}, nbns_count = 0,
>                 nbns_nopts = 4131212846, nbns_ntype = 0}}, proposal_isakmp
> = {pnumb = 160 '\240', tnumb = 62 '>', proto = 222 '\336', xform = 247
> '\367', encap = 32767, reqid = 0, spi = {{cookies = {i =
> "\000\000\000\000\000\000\000", r = ".\000\000\000\000\000\000"}, spi = 0,
> cpi = 0}, size = 56 '8'},
>               ciph_id = 0, ciph_kl = 0, hash_id = 48408, dhgr_id = 63211,
> auth_id = 32767, life_sec = 4142643996, life_kbs = 32767}, proposal_esp =
> {pnumb = 160 '\240', tnumb = 194 '\302', proto = 252 '\374', xform = 247
> '\367', encap = 32767, reqid = 0, spi = {{cookies = {i =
> "\030\275\353\366\377\177\000",
>                     r = "\000z\377\367\377\177\000"}, spi = 4142644504,
> cpi = 48408}, size = 1 '\001'}, ciph_id = 0, ciph_kl = 0, hash_id = 33056,
> dhgr_id = 63212, auth_id = 32767, life_sec = 0, life_kbs = 0},
> proposal_ipcomp = {pnumb = 160 '\240', tnumb = 194 '\302', proto = 252
> '\374', xform = 247 '\367',
>               encap = 32767, reqid = 0, spi = {{cookies = {i =
> "\000\000\000\000\000\000\000", r = "x\334\374\367\377\177\000"}, spi = 0,
> cpi = 0}, size = 224 '\340'}, ciph_id = 32767, ciph_kl = 0, hash_id = 3401,
> dhgr_id = 64, auth_id = 0, life_sec = 4142697712, life_kbs = 32767}, ikei =
> {<_ITH_IPCC> = {
>                 conn_wake = {9, 10}, conn = -1}, <No data fields>}, stats
> = {peer = {{saddr = {sa_family = 0, sa_data = '\000' <repeats 13 times>},
> saddr4 = {sin_family = 0, sin_port = 0, sin_addr = {s_addr = 0}, sin_zero =
> "\000\000\000\000\000\000\000"}}}, sa_good = 0, sa_fail = 0, sa_dead = 0,
> natt = 0,
>               frag = false, dpd = false}, fpath = {_vptr._BDATA =
> 0x7ffff7bc5d70 <vtable for _BDATA+16>, data_buff = 0x0, data_real = 0,
> data_size = 0, data_oset = 0}, fpass = {_vptr._BDATA = 0x7ffff7bc5d70
> <vtable for _BDATA+16>, data_buff = 0x0, data_real = 0, data_size = 0,
> data_oset = 0}, username = {
>               _vptr._BDATA = 0x7ffff7bc5d70 <vtable for _BDATA+16>,
> data_buff = 0x0, data_real = 0, data_size = 0, data_oset = 0}, password =
> {_vptr._BDATA = 0x7ffff7bc5d70 <vtable for _BDATA+16>, data_buff = 0x0,
> data_real = 0, data_size = 0, data_oset = 0}, autoconnect = false,
> suspended = false,
>             config = {<_IDB_LIST> = {_vptr._IDB_LIST = 0x7ffff7dd8cf0
> <vtable for _CONFIG+16>, entry_list = 0x0, entry_max = 0, entry_num = 0},
> id = {_vptr._BDATA = 0x7ffff7bc5d70 <vtable for _BDATA+16>, data_buff =
> 0x614650 "rtk", data_real = 4, data_size = 4, data_oset = 0}, ispublic =
> true},
>             cstate = CLIENT_STATE_DISCONNECTED}, el = 0x606750}
>         exit = false
>
>

I can't resolve error by my self, but believe this is not hard for
mantainer ...

Ready to supply needed info.

P.S.
Options for compilation:
cmake -DCMAKE_INSTALL_PREFIX=/usr -DQTGUI=YES -DETCDIR=/etc -DNATT=YES
-DDEBUG=TRUE

Ubuntu version: DISTRIB_DESCRIPTION="Ubuntu 13.04"


One more note:
If I use graphic interface - all works fine and I'm get able t oconnect to
VPN server.

But I want to automate connection and so try to use ikec programm.


-- 
С Уважением,
Ермолин Илья

Ermolin Ilya
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.shrew.net/pipermail/vpn-devel/attachments/20140611/41d6261a/attachment-0001.html>


More information about the vpn-devel mailing list