Giter VIP home page Giter VIP logo

fish-irssi's People

Contributors

btuduri avatar deffi420 avatar falsovsky avatar hugopeixoto avatar mpolden avatar t-svensson avatar wahjava avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fish-irssi's Issues

Mac OSX install instructions

Hi

I had to compile fish under Mac OSX, maybe the following instructions should be added to the homepage

first, install MacPorts from https://www.macports.org/
sudo port install glib2 libsodium

Compilation is working fine. You need macports because glib libs are not found when using brew.

Lowercase #channels and nicks in Blow.ini

Theres a problem with /setkey and /delkey

It now allows to do the following:

/setkey #DeadBSD teste
/setkey #deadBSD teste

And in the blow.ini it will add two records:

[DeadBSD:#DeadBSD]
key=+OK TilrA0ZzF3A0

[DeadBSD:#deadBSD]
key=+OK TilrA0ZzF3A0

This should not happen.

irssi crash on cbc branch

During testing of new module from cbc branch #12 irssi crashes with what looks like heap corruption.

OS: debian 7.11
libc: 2.13-38+deb7u12
irssi: 0.8.15-5+deb7u6
fish: r286-1e34b9d

Had a friend on mirc /keyx me, which didn't seem to work:

22:59:11 FiSH: Received DH1080 public key from p@net (CBC), sending mine...
22:59:11         notice | -p!p@host- DH1080_INIT 
1Gie/KGhdDbmMpxr1z4nmqLYF2aF42025eUUQuIPUuKnjM1+CrsWslOud9jiejaxdoJrjTCX/x3+0O4YQSy7hrTKBN79kx3Ks7N8z6Bu/tu1gbzanK8kbFVEYdUKtos80SP3zm5XdNn0zwe5ndHfMn9ssl5tItFwuJ6KxTT5UDGw+HlekmMUA CBC
22:59:26              p | +OK *O16kcdsu5YUd8nIfo2dR0w==
22:59:35        somnial | hmm
23:00:16              p | +OK *VPPDS74w1x8e2X99KlpnLIO/d/vq99jtuFKjZijZ3TQ=
23:00:27              p | +OK *CZnTsWib8PetKtsiuyKzzFi7lbSQpb1bKQUeRDVlxKo1w3IEKK372EEAoq3UI+/L

A couple seconds after, irssi crashed. I was also in some encrypted channels. Trace below:

*** glibc detected *** irssi: double free or corruption (out): 0x000000002528a800 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x75bb6)[0x7f5ad8b7cbb6]
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x6c)[0x7f5ad8b8195c]
/usr/local/lib/x86_64-linux-gnu/irssi/modules/libfish.so(freeIni+0x25)[0x7f5ad82a83e2]
/usr/local/lib/x86_64-linux-gnu/irssi/modules/libfish.so(getContactKey+0x118)[0x7f5ad82a89c4]
/usr/local/lib/x86_64-linux-gnu/irssi/modules/libfish.so(FiSH_decrypt+0x251)[0x7f5ad82a8f55]
/usr/local/lib/x86_64-linux-gnu/irssi/modules/libfish.so(decrypt_msg+0x96)[0x7f5ad82a93d6]
irssi[0x48df32]  
irssi(signal_emit+0xbd)[0x48e3dd]
irssi[0x431abe]  
irssi[0x48df32]  
irssi(signal_emit+0xbd)[0x48e3dd]
irssi[0x45a3e0]  
irssi[0x48df32]  
irssi(signal_emit_id+0xb8)[0x48e4c8]
irssi[0x48df32]  
irssi(signal_emit_id+0xb8)[0x48e4c8]
irssi[0x45a2b1]  
irssi[0x480fd0]  
/lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_dispatch+0x135)[0x7f5ad9984355]
/lib/x86_64-linux-gnu/libglib-2.0.so.0(+0x4a688)[0x7f5ad9984688]
/lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_iteration+0x34)[0x7f5ad9984744]
irssi(main+0x1dc)[0x4190ec]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xfd)[0x7f5ad8b25ead]
irssi[0x419349]  
======= Memory map: ========
00400000-004d2000 r-xp 00000000 09:02 9834395                            /usr/bin/irssi (deleted)
006d2000-006de000 rw-p 000d2000 09:02 9834395                            /usr/bin/irssi (deleted)
006de000-006df000 rw-p 00000000 00:00 0
01570000-33cfc000 rw-p 00000000 00:00 0                                  [heap]
7f5ad0000000-7f5ad0021000 rw-p 00000000 00:00 0
7f5ad0021000-7f5ad4000000 ---p 00000000 00:00 0
7f5ad60b9000-7f5ad617b000 rw-p 00000000 00:00 0
7f5ad61bc000-7f5ad61be000 r-xp 00000000 09:02 9831416                    /usr/lib/perl5/auto/Text/CharWidth/CharWidth.so
7f5ad61be000-7f5ad63bd000 ---p 00002000 09:02 9831416                    /usr/lib/perl5/auto/Text/CharWidth/CharWidth.so
7f5ad63bd000-7f5ad63be000 rw-p 00001000 09:02 9831416                    /usr/lib/perl5/auto/Text/CharWidth/CharWidth.so
7f5ad63be000-7f5ad63bf000 ---p 00000000 00:00 0
7f5ad63bf000-7f5ad6bbf000 rw-p 00000000 00:00 0
7f5ad6bbf000-7f5ad6bc3000 r-xp 00000000 09:02 10099974                   /usr/lib/perl/5.14.2/auto/Digest/MD5/MD5.so (deleted)
7f5ad6bc3000-7f5ad6dc2000 ---p 00004000 09:02 10099974                   /usr/lib/perl/5.14.2/auto/Digest/MD5/MD5.so (deleted)
7f5ad6dc2000-7f5ad6dc3000 r--p 00003000 09:02 10099974                   /usr/lib/perl/5.14.2/auto/Digest/MD5/MD5.so (deleted)
7f5ad6dc3000-7f5ad6dc4000 rw-p 00004000 09:02 10099974                   /usr/lib/perl/5.14.2/auto/Digest/MD5/MD5.so (deleted)
7f5ad6dc4000-7f5ad6dcb000 r-xp 00000000 09:02 9837278                    /usr/lib/perl/5.14.2/auto/Socket/Socket.so (deleted)
7f5ad6dcb000-7f5ad6fca000 ---p 00007000 09:02 9837278                    /usr/lib/perl/5.14.2/auto/Socket/Socket.so (deleted)
7f5ad6fca000-7f5ad6fcc000 r--p 00006000 09:02 9837278                    /usr/lib/perl/5.14.2/auto/Socket/Socket.so (deleted)
7f5ad6fcc000-7f5ad6fcd000 rw-p 00008000 09:02 9837278                    /usr/lib/perl/5.14.2/auto/Socket/Socket.so (deleted)
7f5ad6fcd000-7f5ad6fd1000 r-xp 00000000 09:02 9837271                    /usr/lib/perl/5.14.2/auto/Fcntl/Fcntl.so (deleted)
7f5ad6fd1000-7f5ad71d0000 ---p 00004000 09:02 9837271                    /usr/lib/perl/5.14.2/auto/Fcntl/Fcntl.so (deleted)
7f5ad71d0000-7f5ad71d1000 r--p 00003000 09:02 9837271                    /usr/lib/perl/5.14.2/auto/Fcntl/Fcntl.so (deleted)
7f5ad71d1000-7f5ad71d2000 rw-p 00004000 09:02 9837271                    /usr/lib/perl/5.14.2/auto/Fcntl/Fcntl.so (deleted)
7f5ad71d2000-7f5ad71d6000 r-xp 00000000 09:02 9837274                    /usr/lib/perl/5.14.2/auto/IO/IO.so (deleted)
7f5ad71d6000-7f5ad73d5000 ---p 00004000 09:02 9837274                    /usr/lib/perl/5.14.2/auto/IO/IO.so (deleted)
7f5ad73d5000-7f5ad73d6000 r--p 00003000 09:02 9837274                    /usr/lib/perl/5.14.2/auto/IO/IO.so (deleted)
7f5ad73d6000-7f5ad73d7000 rw-p 00004000 09:02 9837274                    /usr/lib/perl/5.14.2/auto/IO/IO.so (deleted)
7f5ad73d7000-7f5ad73dc000 r-xp 00000000 09:02 10099981                   /usr/lib/perl/5.14.2/auto/Time/HiRes/HiRes.so (deleted)
7f5ad73dc000-7f5ad75db000 ---p 00005000 09:02 10099981                   /usr/lib/perl/5.14.2/auto/Time/HiRes/HiRes.so (deleted)
7f5ad75db000-7f5ad75dc000 r--p 00004000 09:02 10099981                   /usr/lib/perl/5.14.2/auto/Time/HiRes/HiRes.so (deleted)
7f5ad75dc000-7f5ad75dd000 rw-p 00005000 09:02 10099981                   /usr/lib/perl/5.14.2/auto/Time/HiRes/HiRes.so (deleted)
7f5ad75dd000-7f5ad75e5000 r-xp 00000000 09:02 10099979                   /usr/lib/perl/5.14.2/auto/Data/Dumper/Dumper.so (deleted)
7f5ad75e5000-7f5ad77e4000 ---p 00008000 09:02 10099979                   /usr/lib/perl/5.14.2/auto/Data/Dumper/Dumper.so (deleted)
7f5ad77e4000-7f5ad77e5000 r--p 00007000 09:02 10099979                   /usr/lib/perl/5.14.2/auto/Data/Dumper/Dumper.so (deleted)
7f5ad77e5000-7f5ad77e6000 rw-p 00008000 09:02 10099979                   /usr/lib/perl/5.14.2/auto/Data/Dumper/Dumper.so (deleted)
7f5ad77e6000-7f5ad77f0000 r-xp 00000000 09:02 10227680                   /usr/lib/perl5/auto/Irssi/TextUI/TextUI.so (deleted)
7f5ad77f0000-7f5ad79f0000 ---p 0000a000 09:02 10227680                   /usr/lib/perl5/auto/Irssi/TextUI/TextUI.so (deleted)
7f5ad79f0000-7f5ad79f1000 rw-p 0000a000 09:02 10227680                   /usr/lib/perl5/auto/Irssi/TextUI/TextUI.so (deleted)
7f5ad79f1000-7f5ad7a00000 r-xp 00000000 09:02 10227676                   /usr/lib/perl5/auto/Irssi/Irc/Irc.so (deleted)
7f5ad7a00000-7f5ad7c00000 ---p 0000f000 09:02 10227676                   /usr/lib/perl5/auto/Irssi/Irc/Irc.so (deleted)
7f5ad7c00000-7f5ad7c01000 rw-p 0000f000 09:02 10227676                   /usr/lib/perl5/auto/Irssi/Irc/Irc.so (deleted)
7f5ad7c01000-7f5ad7c11000 r-xp 00000000 09:02 10227677                   /usr/lib/perl5/auto/Irssi/UI/UI.so (deleted)
7f5ad7c11000-7f5ad7e10000 ---p 00010000 09:02 10227677                   /usr/lib/perl5/auto/Irssi/UI/UI.so (deleted)
7f5ad7e10000-7f5ad7e11000 rw-p 0000f000 09:02 10227677                   /usr/lib/perl5/auto/Irssi/UI/UI.so (deleted)
7f5ad7e11000-7f5ad7e32000 r-xp 00000000 09:02 10227672                   /usr/lib/perl5/auto/Irssi/Irssi.so (deleted)
7f5ad7e32000-7f5ad8032000 ---p 00021000 09:02 10227672                   /usr/lib/perl5/auto/Irssi/Irssi.so (deleted)
7f5ad8032000-7f5ad8033000 rw-p 00021000 09:02 10227672                   /usr/lib/perl5/auto/Irssi/Irssi.so (deleted)
7f5ad808d000-7f5ad80a2000 r-xp 00000000 09:02 11796484                   /lib/x86_64-linux-gnu/libgcc_s.so.1Aborted

