34 Commits

Author SHA1 Message Date
Jacob V Rasmussen
d0bc5b8cf2 Update ssl_* to tls_* in syntax. 2019-04-01 17:52:39 +02:00
Alexander Færøy
5146ce9631
Add x509 certificate and public key pinning support.
This patch adds two new options to /CONNECT and /SERVER to let the user
pin either an x509 certificate and/or the public key of a given server.

It is possible to fetch the certificate outside of Irssi itself to
verify the checksum. To fetch the certificate call:

    $ openssl s_client -connect chat.freenode.net:6697 < /dev/null 2>/dev/null | \
      openssl x509 > freenode.cert

This will download chat.freenode.net:6697's TLS certificate and put it into the
file freenode.cert.

-tls_pinned_cert
----------------

This option allows you to specify the SHA-256 hash of the x509
certificate. When succesfully connected to the server, irssi will verify
that the given server certificate matches the pin set by the user.

The SHA-256 hash of a given certificate can be verified outside of irssi
using the OpenSSL command line tool:

    $ openssl x509 -in freenode.cert -fingerprint -sha256 -noout

-tls_pinned_pubkey
------------------

This option allows you to specify the SHA-256 hash of the subject public key
information section of the server certificate. This section contains both the
cryptographic parameters for the public key, but also information about the
algorithm used together with the public key parameters.

When succesfully connected to the server, irssi will verify that the
given public key matches the pin set by the user.

The SHA-256 hash of a public key can be verified outside of irssi using
the OpenSSL command line tool:

    $ openssl x509 -in freenode.cert -pubkey -noout | \
      openssl pkey -pubin -outform der | \
      openssl dgst -sha256 -c | \
      tr a-z A-Z

It is possible to specify both -tls_pinned_cert and -tls_pinned_pubkey
together.
2016-10-22 22:01:50 +02:00
Alexander Færøy
2be7289085
Rename SSL to TLS.
This patch changes the internal name of SSL to TLS. We also add -tls_*
options to /CONNECT and /SERVER, but make sure that the -ssl_* versions
of the commands continue to work like before.
2016-10-22 20:36:50 +02:00
Jari Matilainen
2bb913f0c1 Fix minor nits 2016-06-19 16:35:13 +02:00
Jari Matilainen
1d2113a638 Add /server modify SYNTAX 2016-06-18 17:53:35 +02:00
Haw Loeung
50e955e342 ssl: Add option to specify SSL cipher suite preference. 2015-04-14 18:07:35 +10:00
Michael Vetter
51239925ec source cleanup: remove trailing whitespaces 2014-09-11 19:10:33 +02:00
Alexander Færøy
68f8229373 Add -ssl_pass to /connect and /server
Fixes: Bug #305

git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5231 dbcabf3a-b0e7-0310-adc4-f8d773084564
2014-01-11 19:53:17 +00:00
Alexander Færøy
c561ba35e6 Code Cleanup:
Use g_string_append_printf() instead of g_string_sprintfa() (which is considered deprecated.)


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5003 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-02-08 17:22:42 +00:00
Wouter Coekaerts
9c2d621cc6 Oops. Update address correctly now.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4490 dbcabf3a-b0e7-0310-adc4-f8d773084564
2007-05-08 18:41:10 +00:00
Wouter Coekaerts
023026e12b Update FSF address
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4489 dbcabf3a-b0e7-0310-adc4-f8d773084564
2007-05-08 18:16:58 +00:00
Timo Sirainen
ab3ba54ab4 s/ircnet/network/ - patch by Joost Vunderink
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3270 dbcabf3a-b0e7-0310-adc4-f8d773084564
2004-07-11 21:31:49 +00:00
Timo Sirainen
43b0d36ee1 Support for sending SSL certificate to server and optionally verify server's
certificate. See the -ssl_* options for /SERVER and /SERVER ADD. Patch by
Joel Eriksson <je-irssi@bitnux.com>.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3146 dbcabf3a-b0e7-0310-adc4-f8d773084564
2003-11-16 17:53:55 +00:00
Timo Sirainen
37995ea05f /SERVER and /DISCONNECT handlers moved from irc to core.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2969 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-10-21 19:03:47 +00:00
Timo Sirainen
a83366069f window->active_server used to hold non-connected servers, but that was
removed before because it created several problems, especially with scripts.
however that change made /server and /disconnect annoying to use with
non-connected servers.

