vysheng / tg

telegram-cli
GNU General Public License v2.0
6.51k stars 1.54k forks source link

Can not connect (tgl/mtproto-utils.c:101: BN2ull: Assertion `0' failed) #1070

Open portiSk8er opened 8 years ago

portiSk8er commented 8 years ago

hi this is my problem:

pi@raspberrypi:~/tg $ bin/telegram-cli Telegram-cli version 1.4.1, Copyright (C) 2013-2015 Vitaly Valtman Telegram-cli comes with ABSOLUTELY NO WARRANTY; for details typeshow_license'. This is free software, and you are welcome to redistribute it under certain conditions; type `show_license' for details. Telegram-cli uses libtgl version 2.1.0 Telegram-cli includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit. (http://www.openssl.org/) I: config dir=[/home/pi/.telegram-cli]

telegram-cli: tgl/mtproto-utils.c:101: BN2ull: Assertion 0' failed. SIGNAL received

I am new at this I would greatly appreciate your help. From already thank you very much

portiSk8er commented 8 years ago

The error think you would find this piece of code.

sin titulo

SoNickRND commented 8 years ago

Have the same issue. Using Ubuntu studio with XFCE 4.10 @ eee pc 900

Linux 3.13.0-83-generic #127-Ubuntu SMP Fri Mar 11 00:26:47 UTC 2016 i686 i686 i686 GNU/Linux

Basketeer commented 8 years ago

Same issue here. Running on Raspberry Pi using Linux 4.1.20+ #867 Wed Mar 23 20:09:16 GMT 2016 armv6l GNU/Linux

Basketeer commented 8 years ago

I now got the client running by commenting out lines 101 and 115 in tgl/mtproto-utils.c and recompiling it. I know - a bad hack but it works for now ;)

SoNickRND commented 8 years ago

Thanks @Basketeer! Works for me too.

tsjk commented 8 years ago

