Commit Graph

71 Commits (master)

Author SHA1 Message Date
Travis Burtrum dbad9285b8 TLS: Set SNI hostname before connect 2015-09-11 01:48:29 -04:00
Arnavion 1d83610341 Save iconv converters for input and output in the server.
These are then used with g_convert_with_iconv instead of making it create a new iconv converter every time for the given from-to-encoding pairs.
2015-01-31 00:52:31 -08:00
TingPing 5fe2dda146 ssl: Remove unused server code 2015-01-30 21:25:41 -05:00
Arnavion 6f8a6e66cc Detect unknown server encodings and set to UTF-8. 2015-01-18 02:10:05 -08:00
Arnavion 5749c53484 Server line text-encoding-related fixes.
- Handle server lines that contain sequences which are invalid in the server encoding. Previously, these would cause the whole line to be interpreted in ISO-8859-1, but now they're simply replaced with an appropriate replacement character.

- Removed prefs.utf8_locale.

- Change default server encoding from system locale to UTF-8.

- Always populate server->encoding with a non-null value - UTF-8.

Fixes #1198
2015-01-18 02:10:04 -08:00
Arnavion 2e76a4e477 Removed CP1255-specific handling of server lines.
GLib's API is good enough now.
2015-01-18 02:10:03 -08:00
Arnavion ee17ec6b4f Removed legacy "IRC" encoding. 2015-01-18 02:10:03 -08:00
Arnavion 5a56f9ea01 Removed unimplemented, unused function. 2015-01-14 23:42:21 -08:00
TingPing fef580ed7f Rewrite identd
- Use gio (which is cross platform)
- Properly support multiple users
- Allow configuring port
- Allow other plugins overriding
2014-12-30 06:35:42 -05:00
TingPing 1b2bee37e4 Remove option to disable ipv6
It has been default for a while, is the only tested option,
and will only get more common.
2014-12-28 22:29:06 -05:00
TingPing 9cb73f839f Remove MSProxy support
It's not enabled anywhere, certainly not maintained
2014-12-28 13:28:19 -05:00
TingPing 95febd978c Fix building as c89 2014-12-28 06:47:23 -05:00
TingPing 83032b1aa3 Use glib for all allocations
- 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-28 06:44:44 -05:00
TingPing 46061f4f3c Remove some unnecessary if statements 2014-12-15 14:51:07 -05:00
Arnavion ec7a0d6e13 Fixed some more signed-unsigned-comparison warnings. 2014-12-15 10:25:28 -08:00
Arnavion 65da34f19e Removed some unnecessary null-checks for calls to g_free and g_strfreev 2014-12-08 21:24:59 -08:00
TingPing c9b63f7f9b ssl: Validate hostnames
Closes #524
2014-11-21 23:19:30 -05:00
TingPing 4b6215051f ssl: Don't use global openssl context
Fixes #789
2014-11-05 01:27:39 -05:00
Campbell Barton 93caf4c7b4 Use GNUC format attribute on print functions
Closes #1059
2014-07-18 07:09:07 -04:00
TingPing a903f16c68 Implement BLOWFISh, AES, and EXTERNAL SASL mechanisms
Closes #657
2013-09-07 18:59:28 -04:00
Diogo Sousa 4057b7dd58 Now inbound_cap_ls() can enable extensions when a bouncer uses a namespace for
the extension server-time.
2013-06-28 16:07:24 +01:00
Diogo Sousa d934e60c2b Improved server_get_network(): if we don't have the current network in the
network list use the server name in received in event 005.
(This fixes the problem that the network (%n) in the log file names would be
"NETWORK" instead of the real network name (this happened if the network was
not in the network list).)
2013-05-25 22:31:45 +01:00
TingPing fcdd85ae5e Merge pull request #603 from orium/lag-meter-stuck
Fix an issue where the lag meter could get stuck after reconnect
2013-05-22 17:17:28 -07:00
Diogo Sousa 89078eb3b3 Fix an issue where the lag meter would be stuck after a reconnect caused by a
ping timeout.
2013-05-16 15:11:52 +01:00
Berke Viktor 947dd45294 Fix warnings 2013-05-14 16:52:16 +02:00
Berke Viktor a435e8648f Fix initial autojoins and some erroneous copies/frees 2013-05-14 16:40:32 +02:00
Berke Viktor 198dc9eb43 Fix favorite channels except in inbound.c 2013-05-12 05:44:32 +02:00
Berke Viktor fb01d4e9ab Replace g_strdup_printf with g_build_filename where possible 2013-05-04 18:21:48 +02:00
TingPing 7243f5bc2c Merge pull request #565 from bviktor/nickservtype
Make NickServ registration configurable per-network
2013-05-03 09:19:01 -07:00
Berke Viktor 99fed089cf Line breaks and typofix 2013-05-03 15:54:18 +02:00
Berke Viktor 0a54efdd0c Make NickServ registration configurable per-network
Fixes #394
2013-04-28 21:24:53 +02:00
Berke Viktor 708c5a7347 Make /msg nickserv the default registration type
Fixes #394 and hopefully doesn't break others
2013-04-28 17:03:41 +02:00
TingPing 496ed18e85 Add MONITOR support 2013-04-03 18:51:54 -04:00
TingPing b4c8d53394 Support account-notify and extended-join capabilities 2013-04-03 17:10:09 -04:00
TingPing 4c217d4ba3 Merge pull request #448 from TingPing/awaynotify2
Add away-notify support
2013-04-03 12:12:26 -07:00
TingPing eda9303ec9 Remove old CAPAB stuff
We already check for identify-msg elsewhere
2013-03-25 19:17:44 -04:00
RichardHitt f5631b2e22 Redesign the Ban List window. Closes Issues #303, #342, #427
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 <>
 Committer: Richard Hitt <>

 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
2013-03-20 15:10:30 -07:00
Berke Viktor 25f8e45b73 Get rid of Non-BMP filtering, Pango handles this now 2013-03-15 22:00:55 +01:00
TingPing bf0fb9f327 Add away-notify support 2013-03-12 02:21:18 -04:00
RichardHitt 6beef589e3 Make source cleah with cppcheck, except for mpc and sasl 2013-01-09 14:37:57 -08:00
Dan Mashal b04377825f fix incorrect FSF address 2012-12-23 11:36:54 -08:00
Richard Hitt b59f9abd1a Limit url-grabbing to NOTICE, PRIVMSG, TOPIC, 332 (RPL_TOPIC), 372 (RPL_MOTD) 2012-11-13 12:06:35 -08:00
Berke Viktor 49d5234b39 Load own certs from <config>\certs 2012-11-12 04:06:03 +01:00
Berke Viktor ed970381fb Eliminate some more warnings and hide less warnings in VS 2012-11-10 18:26:45 +01:00
Arnavion 5d9264aff6 Initial commit for utf8 everywhere. 2012-11-03 19:04:02 -07:00
Berke Viktor 7d664e755e More robust CAP management and CAP multi-prefix support 2012-11-03 18:29:08 +01:00
Berke Viktor cb0f6c8c91 Eliminate some more warnings 2012-10-30 21:25:58 +01:00
Berke Viktor d6dec82d3d Some more rebranding 2012-10-25 00:16:27 +02:00
Berke Viktor 1a75c8e1be A lot more rebranding 2012-10-24 21:33:02 +02:00
Berke Viktor 51ae33cbe8 Variable cleanup for the rest 2012-10-22 15:55:43 +02:00