Commit Graph

1193 Commits

Author SHA1 Message Date
Panagiotis Vasilopoulos a25f238168 Add Libera Chat to network list 2021-05-19 12:08:03 -05:00
Mike Skec cc04916137 url.c: add gemini & gopher parsing 2021-03-07 11:59:04 -05:00
Patrick Griffis 964ae72fa8 Better handle various ctime() calls failing 2021-03-03 15:39:02 -06:00
Patrick Griffis 7a275812c0 Revert word array length change
It turns out that the rfc sets a limit of 15 arguments and the
server (irccloud) sending that many in ISUPPORT was updated to
split it into multiple lines.
2020-09-21 11:22:50 -07:00
Patrick Griffis 453cb7ca79 Increase max number of words a line can be split into
This may have unintended side-effects but 32 is a very low value
and I was seeing real world bugs being caused by this. Specifically
an ISUPPORT line with more features than this could store.
2020-09-17 15:50:28 -07:00
jesopo aec72593f2 SASL EXTERNAL doesn't necessitate a certificate 2020-07-22 10:34:19 -07:00
Jan Harasym 2f376953f3 Add "DarkScience" to default server list. (#2474) 2020-05-31 17:59:06 -07:00
Patrick Griffis 53952feddd Fix parsing of 313
Closes #2472
2020-05-26 16:50:04 -07:00
Patrick f9adf88eca Remove 2ch from network list
It split into multiple networks; Both are very small and can't even match our modern guidelines like supporting TLS. I'll just use this as an opportunity to clean up the list a bit.

Closes #2465
2020-05-14 23:15:14 -07:00
delthas 82a424fc8a win32: Fix undefined symbol for builds with -with-plugin=false
Windows builds without plugins can use notification-windows.c, which
uses module_load in its notification_backend_init function.

module_load was previously guarded with a USE_PLUGIN ifdef, but we do
need this function for Windows builds even if plugins are disabled.

This fixes a critical build issue for all Windows builds without
plugins.
2020-05-02 20:38:17 -07:00
Jonathan 082f2f8ceb Remove Moznet
Mozilla's Moznet no longer exists. They migrated to Matrix.
2020-04-18 15:05:29 -07:00
DjLegolas 7b950eb021 Fixed proxy user/password buffer overflow
By using a dedicated buffer for sending the username and password for the SOCKS5 proxy, there will be no overflow when copying them to the buffer.
And therefore, RFC 1929 is fully supported.
2020-04-11 13:19:31 -07:00
kelek- 37192a9136 Updated the maximum length of the socks5 user and password to comply to RFC 1929, where both the password and the username length is definied as a maximum of 255 2020-04-11 13:19:31 -07:00
James Clarke 9c44d7baf4 Avoid prioritising MODE queries for channels with hyphens in their name
If a user has a large number of channels containing hyphens in their
names, the initial MODE queries will have the same high priority as any
PINGs, and so will block the PINGs from being sent, causing the
connection to time out due to a lack of PONGs received.
2020-01-01 16:39:11 -08:00
Patrick Griffis 202393a77c Follow more modern conventions for USER message
Closes #2399
2019-12-20 22:18:51 -08:00
Patrick Griffis 7d9f3acfc9 Fix capability negotiation ending before sasl finishes with multi-line cap
Closes #2398
2019-11-24 13:01:48 -08:00
nia 92014628d1 build: Make generated headers a dependency for users of common. 2019-07-17 11:50:16 -07:00
Stepan Broz 8bb768ef93 Fix a typo-error in src/common/hexchat.h:485 "haxchatprefs" -> "hexchatprefs" 2019-05-28 14:33:39 -07:00
Stepan Broz ed1d5061a4 Make dcc_ip being a per-server value.
Moved dcc_ip from prefs to sess->server.
2019-05-28 14:33:39 -07:00
Martin Weinelt 87470f30a9 servlist: add hackint irc network
- requires the use of TLS to connect on port 6697
- supports and encourages authentication via SASL PLAIN and EXTERNAL
2019-05-03 14:36:52 -07:00
Jared Shields ba72cc7b6d Update servlist.c
Update servlist.c
2019-04-21 18:33:24 +00:00
linuxdaemon 804f959a1d Remove : from various trailing parameters (#2301)
Partial fix for #2271 

This isn't an exhaustive list, but it's everything I could find. The bug still exists in the parser though, this is just a workaround for the moment
2019-01-30 19:46:13 -05:00
Patrick Griffis 706f9bca82 python: Rewrite with CFFI 2018-11-09 18:36:59 -05:00
Patrick Griffis 18eae24acf Fix new stringop-truncation warnings 2018-09-01 16:35:48 -04:00
Ivan fd47adf595 Fix inconsistent behavior (re)connecting on SSL 2018-08-16 22:06:36 +00:00
jkhsjdhjs 57478b6575 Fix sending PASS with spaces or starting with :
Closes #2186
Closes #1550
2018-05-08 16:27:18 -04:00
Patrick Griffis 5cd70622aa Validate all translations contain valid text events 2018-04-03 16:08:27 -04:00
Rainer Müller 5ca767f7f8 Fix plugins on macOS
The switch to the meson build system broke plugins on macOS. GNU libtool
builds shared libraries with ".dylib" and shared modules (plugins) with
the extension ".so", but meson is using ".dylib" for both.

Although overriding the name_suffix for shared_module() in meson is
possible, this would be messy for other platforms as there is no way to
query the default. Therefore it seems like we have to go with ".dylib"
for now on macOS.

However, G_MODULE_SUFFIX is defined to ".so", because glib follows what
GNU libtool does. Therefore define a separate preprocessor macro that
has the correct extension.

See: https://github.com/mesonbuild/meson/issues/1160
2018-03-31 01:29:05 +00:00
Patrick Griffis ececf2f640 Fix fscanf() usage without size limit
Closes #2137
2018-03-11 19:08:26 -04:00
Patrick Griffis 6ec523423a Fix /ignore not accepting full hosts
Fixes #1828
2018-03-09 21:34:44 -05:00
Patrick Griffis 740352ceab Remove mpcinfo plugin
The code quality of it is terrible, the user experience of using it is terrible, and it should have been removed years ago
2018-03-09 20:26:41 +00:00
Patrick Griffis 541b9ca744 win32: Update to build against gvsbuild 2018-03-09 20:26:41 +00:00
Patrick Griffis e9b9ff9f38 Various fixes for mingw 2018-03-09 18:23:25 +00:00
Patrick Griffis f6333b592b Fix out of bounds read when DCC message sender contains quotes
This cannot be triggered by any user generally.

Fixes #2128
2018-03-04 12:38:57 -05:00
Patrick Griffis 6e4fc09ce0 Fix possible out of bounds read when being ctcp flooded
Note that this is unlikely to be triggerable by another user.

Thanks to @dequis for discovering.
2018-03-02 20:56:54 -05:00
Patrick Griffis 8aa3b03261 dbus: Add option to use app-id for bus name
This is required for Flatpak but is an API break so it is opt-in
for now.
2018-02-18 04:44:59 -05:00
Patrick Griffis c6d9e26e2b Fix crash when connect commands change network
Fixes #2084
2017-10-25 15:26:26 -04:00
Joseph Bisch a3db4e5773 Fix oob read in ctcp_check
word[4] can be too short, leading to the addition of ctcp_offset
putting us out of bounds. This results in an oob read in ctcp_check.
2017-10-16 21:47:47 -04:00
Dren Kajmakchi 1452e803fb A tiny code style change 2017-10-16 05:10:32 -04:00
Ken Spencer 6f8b8c3d3c servlist: Add BuddyIM network (#2072) 2017-10-11 12:47:23 -04:00
Iwan Aucamp 8ddd5e3778 Add an option to disable rejoin on auto reconnect
This change adds an option `irc_reconnect_rejoin` (default ON)
which when turned OFF will prevent hexchat from rejoining channels
after an auto reconnect.

hexchat/hexchat#2069
2017-10-10 21:06:21 -04:00
Patrick Griffis 4188f26ab9 Improve CTCP notice handling
Cutting off all text after \001 can result in users hiding text
so lets only bother handling it if it is a valid CTCP message
(starting and ending with \001).
2017-10-07 17:31:53 -04:00
Joseph Bisch 07f1fc60da Use g_utf8_make_valid if available for cleaner utf8 handling (#2065) 2017-10-02 15:11:42 -04:00
Joseph Bisch 0c494a9c24 Fix rfc_ncasecmp handling of n reaching 0
If n becomes 0 at the same time that the end of either s1 or s2 are
reached, the next iteration of the while loop wouldn't happen, so we
wouldn't correctly return 0.
2017-09-21 21:34:14 -04:00
Patrick Griffis 053003f490 Handle leading spaces when matching extra alerts
It is common for users to set "foo, bar" and the leading space
has caused issues in the past so lets just ignore that.
2017-09-19 20:26:28 -04:00
Joseph Bisch 4a09ce6fc3 Fix rfc_{n,}casecmp functions (#2058)
rfc_casecmp was broken because reaching terminator for str1 was used as
a terminal condition and str2 may be shorter than str1, resulting in an
oob read condition for str2.

rfc_ncasecmp was broken because it checked if n characters were checked
or if BOTH pointers reached their terminator, however the strings may
be different lengths and also less than n characters in length, meaning
that they don't both reach their terminators at the same time,
resulting in an oob read condition.
2017-09-19 14:31:48 -04:00
Joseph Bisch f4a592c4f0 Fix oob read caused by ptr[0] being NULL in inbound_notice
If ptr[0] is NULL, then strchr may return a pointer to the NULL
terminator for serv->nick_prefixes, making the if statement true, which
then leads to the pointer increment leaving ptr oob. Now we check to
ensure ptr[0] != NULL.

From the Linux manpages for strchr:
The terminating null byte is considered part of the string, so that if c is
       specified as '\0', these functions return a pointer to the terminator.
2017-09-18 22:01:48 -04:00
Patrick Griffis d99cd18fb9 Improve detection of system tray support
Closes #2045
2017-08-31 10:16:03 -04:00
torhus 281038e725 UI text consistency, capitalization etc. 2017-08-19 16:49:30 -04:00
torhus da0635c960 Adjust use of ellipsis (...) in menus according to Gnome HIG (#2035)
* Adjust use of ellipses (...) in menus according to Gnome HIG

https://developer.gnome.org/hig/stable/writing-style.html.en
2017-08-18 15:59:31 -04:00