so, now we have window->connect_server as well. either active_server or
connect_server is set, but never both. commands that can deal properly with
non-connected servers can now use the connect_server, while everyone else
happily thinks that no server is active.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2921 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-09-14 23:14:04 +00:00
Timo Sirainen
a6c4e47376 A few missing parts from SSL patch.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2891 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-08-26 19:40:04 +00:00
Timo Sirainen
d346fbe1a9 Better !channel support - window items now have "visual_name" and channels
and queries also have "name". Normally they're identical but with !channels
the visible_name contains the short !channel name, while name contains
full !ABCDEchannel name.

The visible_name should be used whenever displaying the channel name, or as
printtext()'s target. So, this breaks a few scripts in !channels, they need
to be modified to use $channel->{visible_name} instead.

Also /LAYOUT SAVE should finally work properly with !channels.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2797 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-05-16 00:34:37 +00:00
Timo Sirainen
25d5e26e7b /SERVER ADD -ircnet value wasn't strdup()ed so it might have done something
nasty, at least during quit might have crashed.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2617 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-03-15 00:05:55 +00:00
Timo Sirainen
966ed97f2a Added -4 | -6 to /SERVER ADD syntax.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2572 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-03-10 21:38:10 +00:00
Timo Sirainen
1855e6cc5c /SERVER ADD -ircnet should add the network to config with the same case as
in /IRCNET list.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2568 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-03-10 19:58:16 +00:00
Timo Sirainen
182adb805c /SERVER ADD: added -noproxy option and -proxy which just removes the
-noproxy.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2344 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-01-24 20:57:16 +00:00
Timo Sirainen
be6ba53fa4 Config file: ircnets -> chatnets, added type = "chat protocol" to
chatnet config. Moved reading chatnets to core. Lots of other
multiprotocol updates.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1237 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-02-17 19:44:22 +00:00
Timo Sirainen
8d98e80a6b -querychans option for servers and ircnets which specifies how many
channels to query in one line with MODE/WHO commands after joined to a
number of channels. Default is 10 which works usually, with some very
stupid servers (just found one) this has to be set to 1 however.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@981 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-12-09 19:12:49 +00:00
Timo Sirainen
39630c3d58 windows.h conflicted with microsoft's windows.h :) renamed windows.[ch] to
fe-windows.[ch]


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@846 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-11-17 16:27:14 +00:00
Timo Sirainen
4dcbe05c0f Cleaned up printtext.c, split part of it to formats.c
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@796 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-10-28 20:14:19 +00:00
Timo Sirainen
2d1ac3059a /set autocreate_query -> /set autocreate_query_level
fixes to /ircnet, /server and /channel commands
other updates and fixes


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@649 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-09-06 21:30:56 +00:00
Timo Sirainen
3e2f19b030 updates
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@634 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-08-27 23:07:01 +00:00
Timo Sirainen
e395e87ded Lots of moving stuff around - hopefully I didn't break too much :)
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@632 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-08-26 15:39:44 +00:00
Timo Sirainen
a2d0944eee Some server reconnection fixes. Reconnect now allows you to have
more than one reconnection to the same server.

Changed the deinit() order in IRC module to cleanly free all memory.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@607 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-08-14 21:42:37 +00:00
Timo Sirainen
c529fe0096 Added syntaxes of all commands in comments, they're going to be used to
autogenerate help files.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@529 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-07-23 23:19:22 +00:00
Timo Sirainen
a5d31a195d Changed option handling in /commands. Irssi will now complain about
unknown options and missing option arguments.

Renamed /SERVER -add, -remove and -list to /SERVER ADD, REMOVE and LIST.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@365 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-06-18 01:18:12 +00:00
Timo Sirainen
a7f5540cba /IRCNET command.
PARAM_FLAG_NOQUOTES flag for cmd_get_params()


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@290 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-06-04 14:52:47 +00:00
Timo Sirainen
c7fbd670e6 /server -add messed up everything when modifying existing servers.
Now it also changes only the specified settings in the server instead of
replacing it entirely.

only the settings you change changed parts


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@266 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-06-01 18:04:34 +00:00
Timo Sirainen
d3dc9a1307 .. lots of changes ..
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@197 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-05-04 10:32:42 +00:00