wrong info for blow.ini

how do I remove > prefix?
i have set on blow.ini

how do I remove>

[FiSH]
process_incoming=1
process_outgoing=1
mark_position=0
mark_encrypted=
plain_prefix="+p "
mark_broken_block=0

[net:#chan]
key=+OK 9faqY11zc810.cskJ18rM.

but still announce prefix >

implicit declaration of ischannel

Hello,
with the latest version of your fish module I get the following error/warning during make
/root/sources/FiSH-irssi/src/FiSH.c: In function ‘decrypt_msg’: /root/sources/FiSH-irssi/src/FiSH.c:235:6: warning: implicit declaration of function ‘ischannel’ [-Wimplicit-function-declaration] if (ischannel(*target)) ^
It finishes to build successfully, but whenever I try to load it, i get the following error in irssi:
*** Irssi: Error loading module fish/fish: /usr/local/lib/irssi/modules/libfish.so: undefined symbol: ischannel

Is this an error on my side?

Lower FiSH ABI version with newest irssi release

I cloned the latest irssi repo and installed it. When I start irssi, I show "Irssi v1.1-g540639e0" as the version number.

I then cloned the repo and rebuilt FiSH following the instructions in the README. When I type '/load fish' I get the following message:

21:08 Irssi: fish/fish is ABI version 7 but Irssi is version 8, cannot load

I came from version 0.8.19 and FiSH was working flawlessly. This may very well be user error, but I figured I would raise an issue here just in case.

refuse to read blow.ini password.

i built this module successfully yesterday.
i tried just switching out my old libfish.so (from fish.secure.la).
unloaded the old, replacing the file, loaded yours.
it complained about not having a blow.ini password even though i have.
i even tried setting a new password, unload, load. no avail.
tried unloading the module, removing blow.ini, loading the module, set password, unload, load.
still didn't seem to read/set a password.
am i alone with this?

Make fails

I'm on gentoo 64-bit:

`[ 14%] Building C object CMakeFiles/fish.dir/base64.o
[ 28%] Building C object CMakeFiles/fish.dir/blowfish.o
/home/chef/built/FiSH-irssi/src/blowfish.c:8:12: Fehler: unbekannter Typname: »uint32_t«
static uint32_t
^
/home/chef/built/FiSH-irssi/src/blowfish.c:20:12: Fehler: unbekannter Typname: »uint32_t«
static uint32_t
^
/home/chef/built/FiSH-irssi/src/blowfish.c: In Funktion »load32_be«:
/home/chef/built/FiSH-irssi/src/blowfish.c:24:13: Fehler: »uint32_t« nicht deklariert (erste Benutzung in dieser Funktion)
return (uint32_t) in[0] << 24 |
^
/home/chef/built/FiSH-irssi/src/blowfish.c:24:13: Anmerkung: jeder nicht deklarierte Bezeichner wird nur einmal für jede Funktion, in der er vorkommt, gemeldet
/home/chef/built/FiSH-irssi/src/blowfish.c:24:23: Fehler: expected »;« before »in«
return (uint32_t) in[0] << 24 |
^
/home/chef/built/FiSH-irssi/src/blowfish.c: Auf höchster Ebene:
/home/chef/built/FiSH-irssi/src/blowfish.c:29:22: Fehler: unbekannter Typname: »uint32_t«
store32_be (void *p, uint32_t v)
^
/home/chef/built/FiSH-irssi/src/blowfish.c: In Funktion »encrypt_string«:
/home/chef/built/FiSH-irssi/src/blowfish.c:53:9: Fehler: unbekannter Typname: »uint32_t«
uint32_t v;
^
/home/chef/built/FiSH-irssi/src/blowfish.c: In Funktion »decrypt_string«:
/home/chef/built/FiSH-irssi/src/blowfish.c:83:5: Fehler: unbekannter Typname: »uint32_t«
uint32_t v;
^
/home/chef/built/FiSH-irssi/src/blowfish.c:101:9: Warnung: Implizite Deklaration der Funktion »store32_be« [-Wimplicit-function-declaration]
store32_be (block + 4, v);
^
make[2]: *** [CMakeFiles/fish.dir/build.make:87: CMakeFiles/fish.dir/blowfish.o] Fehler 1
make[1]: *** [CMakeFiles/Makefile2:68: CMakeFiles/fish.dir/all] Fehler 2
make: *** [Makefile:128: all] Fehler 2
I'm on gentoo 64-bit:

[ 14%] Building C object CMakeFiles/fish.dir/base64.o
[ 28%] Building C object CMakeFiles/fish.dir/blowfish.o
/home/chef/built/FiSH-irssi/src/blowfish.c:8:12: Fehler: unbekannter Typname: »uint32_t«
static uint32_t
^
/home/chef/built/FiSH-irssi/src/blowfish.c:20:12: Fehler: unbekannter Typname: »uint32_t«
static uint32_t
^
/home/chef/built/FiSH-irssi/src/blowfish.c: In Funktion »load32_be«:
/home/chef/built/FiSH-irssi/src/blowfish.c:24:13: Fehler: »uint32_t« nicht deklariert (erste Benutzung in dieser Funktion)
return (uint32_t) in[0] << 24 |
^
/home/chef/built/FiSH-irssi/src/blowfish.c:24:13: Anmerkung: jeder nicht deklarierte Bezeichner wird nur einmal für jede Funktion, in der er vorkommt, gemeldet
/home/chef/built/FiSH-irssi/src/blowfish.c:24:23: Fehler: expected »;« before »in«
return (uint32_t) in[0] << 24 |
^
/home/chef/built/FiSH-irssi/src/blowfish.c: Auf höchster Ebene:
/home/chef/built/FiSH-irssi/src/blowfish.c:29:22: Fehler: unbekannter Typname: »uint32_t«
store32_be (void *p, uint32_t v)
^
/home/chef/built/FiSH-irssi/src/blowfish.c: In Funktion »encrypt_string«:
/home/chef/built/FiSH-irssi/src/blowfish.c:53:9: Fehler: unbekannter Typname: »uint32_t«
uint32_t v;
^
/home/chef/built/FiSH-irssi/src/blowfish.c: In Funktion »decrypt_string«:
/home/chef/built/FiSH-irssi/src/blowfish.c:83:5: Fehler: unbekannter Typname: »uint32_t«
uint32_t v;
^
/home/chef/built/FiSH-irssi/src/blowfish.c:101:9: Warnung: Implizite Deklaration der Funktion »store32_be« [-Wimplicit-function-declaration]
store32_be (block + 4, v);
^
make[2]: *** [CMakeFiles/fish.dir/build.make:87: CMakeFiles/fish.dir/blowfish.o] Fehler 1
make[1]: *** [CMakeFiles/Makefile2:68: CMakeFiles/fish.dir/all] Fehler 2
make: *** [Makefile:128: all] Fehler 2`

FiSH-irssi on Alpine

I'm trying to build FiSH-irssi on Alpine Linux and it does appear to build successfully but there is no resulting libfish.so in my irssi modules directory.

Here is the output of make clean && cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr . && make && ls -lah:

-- Using glib-2.0 2.50.2
-- Using OpenSSL 1.0.2k
-- irssi includes were found on /usr/include/irssi
-- The module will be installed by default to /usr/lib/irssi/modules
-- You can change it with 'cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr .'
-- Configuring done
-- Generating done
-- Build files have been written to: /root/FiSH-irssi
[ 14%] Building C object src/CMakeFiles/fish.dir/base64.c.o
[ 28%] Building C object src/CMakeFiles/fish.dir/blowfish.c.o
[ 42%] Building C object src/CMakeFiles/fish.dir/inifile.c.o
[ 57%] Building C object src/CMakeFiles/fish.dir/DH1080.c.o
[ 71%] Building C object src/CMakeFiles/fish.dir/FiSH.c.o
[ 85%] Building C object src/CMakeFiles/fish.dir/password.c.o
[100%] Linking C shared module libfish.so
[100%] Built target fish
total 204
drwxr-xr-x    2 root     root        4.0K Feb  4 14:19 .
drwxr-xr-x    3 root     root        4.0K Feb  1 12:46 ..
-rw-r--r--    1 root     root       14.6K Jan 13 15:04 libfe_perl.a
-rw-r--r--    1 root     root       46.0K Jan 13 15:04 libirc_proxy.a
-rw-r--r--    1 root     root      131.5K Jan 13 15:04 libperl_core.a
alpine:~/FiSH-irssi#

Any ideas why it seemingly builds it fine but no libfish.so in the irssi modules directory? Maybe I am doing something wrong.

Please optionally decrypt with ECB, even if configured for CBC

It would be nice if /setkey would operate as a hint for decryption, rather than requirement. If I "/setkey cbc:abcdef", obviously the plugin must encrypt my messages with CBC, but the decryption path could first try to decrypt with CBC, and if that fails, try to decrypt a message as ECB (with the same key). Messages successfully decoded with ECB could print an extra leading character, like the bold greater than, >! or >(ECB!).

This would help ease setup and diagnosis of client misconfiguration when several parties are coordinating over an encrypted channel.

New topics not decrypted

After a new encrypted topic is set, it is not decrypted. The topic is displayed "+OK ..." both in the topicbar and output of /topic.

I'm assuming others might not be having this issue as it's a pretty big one.

FiSH cuts off short lines

Seems that fish cuts off short lines, and lines with UTF8 letters.

Steps to reproduce:

send message like 'fäp' or 'cool' to someone, you notice that it lacks the last one or two chars.

Could not build FiSH-irssi on CentOS release v6.7 (Final) + irssi v0.8.15

[root@centos FiSH-irssi-master]# make
[ 16%] Building C object src/CMakeFiles/fish.dir/FiSH.c.o
In file included from /root/FiSH-irssi-master/src/FiSH.h:9,
from /root/FiSH-irssi-master/src/FiSH.c:2:
/root/FiSH-irssi-master/src/module.h:3:26: error: irssi-config.h: No such file or directory
In file included from /root/FiSH-irssi-master/src/module.h:5,
from /root/FiSH-irssi-master/src/FiSH.h:9,
from /root/FiSH-irssi-master/src/FiSH.c:2:
/root/irssi-0.8.15/src/common.h:66:4: error: #error uoff_t size not set
make[2]: *** [src/CMakeFiles/fish.dir/FiSH.c.o] Error 1
make[1]: *** [src/CMakeFiles/fish.dir/all] Error 2
make: *** [all] Error 2

Error

This addon doesn't works in mIRC 7.2 - Windows 7 x64, plz fix it with a whitelist.

                _..._
             .-'     '-.
            /     _    _\
           /':.  (o)  /__)
          /':. .,_    |  |
         |': ; /  \   /_/
         /  ;  `"`"    }
        ; ':.,         {
       /      ;        }
      ; '::.   ;\/\ /\ {
     |.      ':. ;``"``\
    / '::'::'    /      ;
   |':::' '::'  /       |
   \   '::' _.-`;       ;
   /`-..--;` ;  |       |
  ;  ;  ;  ;  ; |       |
  ; ;  ;  ; ;  ;        /        ,--.........,
  |; ;  ;  ;  ;/       ;       .'           -='.
  | ;  ;  ; ; /       /       .\               '
  |  ;   ;  /`      .\   _,=="  \             .'
  \;  ; ; .'. _  ,_'\.\~"   //`. \          .'
  |  ;  .___~' \ \- | |    /,\ `  \      ..'