I have this problem as well, on an ALARM Raspberry Pi (Linux 4.1.20-3-ARCH #1 Wed Mar 23 18:59:03 MDT 2016 armv6l GNU/Linux). Will try to comment those lines.

eth0lv commented 8 years ago

I have the same problem on my Raspberry Pi 2 (Linux raspberrypi 4.1.19-v7+ #858 SMP Tue Mar 15 15:56:00 GMT 2016 armv7l GNU/Linux). Someone solved this problem?

alexander-f commented 8 years ago

Yes, it is solved, as @Basketeer has written above: In file tgl/mtproto-utils.c, replace in lines 101 and 115 assert (0); // As long as nobody ever uses this code, assume it is broken. by //assert (0); // As long as nobody ever uses this code, assume it is broken. (or delete the lines) and run make again.

This solved the problem on my Raspberry Pi. Afterwards I was able to send and receive messages. So the statement "As long as nobody ever uses this code, assume it is broken" is no longer correct. The code is used and seems to be not broken.

ericabxy commented 8 years ago

+1 this issue. Hope it gets addressed soon. :-)

mohamed-soubhi commented 8 years ago

same issue http://s32.postimg.org/dv04733f9/screenshot_22.png

mohamed-soubhi commented 8 years ago

@alexander-f please give us steps to solve it

maikxmh commented 8 years ago

Thanks @Basketeer! Works fine on my Raspberry! :+1:

vektorious commented 8 years ago

Hey guys,

I tried commented line 101 and 115 and I still get the same error message: mtproto-utils.c:

static unsigned long long BN2ull (TGLC_bn _b) { if (sizeof (unsigned long) == 8) { return TGLC_bn_getword (b); } else if (sizeof (unsigned long long) == 8) { // assert (0); // As long as nobody ever uses this code, assume it is broken. unsigned long long tmp; / Here be dragons, but it should be okay due to be64toh / TGLC_bn_bn2bin (b, (unsigned char ) &tmp); return be64toh (tmp); } else { assert (0); } }

Message:

pi@raspberrypi:~/tg $ telegram-cli -k tg-server.pub Telegram-cli version 1.4.1, Copyright (C) 2013-2015 Vitaly Valtman Telegram-cli comes with ABSOLUTELY NO WARRANTY; for details type show_license'. This is free software, and you are welcome to redistribute it under certain conditions; typeshow_license' for details. Telegram-cli uses libtgl version 2.1.0 Telegram-cli includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit. (http://www.openssl.org/) I: config dir=[/home/pi/.telegram-cli]

telegram-cli: tgl/mtproto-utils.c:101: BN2ull: Assertion `0' failed. SIGNAL received

Do you have any idea what to do now? I already tried to delete the line and also a complete reset but the error consists.

Thanks in advance!

Krypt0n commented 8 years ago

If line 101 is commented out you will not get an error message caused by line 101. Line 101 will not be as before integrated in compilation. Please run "make" again and check if u run the correct "telegram-cli" binary, it will be generated at "tg/bin/telegram-cli". Your call "pi@raspberrypi:~/tg $ telegram-cli -k tg-server.pub" does not call the binary of the "bin" dir, or did you make n symbolic link?

AND what is this: / Here be dragons, but it should be okay due to be64toh */

"/" ist not a correct comment start, revert it to look like this:

/* Here be dragons, but it should be okay due to be64toh */

woakesd commented 8 years ago

This appears only to be an issue when building on 32 bit linux. I don't get this on 64 bit ubuntu.

A not very useful work around is to copy an existing .telegram_cli into the user. This saves authenticating again.

pippo73 commented 8 years ago

Hi all, I can confirm the same problem on a Raspberry PI 3 and the fix posted by @Basketeer . Thank you

AndreaLombardo commented 8 years ago

Worked for me on Raspberry Pi Model B. Thanks @Basketeer

Sendery commented 8 years ago

It works for me Ubuntu 12.04 32bits i386

roidaponte commented 8 years ago

Worked for me on Raspberry Pi Model B. Thanks @Basketeer

TixleTeam commented 8 years ago

Hi guys. I get this error:

pi@raspberrypi:~/tg $ bin/telegram-cli Telegram-cli version 1.4.1, Copyright (C) 2013-2015 Vitaly Valtman Telegram-cli comes with ABSOLUTELY NO WARRANTY; for details typeshow_license'. This is free software, and you are welcome to redistribute it under certain conditions; typeshow_license' for details. Telegram-cli uses libtgl version 2.1.0 Telegram-cli includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit. (http://www.openssl.org/) I: config dir=[/home/pi/.telegram-cli]

how to fix it?please help ;)

Mauricio1405 commented 7 years ago

what is the route of tg ?

alonek1 commented 7 years ago

solved by commenting those two lines.

kasumiru commented 7 years ago

It works for me CentOS release 6.5 (Final)

a-x- commented 7 years ago

jfi, my installation instruction for debian based os (for rpi too) now:

### setup tg-cli

# https://github.com/vysheng/tg

sudo apt-get install libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev libjansson-dev libpython-dev make
cd ~/services/
git clone --recursive https://github.com/vysheng/tg.git && cd tg
cd tgl
git remote set-url origin  git@github.com:a-x-/tgl.git
git fetch && git checkout patch-1
cd ..
./configure && make
ln -s ~/services/tg/bin/telegram-cli ~/bin
sudo mkdir -p /etc/telegram-cli
sudo cp tg-server.pub /etc/telegram-cli/server.pub

telegram-cli -W

link: https://gist.github.com/a-x-/2530f94f838f7fc910563786269ebe03

johngh commented 6 years ago

Thanks a-x- !!!

If you don't have SSH keys set up for github (see below) you get a fatal error when you do:

git remote set-url origin git@github.com:a-x-/tgl.git

It dies with:

Permission denied (publickey). fatal: The remote end hung up unexpectedly

If you get that error, and you don't want to setup SSH keys from the account you're on, you can use this instead:

git remote set-url origin https://github.com/a-x-/tgl.git

and that works fine.

See https://help.github.com/articles/error-permission-denied-publickey/ for more details on keys.

Abdullrahman-Dawaliby commented 1 year ago

hello people i have installed telegram client from apt and faced the same error so how to fix? do i need to remove and build from source??

➜  telegram-cli telegram-cli -vvv                         
Telegram-cli version 1.4.1, Copyright (C) 2013-2015 Vitaly Valtman
Telegram-cli comes with ABSOLUTELY NO WARRANTY; for details type `show_license'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show_license' for details.
Telegram-cli uses libtgl version 2.1.0
I: config dir=[/home/abdullrahman_dawaliby/.telegram-cli]
 *** 1681562930.508853 public key '/etc/telegram-cli/server.pub' loaded successfully
 *** 1681562930.509163 Couldn't open public key file: tg-server.pub
 *** 1681562930.509230 Can not load key tg-server.pub
 *** 1681562930.509291 'direct' public key loaded successfully
 *** 1681562930.509638 DC1 '' update: 149.154.175.50:443
 *** 1681562930.509731 DC2 '' update: 149.154.167.51:443
 *** 1681562930.509782 DC3 '' update: 149.154.175.100:443
 *** 1681562930.509832 DC4 '' update: 149.154.167.91:443
 *** 1681562930.509881 DC5 '' update: 149.154.171.5:443
 *** 1681562931.229927 outbound rpc connection from dc #2 becomed ready
 *** 1681562931.240031 outbound rpc connection from dc #4 becomed ready
 *** 1681562931.276928 outbound rpc connection from dc #1 becomed ready
 *** 1681562931.285241 outbound rpc connection from dc #3 becomed ready
 *** 1681562931.308155 outbound rpc connection from dc #5 becomed ready
> telegram-cli: mtproto-utils.c:101: BN2ull: Assertion `0' failed.
SIGNAL received
htelegram-cli(print_backtrace+0x32)[0x499d32]
telegram-cli(termination_signal_handler+0x81)[0x499de1]
linux-gate.so.1(__kernel_sigreturn+0x0)[0xb7f2f564]
linux-gate.so.1(__kernel_vsyscall+0x9)[0xb7f2f559]
/lib/i386-linux-gnu/libc.so.6(gsignal+0xc2)[0xab063e02]
/lib/i386-linux-gnu/libc.so.6(abort+0x129)[0xab04c306]
/lib/i386-linux-gnu/libc.so.6(+0x191d1)[0xab04c1d1]
/lib/i386-linux-gnu/libc.so.6(+0x28e29)[0xab05be29]
/lib/i386-linux-gnu/libtgl-0.0.0.20160623.so.0(+0xc82ae)[0xab2e42ae]
/lib/i386-linux-gnu/libtgl-0.0.0.20160623.so.0(+0x9e9aa)[0xab2ba9aa]
/lib/i386-linux-gnu/libtgl-0.0.0.20160623.so.0(+0xa2161)[0xab2be161]
/lib/i386-linux-gnu/libtgl-0.0.0.20160623.so.0(+0xc980d)[0xab2e580d]
/lib/i386-linux-gnu/libevent-2.1.so.7(+0x21405)[0xb7ecc405]
/lib/i386-linux-gnu/libevent-2.1.so.7(event_base_loop+0x519)[0xb7eccb49]
telegram-cli(net_loop+0x11e)[0x49b3fe]
telegram-cli(loop+0x197)[0x49c757]
telegram-cli(inner_main+0x17)[0x499317]
telegram-cli(main+0x262)[0x498342]
/lib/i386-linux-gnu/libc.so.6(__libc_start_main+0x106)[0xab04de46]
telegram-cli(_start+0x31)[0x498511]