Forum Discussion

fongtak's avatar
fongtak
Visitor
9 months ago

Hamachi connection corruption

Base on the recent behavior of Hamachi connection, our server team has performed the debugging and root cause analysis; then detected severe issue from Hamachi leading to this connection corruption.

 

Attached Hamachi Crash Log 

 

Hamachi client crashed files
root@webampm:/var/crash# ls -ll
total 1456
-rw-r----- 1 root root 1490854 Mar 22 11:02 _opt_logmein-hamachi
Unpack crash files with Apport
Read CoreDump with GDB
root@webampm:~/hamachi/hamachi-client-crash# gdb `cat Executable
GNU gdb (Ubuntu 9.2-0ubuntu1~20.04.1) 9.2
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licen
This is free software: you are free to change and redistribute i
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at
Hamachi client crashed 2
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /opt/logmein-hamachi/bin/hamachid...
(No debugging symbols found in /opt/logmein-hamachi/bin/hamachid
[New LWP 530268]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread
Core was generated by `/opt/logmein-hamachi/bin/hamachid'.
Program terminated with signal SIGABRT, Aborted.
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/r
50 ../sysdeps/unix/sysv/linux/raise.c: No such file or dire
Get Backtrace
(gdb) bt
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linu
x/raise.c:50
#1 0x00007f6f0b7c6859 in __GI_abort () at abort.c:79
#2 0x00007f6f0b83126e in __libc_message (action=action@entry
=do_abort, fmt=fmt@entry=0x7f6f0b95b298 "%s\n") at ../sysdep
s/posix/libc_fatal.c:155
#3 0x00007f6f0b8392fc in malloc_printerr (str=str@entry=0x7f
6f0b95dad8 "malloc(): unsorted double linked list corrupted")
at malloc.c:5347
#4 0x00007f6f0b83c2ec in _int_malloc (av=av@entry=0x7f6f0b99
0b80 <main_arena>, bytes=bytes@entry=1431) at malloc.c:3744
#5 0x00007f6f0b83e299 in __GI___libc_malloc (bytes=1431) at
malloc.c:3066
#6 0x00007f6f0baa0b29 in operator new(unsigned long) () from
/lib/x86_64-linux-gnu/libstdc++.so.6
#7 0x0000000000407812 in ?? ()
#8 0x0000000000407858 in ?? ()
#9 0x0000000000412288 in ?? ()
#10 0x000000000049226a in ?? ()
Hamachi client crashed 3
#11 0x000000000049242e in ?? ()
#12 0x000000000043faab in ?? ()
#13 0x0000000000504be9 in ?? ()
#14 0x000000000050eb48 in ?? ()
#15 0x0000000000446c9e in ?? ()
#16 0x00000000004bebe2 in ?? ()
#17 0x000000000040709e in ?? ()
#18 0x00007f6f0b7c8083 in __libc_start_main (main=0x406e00, a
rgc=1, argv=0x7ffccc3edbf8, init=<optimized out>, fini=<optim
ized out>,
rtld_fini=<optimized out>, stack_end=0x7ffccc3edbe8) at
../csu/libc-start.c:308
#19 0x00000000004076cf in ?? ()
(gdb)
Try to install glibc , but still crash some how
root@webampm:~/hamachi/hamachi-client-crash# apt install glib
c-source -y
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are n
o longer required:
libfwupdplugin1 libxmlb1
Use 'apt autoremove' to remove them.
The following NEW packages will be installed:
glibc-source
0 upgraded, 1 newly installed, 0 to remove and 44 not upgrade
d.
Need to get 18.3 MB of archives.
After this operation, 24.1 MB of additional disk space will b
e used.
Get:1 http://my.archive.ubuntu.com/ubuntu focal-updates/unive
rse amd64 glibc-source all 2.31-0ubuntu9.14 [18.3 MB]
Fetched 18.3 MB in 2s (10.2 MB/s)
Hamachi client crashed 4
Selecting previously unselected package glibc-source.
(Reading database ... 128341 files and directories currently
installed.)
Preparing to unpack .../glibc-source_2.31-0ubuntu9.14_all.deb
...
Unpacking glibc-source (2.31-0ubuntu9.14) ...
Setting up glibc-source (2.31-0ubuntu9.14) ...
root@webampm:~/hamachi/hamachi-client-crash#
All files collected from this crash issue are in this folder:
https://drive.google.com/drive/folders/1xgEb89FosPKkfAIHDE4gpUxMY8hrHXqR?
usp=sharing
Conclusion:
From the above information, we can conclude that the problem is the occasional
loss of Hamachi connection because the Hamachi Client crashes, forcing the
service to be restarted.
In addition, based on the core dump information, we can see that the cause of the
crash is mostly from the Hamachi Client software, which is having logic problems
in
malloc and raise.c .

 

 

 

Any solutions for the about issue?

 

Thanks 

  • Current hamachi Linux version is *very* old and incompatible with recent glibc used by pretty much every distro.

     

    No solution other than waiting (and hoping) for an updated Linux client.