~ ; ; ;/  =="'' |`| | |       =="''\.==''
~ /; ;/=""      |`| |`|   ==="`
~..==`     \\   |`| / /=="`
 ~` ~      /,\ / /= )")
~ ~~         _')")  
~ ~   _,=~";`
~  =~"|;  ;|       Penisbird
 ~  ~ | ;  |       =========

~ ~ |;|\ |
|/ |

multiple network support

Can we add support for server tags? It seems there is an issue when setting keys for same nick/chan when they reside on different networks.

Join IRCnet and do a /setkey #test 12345678
Join FreeNode and do a /setkey #test 87654321

This updates the key for #test on both networks. I was expecting to be able to handle it like other irssi commands using a server tag:

/msg -ircnet user123 hi there
/msg -freenode user123 hi there

But these do not seem to be supported. Any thoughts on adding support for it like this:

/setkey -freenode #test 1234
/setkey -ircnet #test 4321

Thanks for your time!

Segfault if password is entered but not set

  1. irssi
  2. /load fish
  3. /fishlogin
  4. Enter some random password and press Enter.

free(): invalid next size (fast)
Aborted (core dumped)

Arch Linux, irssi 1.1.1 (20180213 1256), FiSH-irssi 266.8418ac3

warnings after upgrading to debian buster, irssi 1.2.2

