mirror of
https://github.com/irssi/irssi.git
synced 2026-08-08 19:30:15 +02:00
The client of the future
https://irssi.org
- C 90.6%
- XS 3.4%
- Perl 2.1%
- Meson 2%
- Prolog 1.5%
- Other 0.4%
The body of a CTCP message received over IRC (PRIVMSG/NOTICE) is concatenated into a dynamic signal name and emitted via signal_emit in ctcp_msg/ctcp_reply (ctcp.c) and the DCC sub-dispatch ctcp_msg_dcc/ctcp_reply_dcc (dcc.c). The first whitespace-separated token becomes the CTCP command and is interned as a signal name; the remainder is delivered to any matching handler, including loaded perl scripts. signal_emit interns unknown signal names permanently in the global signal-name registry (module_get_uniq_id_str g_strdup's the name into two hash tables that are freed only at exit). With no length or count cap on the IRC-CTCP path, a remote user sending many distinct CTCP command names grows the registry without bound, exhausting memory and crashing the victim's irssi. |
||
|---|---|---|
| .github/workflows | ||
| .obs | ||
| docs | ||
| fuzz-support | ||
| scripts | ||
| src | ||
| subprojects | ||
| tests | ||
| themes | ||
| utils | ||
| .clang-format | ||
| .gitattributes | ||
| .gitignore | ||
| .muon_fmt.ini | ||
| AUTHORS | ||
| COPYING | ||
| INSTALL | ||
| irssi-icon.png | ||
| irssi.conf | ||
| MANIFEST.in | ||
| meson.build | ||
| meson_options.txt | ||
| NEWS | ||
| README.md | ||
| TODO | ||
Irssi
Irssi is a modular text mode chat client. It comes with IRC support built in, and there are third party ICB, SILC, XMPP (Jabber), PSYC and Quassel protocol modules available.
Download information
Development source installation
git clone https://github.com/irssi/irssi
cd irssi
meson Build
ninja -C Build && sudo ninja -C Build install
Release source installation
- Download release
- Verify signature
tar xJf irssi-*.tar.xz
cd irssi-*
meson Build
ninja -C Build && sudo ninja -C Build install
Requirements
- glib-2.32 or greater
- openssl
- perl-5.8 or greater (for perl support)
- terminfo or ncurses (for text frontend)
See the INSTALL file for details
Documentation
- New users guide
- Questions and Answers
- Check the built-in
/HELP, it has all the details on command syntax
Themes
Scripts
Modules
Security information
Please report security issues to staff@irssi.org. Thanks!
Bugs / Suggestions / Contributing
Check the GitHub issues if it is already listed in there; if not, open an issue on GitHub or send a mail to staff@irssi.org.
Irssi is always looking for developers. Feel free to submit patches through GitHub pull requests.
You can also contact the Irssi developers in #irssi on irc.libera.chat.
