summary refs log tree commit diff stats
path: root/src/common/modes.c
AgeCommit message (Collapse)Author
2022-09-22Fix PROTOCTL NAMESX and only send when not using `multi-prefix`.Sadie Powell
This capability is the equivalent of the old protoctl token.
2021-10-01Fix user list not tracking mode changesRyan Schmidt
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-08-23Remove some weird guesswork on the 004 numeric. (#2621)Sadie Powell
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-06-01Implement support for the IRCv3 UTF8ONLY specification.Sadie Powell
https://ircv3.net/specs/extensions/utf8-only
2021-05-28Parse the output of the 005 numeric correctly. (#2585)Sadie Powell
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.
2019-01-30Remove : from various trailing parameters (#2301)linuxdaemon
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
2014-12-28Use glib for all allocationsTingPing
- Removes need to check for malloc failure - Removes need for NULL checks on free - Adds checks for integer overflows - Removes some extra memset calls - Removes chance of mixing libc and glib malloc/free
2014-12-04Fix some obvious type warnings.Arnavion
2014-06-03Remove random ifndef WIN32TingPing
I never found a reason for it existing, but it also never affected much anyway.
2013-09-06Fix detecting utf-8 on some networksTingPing
2013-06-28server-time for all numerical messages.Diogo Sousa
2013-06-28server-time supported in most named messages.Diogo Sousa
2013-04-28Make NickServ registration configurable per-networkBerke Viktor
Fixes #394
2013-04-28Get rid of some hardcoded network recognitionBerke Viktor
2013-04-07Add events for quietTingPing
2013-04-03Add MONITOR supportTingPing
2013-04-02Only include top level includes from GTK+, GLib and GDK-PixBufBerke Viktor
2013-03-25Remove old CAPAB stuffTingPing
We already check for identify-msg elsewhere
2013-03-20Redesign the Ban List window. Closes Issues #303, #342, #427RichardHitt
This is a combination of 18 commits. The first commit's message is: Here is the initial banlist branch of RichardHitt/hexchat. Changed files are only src/fe-gtk/{banlist.c,fe-gtk.h}. This version works and contains my first efforts at selective sensitization of radio buttons and control buttons. From this point I intend to undertake a stepwise redesign. Step 1 will be to make the existing banlist code work for multiple simultaneous banlist windows (for different channels, obviously). It will be a hackathon with the only goal of getting it working. Step 2 will be the objectization and alpha-stage tidying-up of all the terrible looking stuff I will have done in Step 1. This is the 2nd commit message: Here's the post-Step-1 commit. It works for multiple banlist windows. Note particularly what I've done to banlist.h. Note that for many functions in banlist.c the argument is now a banlist_info *, rather than a session *. Note in banlist.c the initialization of array modes[] which contains driving information for the checkboxes. Of course those checkboxes aren't yet implemented. Maybe in Step 2 I will change to checkboxes from radio buttons; but definitely I will change to letting modes[] drive processing. This is the 3rd commit message: Converted to checkboxes. Much additional work. Note that the infrastructure for Auto-invite is not yet present in the hexchat tree. I'm nearly done with banlist, I think! This is the 4th commit message: Fleshed out 'invite'. Tagged masks uniformly, e.g. (b) (e) (I). General cleanup, nearly at the point of beta quality. This is the 5th commit message: Added fourth mode type: quiet. Did lots and lots of cleanup. Beta-ready? This is the 6th commit message: Get the banlist timestamps properly sortable. This is the 7th commit message: Redesign the supports_foo() routines. Now they're responsible for setting the flags in ->capable, ->readable, ->writeable. This is the 8th commit message: Deleted a couple of RBH comments. This is the 9th commit message: Now the ESC key will close the banlist window. This is the 10th commit message: Fix the fe-text occurrence of fe_add_ban_list(). This is the 11th commit message: Fixed also fe_ban_list_end() and removed fe_is_banwindow(). This is the 12th commit message: Use old-style initialization for array of structures modes[] This is the 13th commit message: Oops, incomplete regression of modes[] initialization. This fixes. This is the 14th commit message: Fixed strptime buy implementing a special version here. Fixed column width concerns by setting resizable and autosize. This is the 15th commit message: Get rid of testing line. This is the 16th commit message: Changed to gtkutil_destroy_on_esc () This is the 17th commit message: Remove no-longer-used functnion This is the 18th commit message: Minor cleanups to banlist.c, banlist.h Please enter the commit message for your changes. Lines starting with '#' will be ignored, and an empty message aborts the commit. Author: RichardHitt <rbh00@netcom.com> Committer: Richard Hitt <rbh00@f17.rbh00.pacbell.net> Not currently on any branch. Changes to be committed: (use "git reset HEAD <file>..." to unstage) modified: src/common/fe.h modified: src/common/hexchat.h modified: src/common/inbound.c modified: src/common/modes.c modified: src/common/proto-irc.c modified: src/common/server.c modified: src/fe-gtk/banlist.c modified: src/fe-gtk/banlist.h modified: src/fe-gtk/fe-gtk.c modified: src/fe-gtk/fe-gtk.h modified: src/fe-gtk/maingui.c modified: src/fe-text/fe-text.c
2012-12-23fix incorrect FSF addressDan Mashal
2012-10-24A lot more rebrandingBerke Viktor
2012-10-22Variable cleanup for irc_*Berke Viktor
2012-06-16Fix string handling for Turkish localeBerke Viktor
2011-02-24add xchat r1489berkeviktor@aol.com