After doing a system upgrade to Debian Buster, along with compiling irssi1.2.2 and a fresh cloned FiSH-irssi I suddenly get an openssl warning after each private message (and only there).

Warnings states:
*** WARNING : deprecated key derivation used.
Using -iter or -pbkdf2 would be better.

Debian 10 - 64bit
irssi 1.2.2 from irssi.org
-- Using glib-2.0 2.58.3
-- Using OpenSSL 1.1.1c

Can't use with latest irssi

Irssi: fish/fish is ABI version 0 but Irssi is version 1, cannot load

Irssi: Client: irssi 0.8.18-g4af3a47 (20160112 2338)

Is the old ABI interface deprecated or did i build it wrong?

License?

Hello,

maybe I miss something evident, but I can't find any license next to the source. Is there any in particular, or we should assume a default copyright?

Encrypted Topic isn't decrypted AFTER fishlogin

An encrypted topic is not decrypted if i join a channel before i enter the ini password.

How to reproduce:
Join a chan with a previously encrypted topic (/topic+ foo)
Enter ini pw (/fishlogin)
See topicbar and /topic returning crypted +OK string

Fix:
Maybe update topicbar/topic content after fishlogin?

keyx ecb mode broken

When you do /keyx -ecb the first time with other person will be OK, after if you do /keyx it add "cbc=1" in blow.ini, and then if do /keyx -ecb the blow.ini is not updated

