Patrick Griffis [Mon, 21 Sep 2020 18:22:50 +0000 (11:22 -0700)]
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.
Patrick Griffis [Thu, 17 Sep 2020 22:50:28 +0000 (15:50 -0700)]
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.
Patrick [Fri, 15 May 2020 06:15:14 +0000 (23:15 -0700)]
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.
GDB is usually able to debug executables with ASLR by temporarily
disabling ASLR when running that executable. This is only supported on
Linux. On Windows, GDB cannot debug ASLR executables.
This removes the dynamicbase linker flag on Windows for debug builds in
order to be able to debug that executable later.
Hardening an executable with ASLR is important for release builds, but
for debug builds being able to debug is much more important.
win32: Fix building executables with invalid entrypoints
Windows builds of the GTK frontend use the pie flag to compile
hexchat.exe. Windows needs an explicit entrypoint when compiling with
--pie, otherwise an invalid executable is created.
This sets the entrypoint of the executable on Windows (as it is
currently set in the Visual Studio project files).
This fixes a critical build issue which prevents all Windows builds
using Meson from working.
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.
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
James Clarke [Wed, 1 Jan 2020 20:37:39 +0000 (20:37 +0000)]
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.
Simon Levermann [Wed, 23 Oct 2019 07:06:03 +0000 (09:06 +0200)]
Ignore some non-interesting filesystem types
Generally, how much space we have in squashfs, or tmpfs shouldn't
interest us. This becomes more relevant in distros like Ubuntu, where
snaps are a thing, and each snap mounts their own FS in a squashfs that
is always full, thus falsifying the output of sysinfo.
Patrick Griffis [Thu, 26 Jul 2018 13:53:29 +0000 (09:53 -0400)]
build: Add with-appdata option
This is mostly useful to avoid a newer gettext dependency
for translating the appdata file but it is also just useless
data for some distros without any app store.
Rainer Müller [Fri, 30 Mar 2018 22:53:56 +0000 (00:53 +0200)]
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.
Rainer Müller [Mon, 26 Mar 2018 14:53:02 +0000 (16:53 +0200)]
build: perl as a dependency in meson.build
With the switch to meson, the problem previously fixed in #1822 came
back. The build system might pick up the installed hexchat-config.h
instead of using the header in the source directory, as the compiler
arguments would be in the order of "-I${prefix}/include -I..".
It seems that the c_args in meson are always put to the front of the
compiler arguments, in order to be able to override any include paths
from dependencies. However, this was not the intention here, so perl
should also be modeled as a dependency. This ensures that the arguments
with local include directories come first.
Patrick Griffis [Sun, 18 Mar 2018 15:02:54 +0000 (11:02 -0400)]
build: Re-add support for the legacy perl api
This was accidentally left behind, expose it beind an option as
with the old build system but default to false now. Enough time
has passed and only distros that care about it can enable it.
Patrick Griffis [Sat, 17 Mar 2018 00:31:16 +0000 (20:31 -0400)]
Remove shift+click to close tab binding
It is an odd binding that conflicts with typical behavior
where shift click selects multiple items and there is
already the middle click shortcut to close tabs quickly.