Commit Graph

1863 Commits

Author SHA1 Message Date
Sadie Powell
133f628064 Display common help numerics as SERVTEXT.
This makes it a lot easier for users to actually read.
2022-04-02 12:17:54 -05:00
Patrick
d99a98ff4c
notification: Don't print failure to load backend in UI
This isn't actually helpful information to users generally

Closes #2152
Closes #2684
2022-03-26 11:18:00 -05:00
Masoud Naservand
94efa378f7 Reverse the notify.conf linked list before writing
hexchat populates the single linked list `notify_list` defined in
`src/common/notify.c` from `notify.conf` file. Each new line read from
the file is added to the list by `g_slist_prepend()` which adds it to
the front of the list. But in `notify_save()` the list elements are read
from the start to end of the list and written to the `notify.conf`. This
means everytime hexchat is opened and closed, the contents of
`notify.conf` get reversed. This commit creates a
temporary glist in `notify_save()` and applies `g_slist_reverse()` on it
and writes the contents of this reversed list to `notify.conf`. And
solves issue #2680
2022-02-17 10:24:59 -06:00
orcus
7cff05c7ac
Add -q/-- flags to /execwrite to EXECWRITE and cmd_execW (#2675)
added two flags to EXECWRITE and cmd_execw
-q : (quiet) to allow suppressing of additional (debug) output at the text box
--  : (stop parsing for further flags) for the edge cases where -q itself migh be part of used data and the user wants to show that at the text box

Closes #2666
2022-01-24 11:38:21 -06:00
Biswapriyo Nath
a330c1cf4d sysinfo: Fix architecture detection in AArch64 Windows
AArch64 should be detected as 64 bit OS.
2022-01-21 15:54:30 -06:00
Sadie Powell
7df34cdcb2 Log when the user specifies an invalid port. 2022-01-17 18:36:49 -06:00
Sadie Powell
91adfb5917 Fix handling invalid ports.
Instead of wrapping around, which is not behaviour any reasonable
user would expect, just use the default port if above 65535.

Disallow connecting on port 0. This port has special meaning and
servers can not listen on it. It is more likely the user just
gave an invalid value to the port field as atoi("invalid") == 0.
2022-01-17 18:36:49 -06:00
Patrick
d936b653ac
Add missing header
https://github.com/hexchat/hexchat/issues/2652#issuecomment-1007015314
2022-01-06 20:36:14 -06:00
Biswapriyo Nath
d889a8e019 meson: Remove unused wbemcore dependency 2022-01-05 14:28:21 -06:00
Patrick Griffis
66f5968225 Update comment 2021-12-22 12:05:08 -06:00
Patrick Griffis
ba5d79b496 Be smarter about conditionally escaping URIs that are opened
Fixes #2659
2021-12-22 11:50:36 -06:00
Noah Keck
d07e8a8ab2 Remove wallchan command
This command doesn't have many legitimate, non-spam applications and is
easily confused for the similarly named 'wallops'. Moreover, many
netowrks now automatically punish or drop users who message many
channels at the same time, rendering the command mostly useless.

It also is too easy to tab-complete 'wall' into 'wallchan' when you
expect 'wallops' to come up first, which can lead to two very different
functions. If this is to be reintroduced it should be named something
with less similarity to 'wallops' or 'wallchops'.
2021-12-02 14:41:01 -06:00
Patrick Griffis
8443755772 Fix timer being locale dependent for decimals
`/timer .1 echo hi` now works in all locales.
2021-11-12 12:44:09 -06:00
Foxy
b54593e752
Update servlist.c (#2648)
Added irc.irc-nerds.net to the server list
2021-10-30 10:51:46 -05:00
alicetries
f42f6af1b9 Adjust parsing of RPL_WHOISSPECIAL to handle missing : for single-word whois messages
This is to support parsing the RPL_WHOISSPECIAL from unrealircd correctly if the whois message is a single word.
2021-10-20 20:48:29 -05:00
Nolan Lum
9039a5d75b
Add -NOOVERRIDE flag to GUI COLOR. (#2644) 2021-10-14 09:44:11 -05:00
Ryan Schmidt
dd6f53f504 Fix user list not tracking mode changes
The `PREFIX` key in `ISUPPORT` (usually) takes the form
`(modes)prefixes` e.g. `(ov)@+`. The current implementation will
therefore set `serv->nick_modes` to a string like `"(ov"` instead
of the desired `"ov"`. This causes the nick list to not properly
update with which users have which prefix modes. Skip over the
initial `'('` so we capture the correct modes and fix that issue.
2021-10-01 14:50:44 -05:00
Patrick Griffis
3f07670b34 win32: Update to OpenSSL 1.1 2021-10-01 13:47:42 -05:00
Patrick Griffis
2985dde7f0 Explicitly set app icon in notifications 2021-10-01 11:56:49 -05:00
Sadie Powell
8239fbd041 Be a bit less insulting about servers with longer line lengths. 2021-08-24 16:40:54 -05:00
Sadie Powell
899b4cd3eb Increase the linebuf length to fit a full message including tags. 2021-08-24 16:40:54 -05:00
Sadie Powell
ef0e670392
Remove some weird guesswork on the 004 numeric. (#2621)
Bahamut and ircu both send 005 MODES and ELIST so this is entirely
unnecessary. The other IRCd checked for here is for a dead network.

While we're editing this code fix HexChat on servers that can only
support one mode at a time (these are mostly gateway servers).
2021-08-23 10:34:13 -05:00
Patrick Griffis
91439f04c0 Fix whitespace issues 2021-07-13 12:30:47 -05:00
Patrick Griffis
c144d0468b Remove libnotify dependency
Instead just talk directly to the service. This fixes *sending*
a notification being blocking IO.
2021-07-13 12:26:34 -05:00
Patrick Griffis
cbb0927a7a build: Misc cleanup of options
Cleanup of option names, use features where applicable, and printing
of summary.
2021-07-13 11:26:59 -05:00
Michael Catanzaro
25440a07c3 Avoid direct use of libproxy
Since hexchat already depends on GLib, it's better to use GProxyResolver
instead. This might use libproxy, or not, as appropriate.

P.S. This removes a memory safety issue because proxy_list is allocated
using malloc(), not g_malloc(), and therefore using g_strfreev() is
incorrect. The proper way to free the proxy list returned by libproxy
is to use px_proxy_factory_free_proxies() (but nobody does that because
it was added in libproxy 0.4.16, which is somewhat recent).
2021-07-12 11:29:15 -05:00
Patrick Griffis
869a8d7ab3 Fix allowed characters when escaping URIs
Closes #2608
2021-07-10 11:35:35 -05:00
Patrick
c8536ed50c
servlist: Remove freenode
Closes #2604
2021-07-09 19:29:21 -05:00
Valerie Pond
cfb43bf550
servlist: Add back TURLINet (#2602) 2021-07-02 02:36:29 +00:00
adamus1red
816769af5b Add DigitalIRC to default servlist.c 2021-06-29 13:53:23 -05:00
Patrick
c5e0b22c55
servlist: Add ICQ-Chat
Closes #2506
2021-06-26 10:51:32 -05:00
moon
c9145a1460
Update servlist.c - Network clean up (#2597)
Added 1 server to Aitvaras
Added 1 server to EFNet
Added 2 servers to chatpat (previously UniBG)
Added DosersNET
Put network list into alphabetical order.
Removed 2 servers from EFNet
Removed 3 servers from Aitvaras
Removed 3 servers from UniBG (now chatpat)
Removed AccessIRC (no longer exists)
Removed BetaChat (no longer exists)
Removed Buddy.IM (no longer exists)
Removed ChatNet (no longer exists)
Removed ChattingAway (no longer exists)
Removed Criten (connects to Rizon)
Removed DeltaPool for having zero connections and channels.
Removed ElectroCode (no longer exists)
Removed GalaxyNet (no longer exists)
Removed GeeksIRC (no longer exists)
Removed IdleMonkeys (no longer exists)
Removed IndirectIRC (no longer exists)
Removed iZ-smart.net (no longer exists)
Removed ObsidianIRC (no longer exists)
Removed PonyChat (no longer exists)
Removed SceneNet (connects to ChatJunkies)
Removed SeilEn.de (no longer exists)
Removed SolidIRC (no longer exists)
Removed StarChat (no longer exists)
Removed TURLINet (no longer exists)
Removed WorldNet (no longer exists)
Renamed DeltaAnime to DaIRC
Renamed Irctoo.net to IRCtoo
Renamed KBFail to Keyboard-Failure
Renamed Krstarica to PIK
Renamed OzNet to OzOrg
Renamed PIRC.PL to pirc.pl
Renamed PTNet.org to PTNet
Renamed UniBG to chatpat
2021-06-26 01:14:42 +00:00
Sadie Powell
199c03c8c6 Fix parsing +beI lists on InspIRCd. 2021-06-22 09:50:22 -05:00
Sadie Powell
d5b4577315
Implement generic support for IRCv3 standard replies. (#2589)
https://ircv3.net/specs/extensions/standard-replies

Co-authored-by: Patrick <tingping@tingping.se>
2021-06-20 23:29:36 +00:00
Sadie Powell
55e4f1c42e Implement support for strikethrough text.
https://defs.ircdocs.horse/info/formatting.html
2021-06-20 10:39:39 -05:00
Sadie Powell
08e13a3ac5 Replace identify-msg support with solanum.chat/identify-msg. 2021-06-19 20:16:40 -05:00
Sadie Powell
f5926fbd23 Consistently set the SSL state in /reconnect.
We need to use a temporary variable here as we're overwriting the
existing server object which may have values set here already.
2021-06-17 19:47:34 -05:00
Sadie Powell
623d93c6f1 Switch back to using newserver as the default server name. 2021-06-17 19:47:34 -05:00
Sadie Powell
1f608e600b Require opting out of SSL verification in /server and /reconnect. 2021-06-17 19:47:34 -05:00
Sadie Powell
747a52aae8 Default new servers to use TLS if built with OpenSSL. 2021-06-17 19:47:34 -05:00
Patrick Griffis
1f5c95d9e9 Always pass a valid URI to gtk_show_uri()
This can fix issues like a crash when invalid characters get passed
through.
2021-06-17 15:22:40 -05:00
DasBrain
09e9d1f749 Place ChanServ notices in the front buffer if the front buffer is on the same network. 2021-06-17 11:03:18 -05:00
Sadie Powell
333a02d015 Implement support for the IRCv3 UTF8ONLY specification.
https://ircv3.net/specs/extensions/utf8-only
2021-06-01 09:26:48 -05:00
Sadie Powell
4fc22a978a
Parse the output of the 005 numeric correctly. (#2585)
This implements support for the full 005 numeric syntax including negation and value escapes as defined in draft-hardy-irc-isupport-00. This fixes HexChat on servers that:

- Have unloaded a previously supported feature at runtime (e.g. unloading the monitor module in InspIRCd removing the MONITOR token).
- Have escaped spaces in the network name (see testnet.inspircd.org for an example of this).
- Send a value for a token where HexChat expects none (e.g. INVEX on InspIRCd — the value for this token is optional) or vice versa.
2021-05-28 19:37:50 -05:00
dimitrisdm
7f8b0a19cf
Add ACN IRC Network (#2524)
Website: https://irc.acn.gr
Round-Robin DNS: global.acn.gr
Ports: 6667 - 6697(ssl only).
2021-05-24 13:26:06 -05:00
Xandrah
cdfc3b9ea9
Update servlist.c (#2522)
* Update servlist.c

Added DeltaPool to IRC Networks

* Update servlist.c

Updated to support SASL
2021-05-23 22:46:00 -05:00
Andrew Rodland
076b2c1c73
Merge pull request #1457 from arodland/forgiving-ctcp
Be forgiving of a missing ending CTCP delimiter in a truncated message
2021-05-23 21:19:28 -05:00
BakasuraRCE
7121bb6e82 plugin interface: 💄 2021-05-23 21:17:07 -05:00
BakasuraRCE
da26097aab notification: Implement notification option for channels 2021-05-23 21:17:07 -05:00
BakasuraRCE
e03fab07ed plugin interface: Refactor "flags" option in "channels" list to be more clear with bit operators 2021-05-23 21:17:07 -05:00