CBC encryption

Will CBC encryption be implemented? Would be very helpful for better compatibility with other irc clients.

Hilight not working?

Me and my friends have noticed that hilight is not working on any of us that have this FiSH loaded.

glib-2.0 missing

When i run 'cmake .' I got this:

`@homebridge:~/FiSH-irssi$ cmake .
-- The C compiler identification is GNU 5.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Checking for module 'glib-2.0'
-- No package 'glib-2.0' found
CMake Error at /usr/share/cmake-3.5/Modules/FindPkgConfig.cmake:367 (message):
A required package was not found
Call Stack (most recent call first):
/usr/share/cmake-3.5/Modules/FindPkgConfig.cmake:532 (_pkg_check_modules_internal)
CMakeLists.txt:23 (PKG_CHECK_MODULES)

-- Configuring incomplete, errors occurred!
See also "/home/xXXXx/FiSH-irssi/CMakeFiles/CMakeOutput.log".`

But when I then try to install it using apt I get:

`@homebridge:~/FiSH-irssi$ sudo apt-get install glib-2.0

[sudo] password for xXXXx:
Läser paketlistor… Färdig
Bygger beroendeträd
Läser tillståndsinformation… Färdig
Observera, väljer "libspice-client-glib-2.0-dev" för det reguljära uttrycket "glib-2.0"
Observera, väljer "libqt5glib-2.0-0" för det reguljära uttrycket "glib-2.0"
Observera, väljer "gir1.2-spice-client-glib-2.0" för det reguljära uttrycket "glib-2.0"
Observera, väljer "gir1.2-glib-2.0" för det reguljära uttrycket "glib-2.0"
Observera, väljer "libspice-client-glib-2.0-1" för det reguljära uttrycket "glib-2.0"
Observera, väljer "libspice-client-glib-2.0-8" för det reguljära uttrycket "glib-2.0"
Observera, väljer "libqtglib-2.0-0" för det reguljära uttrycket "glib-2.0"
gir1.2-glib-2.0 is already the newest version (1.46.0-3ubuntu1).
gir1.2-spice-client-glib-2.0 is already the newest version (0.30-1).
libqt5glib-2.0-0 is already the newest version (1.2.0-3).
libqtglib-2.0-0 is already the newest version (1.2.0-3).
libspice-client-glib-2.0-8 is already the newest version (0.30-1).
libspice-client-glib-2.0-dev is already the newest version (0.30-1).
0 att uppgradera, 0 att nyinstallera, 0 att ta bort och 96 att inte uppgradera.`

Any idea?!

fish/core is ABI version 0 but Irssi is version 7, cannot load

Hi,

im running Irssi v1.0.2-1 from debian sid, i install irssi-dev and those includes are found in /usr/include/irssi (checked by removing it and then compile fails, cmake reports /usr/include/irssi as success though).

I double checked it on a clean debian sid and get the exact same error while loading in irssi:

18:32:45 -!- Irssi v1.0.2-1 - http://www.irssi.org
18:32:48 -!- Irssi: fish/core is ABI version 0 but Irssi is version 7, cannot load
18:32:48 -!- Irssi: fish/core is ABI version 0 but Irssi is version 7, cannot load

thanks for your help

long key wil crash irssi

A long(> 96 chars ) key wil crash irssi

for example:

/setkey #testchan aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

DH1080_INIT not working

Hi, there seems to be a problem in 1on1 fish when the other party is doing the init.
For example:
DH1080_INIT
gi7IeDOV6sAsS/mQZGFu1kgdxd/4VPb+2TEunD8jOZTJ66DDgxb8KYE4P1p2XyCIG0iX9wwBPAVHJ+JOSJL+sqq10adPhLzeNc3ZXp2RCMrALSVODKQIBbYHwdABs0N96wunu/U7TmW5kxwtEW0c551dmU8Ny+u5t+As5KHqKqbN7tzSRlMYA CBC

And when I run a manual check on that nick:
16:25 -!- FiSH: Key for Nick@Network not found or invalid!

However when** I **do the /keyx, it works and we can chat encrypted. Why is that? from what I read, it seems related to Fish-irssi CBC support...

error while loading on irssi 0.8.18

When trying to load fish in new irssi i get error:
Irssi: fish/fish is ABI version 0 but Irssi is version 1, cannot load

I've compiled fish after I've compiled irssi

cmd_helpfish incomplete

I just noticed that /showkey and /fishlogin are missing in /helpfish.
Here's the patch ;-)

--- FiSH-org.c  2016-09-23 19:08:38.223277516 +0200
+++ FiSH.c  2016-09-23 19:48:23.811349642 +0200
@@ -685,6 +685,8 @@
          " /setkey [-<server tag>] [<nick | #channel>] <key>\n"
          " /delkey [-<server tag>] [<nick | #channel>]\n"
          " /key [-<server tag>] [<nick | #channel>]\n"
+         " /showkey [<nick | #channel>]\n"
+         " /fishlogin\n"
          " /keyx [<nick>] (DH1080 KeyXchange)\n"
          " /setinipw <sekure_blow.ini_password>\n" " /unsetinipw\n");
 }

mark_encrypted and other options from FiSH section not read?

Hi,

looks to me like some of the original options are not read from file upon module load is that correct? Please find attached a diff that gets the mark_encypted set

diff FiSH.c FiSH.c.fixed 
1116a1117
>       char mark_encrypted[20];
1144a1146,1149
> 
>         getIniValue("FiSH", "mark_encrypted", ">", mark_encrypted,
>                     sizeof(mark_encrypted), iniPath);
> 
1183c1188,1191
<       settings_add_str_module("fish", "fish", "mark_encrypted", "\002>\002 ");

---
>       /* settings_add_str_module("fish", "fish", "mark_encrypted", "\002>\002 "); */
> 
>       settings_add_str_module("fish", "fish", "mark_encrypted", mark_encrypted);
> 

FiSH doesn't decrypt playback messages

Using Ubuntu 16.04 based OS I run irssi in a terminal. I perform /load fish then /connect <network> to connect to my ZNC bouncer. All the cached messages get downloaded, however fish doesn't decrypt them. It takes an effect only on the further received messages.

Building on latest stable irssi

Hi,
Had some problems building script/addon on newest stable irssi 0.8.16? It cant find the include folder.. Going to try again tonight, in about 2 hours. Any ideas as irssi-dev package is installed with apt-get irssi, but that is version 0.8.15?

coredump on Ubuntu 16.04.1 LTS

Fresh install of Ubuntu LTS 16.04.1 LTS and followed the installation steps.
Compiling without errors.
Loading fish is succesfull (/load /home/mark/FiSH-irssi/src/libfish.so).
Entering a chan works.
/setkey #mychan key too.
Type something, press enter, irssi crashes.

The following is what i got from a strace:

open("/home/mark/.irssi/blow.ini", O_RDONLY) = 5
fstat(5, {st_mode=S_IFREG|0664, st_size=58, ...}) = 0
read(5, "[network:#mychan]\nkey=+OK"..., 4096) = 58
read(5, "", 4096)                       = 0
close(5)                                = 0
open("/dev/tty", O_RDWR|O_NOCTTY|O_NONBLOCK) = 5
writev(5, [{"*** Error in `", 14}, {"irssi", 5}, {"': ", 3}, {"free(): invalid next size (fast)", 32}, {": 0x", 4}, {"000055a842693d90", 16}, {" ***\n", 5}], 7) = 79

Let me know if i can provide anything more.

Mark

missing #define UOFF_*

the autotools configuration misses the option that any of the defines
UOFF_T_INT, UOFF_T_LONG or UOFF_T_LONG_LONG is set.

error in configure

Hi.

Getting errors running the configure part. Been installing packages for a while, slow internet connection..

Errors i get are:
./configure: line 11618: syntax error near unexpected token 'glib-2.0, '
./configure: line 11618: 'PKG_CHECK_EXISTS(glib-2.0, '

I know i installed glib-2.0 but is there some setting? Or another package missing?

[FEATURE-REQUEST] wait for password at startup

Hi,

when i start irssi, the module is loaded via ~/.irssi/startup file.
So i get the 'Enter password:' prompt, but in the background
irssi is connecting to the server, joining channels.
Irssi then complains 'Remove unknown settings from config file (Y/n)?'
Because of some settings like 'mark_encrypted' which are not known, as it still waits for the PW.
Is it possible to block irssi, until the pw is entered? (like the old 0.99+0.8.17)

ciao,
Z

Build on -stable

Hi, following instructions provided by README, i just ran into the following:

root@sobremenza ~/FiSH-irssi> ./regen.sh
OpenBSD detected
Please define the AUTOCONF_VERSION and AUTOMAKE_VERSION environment variables
Install at least autoconf-2.65 and automake-1.11.1p2 and run:
export AUTOCONF_VERSION=2.13
export AUTOMAKE_VERSION=1.11

Versions installed (packages are up to date)

root@sobremenza ~/FiSH-irssi> pkg_info | grep ^auto
autoconf-2.13p2 automatically configure source code on many Un_x platforms
autoconf-2.59p3 automatically configure source code on many Un_x platforms
autoconf-2.60p3 automatically configure source code on many Un_x platforms
autoconf-2.64 automatically configure source code on many Un_x platforms
automake-1.10.3p0 GNU standards-compliant Makefile generator
automake-1.9.6p5 GNU standards-compliant Makefile generator

Although, being a welltrained code copy monkey, i have tried the following:

root@sobremenza ~/FiSH-irssi> export AUTOCONF_VERSION=2.13
root@sobremenza ~/FiSH-irssi> export AUTOMAKE_VERSION=1.10
root@sobremenza ~/FiSH-irssi> ./regen.sh
OpenBSD detected
Dont forget to add --with-gmp-include=/usr/local/include --with-gmp-lib=/usr/local/lib to the configure script
/usr/local/bin/autom4te[35]: /usr/local/bin/autom4te-2.13: not found
aclocal-1.10: autom4te failed with exit status: 127
You should add the contents of /usr/local/share/aclocal/libtool.m4' toaclocal.m4'.
fgrep: configure.in: No such file or directory
fgrep: configure: No such file or directory
autoconf: configure.in: No such file or directory
Usage: autoconf [-h] [--help] [-m dir] [--macrodir=dir]
[-l dir] [--localdir=dir] [--version] [template-file]
automake-1.10: autoconf failed with exit status: 1

Is the code only tested successfully against automake 1.11 ?

This was run on:

root@sobremenza ~/FiSH-irssi> sysctl kern.version
kern.version=OpenBSD 5.0 (GENERIC) #43: Wed Aug 17 10:10:52 MDT 2011
[email protected]:/usr/src/sys/arch/i386/compile/GENERIC

Thank you for your time :-)

Prepend fish_ to config keys

Please consider adding the fish_ prefix to irssi config keys.

This would allow one to use /set fish to get a list of all the config keys used by the fish module.

configure: error: glib-2.0 is not installed

# yum list glib2
Gives:

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.mirror.iweb.ca
 * extras: centos.mirror.iweb.ca
 * updates: centos.mirror.iweb.ca
Installed Packages
glib2.i686                                2.22.5-5.el6                                 installed
glib2.x86_64                              2.22.5-5.el6                                 installed
Available Packages
glib2.i686                                2.26.1-7.el6_5                               updates
glib2.x86_64                              2.26.1-7.el6_5                               updates

Can't figure out if it's on my end or FiSH-irssi just doesn't recognize the version?

Irssi version mismatch

After the latest update of irssi on my gnu/linux box the plugin doesn't load anymore. The error says
Irssi: fish/fish is ABI version 7 but Irssi is version 13, cannot load
I think it's a very straightforward message. I'd be happy if someone else could take care of this, as I don't know enough c to do it.

Unable to compile on Debian Stretch

/tmp/FiSH-irssi# cmake .
-- Using glib-2.0 2.50.2
-- Using OpenSSL 1.1.0c
-- irssi includes were found on /usr/include/irssi
-- The module will be installed by default to /usr/local/lib/irssi/modules
-- You can change it with 'cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr .'
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/FiSH-irssi

/tmp/FiSH-irssi# make
[ 14%] Building C object src/CMakeFiles/fish.dir/base64.c.o
[ 28%] Building C object src/CMakeFiles/fish.dir/blowfish.c.o
[ 42%] Building C object src/CMakeFiles/fish.dir/inifile.c.o
[ 57%] Building C object src/CMakeFiles/fish.dir/DH1080.c.o
/tmp/FiSH-irssi/src/DH1080.c: In function ‘DH1080_Init’:
/tmp/FiSH-irssi/src/DH1080.c:46:13: error: dereferencing pointer to incomplete type ‘DH {aka struct dh_st}’
g_dh->p = BN_bin2bn(prime1080, DH1080_PRIME_BYTES, NULL);
^~
src/CMakeFiles/fish.dir/build.make:134: recipe for target 'src/CMakeFiles/fish.dir/DH1080.c.o' failed
make[2]: *** [src/CMakeFiles/fish.dir/DH1080.c.o] Error 1
CMakeFiles/Makefile2:85: recipe for target 'src/CMakeFiles/fish.dir/all' failed
make[1]: *** [src/CMakeFiles/fish.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2

Wrong documentation?

Hi. This package installs the following files when running sudo make install (unprivileged make install failed):

/usr/local/share/doc/FiSH-irssi/README.md
/usr/local/share/doc/FiSH-irssi/FiSH-irssi.txt
/usr/local/lib/irssi/modules/libfish.so

All very nice, but the documentation isn't very clear ('To run' section) with this. I am able to load the module with /load libfish or /load /path/to/libfish.so, but never with /load fish, as stated.

It would be very helpful if the documentation just said '/load libfish'.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.