ChangeLog for 1.1.5 somehow got lost, but here are the bits from 1.1.6 and
1.1.7:
- Fixed channel MAC key setting in JOIN notify and command reply.
- Fix reference count bug leading to memory corruption on duplicate deletions.
- Avoid NULL dereference when leaving a channel with a private key.
- Fix crash on expired keyboard prompts.
- Add support for autosendcmd on channel entries.
various character set problems. The security issues fixed:
* NICK_CHANGE buffer overflow: CVE-2007-3728.
* pkcs_decode buffer overflow: CORE-2007-1212.
Changes since version 1.0.4.1:
- Fixed NEW_CLIENT packet handling crash.
- Fixed partial encryption in CTR mode in AES.
- Fixed printable fingerprint buffer overflow.
- Fixed UNIX signal delivery il SILC scheduler.
- Reprocess JOIN command synchronously after resolving channel user list.
- In JOIN command reply check if the channel key is already saved.
- Remove all channel keys and hmacs after giving LEAVE command.
- Added missing channel unreferencing in CMODE, CUMODE, TOPIC, INVITE,
BAN and KICK command replies.
- Fixed connection authentication with public keys to use correct public
key as responder.
- Zero tail of CTR mode IV in IV Included mode.
- Fixed CTR mode rekey.
- Rewrote the IV Included CTR mode encryption/decryption in packet engine.
- Fixed non-IPv6 compilation error.
- Fixed channel private key deleting when deleting the channel.
- Fixed TIMEOUT handling in user info resolving during JOINing, fixes crash.
- Fixed mandatory UN and HN SILC public key identifier checking.
- Fixed alignment issues with 64-bit CPUs.
- Added "There are now xx nick's" to "are xx nicks".
- Fixed USERS command user mode handling (integer overflow).
- Fixed big-endian issues from aes implementation.
- Fixed lib/silcutil/silcatomic.h compilation on IA64.
- Fixed public key identifier parsing to check lengths correctly.
- In silc_client_free check that scheduler is allocated before trying to
free it.
- Fixed buffer overflow in NICK_CHANGE notify. The destination buffer for
old nicknames was too small.
- Added support for rekey with PFS when using CTR mode encryption.
- Added silc_idcache_move that can be used to move entries between caches.
- Added better checks for invalid argument and notify payloads.
- Fixed SILC_PACKET_FLAG_LONG_PAD bitmask value.
- Set the destination ID to packet stream as SKE responder if ID was
present in key exchange packet.
- Compile sources with _GNU_SOURCE on Linux systems.
- Fixed Unix signal task dispatching to not lock the signals when
dispatching the callback to avoid deadlocks.
- Added SILC_VERSION macro for checking package versions at compile time.
- Use SILC_VERIFY to assert that silc_rwlock_wrlock can be called only
once per thread on Unix.
- Fixed USERS command reply write-lock unlocking.
- Fixed silc_create_key_pair to check for valid identifier.
- Rewrite signed public message handling, adopting the new hilight interface.
- Fix off by one error when loading modules.
- Don't delete hilight entry (because it's just a pointer, not a copy).
- Added __SILC_TOOLKIT_x_x_x macro to all Toolkit distribution which can
be used to check for Toolkit version in third-party software.
- Added support for channel@server channel name strings to client library
(SILC protocol version 1.3 change).
- Added full_nicknames and full_channel_names settings to SilcClientParams
that can be used to specify whether client library returns full nickname
and channel name strings. Full strings are nick@server and channel@server.
- Fixed unix connecting failure to return error code correctly.
- Fixed SKE timeout double free crash.
- Fixed MIME multipart decoding buffer overflow.
- Fixed connection auth protocol timeout crash.
- Fixed FSM machine finishing to check for existing threads at the final
free callback to allow time for the threads to finish.
- Fixed silc_client_get_clients_local to check the nick's server also if
nick@server nickname string is given to the function.
- And many more, oh well. For the user this means: better charset support,
less crashes, nick names now potentially user#23, server specific
channels and more sanity.
Talked over a while ago with wiz with no objections.
Addresses PR pkg/36355
Changes:
1.0.4.1:
========
o Fix a segfault when joining an unknown channel
1.0.4:
======
- Update Makefiles so parallel make is possible
- Include scripts from the SILC Plugin for automatically signing all
messages
- Use known passwords when joining password protected channels
1.0.3:
======
- empty realname and hostname is permitted again (and the user gets to
see the error message if something goes wrong)
- various small fixes
All library names listed by *.la files no longer need to be listed
in the PLIST, e.g., instead of:
lib/libfoo.a
lib/libfoo.la
lib/libfoo.so
lib/libfoo.so.0
lib/libfoo.so.0.1
one simply needs:
lib/libfoo.la
and bsd.pkg.mk will automatically ensure that the additional library
names are listed in the installed package +CONTENTS file.
Also make LIBTOOLIZE_PLIST default to "yes".
- Rework how and where is silc-client installed (in preparation for
silc-toolkit import).
- Rework PLIST.perl handling, now it works with threaded Perl as well.
- Minor cleanups.
Some pkgsrc things
- Fix PLISTs for packages that use -release
- Include canonicalisation of a couple of paths for the benefit
of qt3-*
- the normal version=sunos patching
- fix all library_names_spec for the standard set of symlinks
The libtool things some of which had already made it into pkgsrc libtool.
New in 1.5.2: 2004-01-25; CVS version 1.5.0a, Libtool team:
* lt_dlrealloc is an official part of the libltdl API.
* --tag, --silent and --debug options are preserved and reused when libtool
calls itself for relinking etc.
* `-pthread' and similar options are honoured when linking shared libraries.
* -no-suppress in compile mode shows compiler output for both PIC and non-PIC
object compilation.
* New link mode option `-precious-files-regex' to prevent accidental removal
of files you want to keep, such as test coverage data, from the temporary
output directory.
* Directories specified in /etc/ld.so.conf are no longer hardcoded on Linux.
* Recognises the 'R' symbol type on Solaris so read-only symbols can be
exported.
* Bug fixes.
New in 1.5: 2003-04-14; CVS version 1.4e, Libtool team:
* First stable release of multi-language architecture.
* libtool and libltdl support for Mac OS/X.
* libltdl will now use cygwins dlopen API instead of always forcing
LoadLibrary.
* Support auto-import patch to binutils on cygwin for much improved dll
support.
* Bug fixes.
New in 1.4.3: 2002-10-13; CVS version 1.4.2a, Robert Boehne:
* The libltdl subdirectory now bootstraps correctly with Automake 1.5.
* srcdir != builddir builds with Automake 1.5 work correctly.
* Support for mips-compaq-nonstopux.
* New command line argument, --preserve-dup-deps prevents removal of
duplicate dependent libraries.
New in 1.4d: 2002-01-07; CVS version 1.4c, Libtool team:
* Help strings display correctly again.
* Better error messages when library linking fails.
* Better error messages from libltdl when loading fails.
* Better search path management in libltdl with `lt_dlinsertsearchdir' call.
* Support /lib/w32api in recent cygwin releases.
* Support cross compilation to mingw.
* Support for .rc files (Windows resource compiler).
* Improved handling of mingw gcc.
* Improved handling of $PATH with entries containing spaces.
* Improved support for linking with gcc on aix4* and aix5*.
* Improved support for GCC 3.0.
* Initial support for QNX RTOS, UnixWare 7 and OpenUNIX 8.
* Bug fixes to the OpenBSD port.
* Bug fixes.
New in 1.4.2: 2001-09-11; CVS version 1.4.1a, Gary V. Vaughan:
* libltdl now builds on solaris again
* diagnose and warn about not-quite-working combinations of gcc and
ld on solaris.
* Improved OpenBSD support.
* Improved cygwin support.
* Bugfixes.
New in 1.4.1: 2001-09-03; CVS version 1.4.0a, Libtool team:
* Better error messages from libltdl when loading fails.
* Don't leave here-doc files behind.
* Improved support for OpenBSD.
* Libtool will build with autoconf-2.50 and higher.
* Plug memory management bugs in libltdl.
* Prefer shl_load to dlopen for better operation on HP-UX.
New in 1.4b: 2001-07-09; CVS version 1.4a, Libtool team:
* Now bootstraps with autoconf-2.50 and automake-1.4-p4.
* Always try to build at least a static lib, even if both static and
shared libs were disabled.
* Full support for C++ compiler.
* Support for GNU gcj compiler.
* libltdl can now load all modules in a given path according to user
supplied criteria with `lt_dlforeachfile' call.
* Improved support for AIX ia64, djgpp, HPUX, hurd, OpenBSD, sco3.2*.
* Internal mutex handling no longer has namespace clashes on NCR MP-RAS.
* New pdemo and tagdemo tests.
* Bug fixes.
When you are upgrading from a prior release to SILC Client 1.0.1, there
are two issues you have to take special care of:
First of all the default theme (as defined in the file default.theme in
the source package) has changed. You may need to update your personal
theme to reflect those changes. The second change affects the filename
used to store the session data when /DETACH'ing. If you have detached
from a SILC network with your old client and want to resume the session
with SILC Client 1.0.1, you first have to
/SET session_filename session
After successfully resuming your session, you can revert the setting to
its default "session.$chatnet" again.
Changes:
--------
- /NOTICE and /ACTION command now both take a mandatory target argument
and an option -sign flag. Both work in channels and queries, /IGNORE
now correctly treats both. default.theme has changed, please update
your theme. Closes#1.
- /SILCNET [ADD|REMOVE|LIST] command to manage different SILC networks.
- /SMSG and /MMSG now correctly open new query windows if wished.
- New settings session_filename defines the filename used to store
session information generated by /DETACH. A setting like
session.$chatnet allows you to detach from different networks.
Changes:
- Fixed the file transfer (see /HELP FILE) session accepting and closing.
- Fixed nickname formatting to not mess the /NAMES command output.
- Fixed MIME header parsing to not show extra characters in the MIME type
name.
- Several other bugfixes were made.
- Removed RC6 algorithm from distribution.
- Added /LISTKEYS help file (see /HELP LISTKEYS).
- Implemented optimized RSA algorithm for faster private key operations.
Private key operations are now at least 30% faster. Note however that,
this optimization works only with newly generated key pairs.
Unfortunately, it is not possible to transfer the old private key to
the new optimized format. There is no compatibility issues with old or
new private keys (new private keys work with older SILC Clients as
well, but they are slower to use).
- Implemented support for searching users in the network by their public
keys using WHOIS command. Note that, this feature will work only with
upcoming SILC Server. Current SILC Server 0.9.15 or older does not
support this feature.
See the /HELP WHOIS for revised help information on searching by
public key. Examples:
To search nickname 'nick' that has the specified public key, give:
/WHOIS nick -pubkey /path/to/the/public_key.pub
To search all usesr that has the specified public key, give:
/WHOIS -pubkey /path/to/the/public_key.pub
This search feature is the first search feature that uses the
Requested Attributes in WHOIS to base on the search or to narrow down
the searched values.
- added dependency on p5-File-MMagic if perl support enabled (for MMSG
support)
Changes:
- Fixed race condition between silc_client_init and my_silc_scheduler.
- Take reference of the socket in the parser context, as it's possible
to have the parsers in queue after the socket is disconnected and this
may cause crash.
- Check that packet queue purging was successful.
- Optimized the socket referencing in packet routines.
- Resolve the IP for file transfer listener from the connection socket.
- Added LISTKEYS command which can be used to list server and client
public keys from the ~./silc directory. See /HELP LISTKEYS.
- Improved the MMSG command. It now supports the target so it can be used
to send private messages too without opening a windows. It also
detects the MIME type now automatically. Support for digitally signing
the messages was also added. See /HELP MMSG, the help file is there
now. :) Replace the old silc-mime.pl script with the new one to take
advantage of all new features.
- Added /MMSG command help file.
Changes:
- Fixed a crashbug that occurred frequently when joining and leaving
channels.
- Fixed a crashbug in secure file transfer.
- Several other bugfixes were made.
- Introduction of multimedia message sending and reception. A perl script
silc-mime will introduce a new command MMSG, which can be used to send
MIME messages. This enables users to send for example images and other
messages. The SILC Client will automatically launch the application
that is able to view the message.
To start the script give command /script load silc-mime. It will try
to find a mailcap file which defines the MIME types and applications
that can show the MIME messages. If you want to receive MIME messages
you will also need to load the script.
To send a messages use /MMSG command. Give for example
/MMSG -channel foobar /path/to/file.gif to send a GIF image to channel
foobar. A shortcoming in the MMSG command makes it impossible to send
private messages without first opening a window for the query. This
will be fixed later.
Changes:
- remove patch-ab, merged into distribution
- cleanups in Makefile
0.9.13:
=======
- Lots of bugs was fixed. Also several security bugs has been fixed.
- Inviting and banning now works with a public key. Fixed also banning
with nickname (example, /ban +nickname).
- Support for channel public key authentication added. The CMODE command
has a new option 'C', which can be used to add and remove channel
public keys on the channel. The channel public keys work the same way
as the channel passphrase. Only the person posessing the corresponding
private key of the public key added on the channel is able to join the
channel. It is possible to add multiple channel public keys to the
public key list.
Give /HELP CMODE to see how to use the command. If the /CMODE +C is
given without arguments you will get list of current channel public
keys. This feature works only with new SILC Server 0.9.14 an newer.
You will also need to be channel founder.
- Automatic lag detector, to detect lag between your client and your
server. The lag (if any) is displayed on the status bar.
- /ME, /ACTION and /NOTICE now fully supports UTF-8 text messages.
- Using '@' and '!' characters in invite and ban strings is prohibited.
Those characters cannot be anymore used as part of invite and ban
strings.
- Better caching of old channel keys (for period of 10 seconds) to avoid
loosing any channel messages.
Changes:
- Fixed RESOLVING flag handling in JOIN notify and other
notifys to handle the resolvings correctly in client library.
- Fixed incorrect connection deletion from client library
after calling "connect" client operation. Could cause
crashes for example during reconnect timeouts.
- Removed --session and --dummy options from Irssi SILC Client.
-d option is available only if --enable-debug was given.
IMPORTANT NOTE: This version does not include backwards support
for the old style SILC private key so if you
skipped 0.9.10 version you won't be able to run
this client without generating new key pair.
Changes between 0.9.10 and 0.9.11
=================================
* workaround a bug in GCC which causes memory exhaustion when
compiling sha1 with optimizations on UltraSPARC. from openbsd
* Don't display "foo appears as foo\nYou're now known as foo"
messages.
* Do not print the nickname in SERVER_SIGNOFF if we do not
have it. Prevents asserts in Irssi core. It is possible we
don't have the nick if it was just being resolved when server
signoff.
* Prevent endless resolving of user informations in USERS
command by checking the command reply status correctly.
* Don't print signed messages when sending failed.
* Send adequate signal when founding a channel by joing it.
* Make GETKEY to update the client entrys fingerprint too.
* Fixed autonick crashbug in client library.
* Fix theme abstracts parsing.
* Fixed double free in SKE library error hadling when signature
error occurred.
There are fixes in crypto library, especially in the
private key file format which had bugs in the encryption
process. When you run the new client it will automatically
change your private keyfile format so that you don't have
to do anything to it manually. The next versions will not
have this feature so if you'll skip this version you won't
be able to run your client after new version of SILC Client
comes out later (without generating new key pair).
Channel private keys and private message keys were using MD5
hash function, which is actually wrong. The code was
supposed to use SHA1 which is the mandatory hash function in
SILC. This version changes this and for this reason you may
experience some problems using channel private keys and
private message keys together with older client versions.
Make sure you and your friends are running latest client
version to avoid problems. This is inconvenient, but was a
must fix.
Changes between 0.9.9.1 and 0.9.10
==================================
* Removed 1.0 protocol backwards compat code from client
library.
* Changed the channel private key and private message
key generation (with static keys) to use SHA1 instead
of MD5, as SHA1 is the mandatory hash function in SILC.
* Changed the private key file encryption to use SHA1
instead of MD5. Added support for the old generation
and added automatic change of the key (to be removed
later).
* Format CMODE +c and +h to display both the mode and
the argument.
* Added support for inviting and banning by public key.
* Added support to set and use specific public key in
CUMODE.
* Changed the private_message and channel_message client
operations to deliver the SilcMessagePayload to the
application too. Application can use it fe. to get
the signature from the message for verification.
* Added more reliable check for whether nickname did
change or not, or whether only Client ID changed in
NICK_CHANGE notify.
* Set realname and hostname in NICK_REC records.
* Display signature verification result in public and
private messages using theme abstracts.
See irssi/default.theme for examples of their usage.
* Verify signature payload for signed messages.
* Added ignore_message_signatures setting which can be
used to ignore signatures in messages.
* Fixed fingerprint/babbleprint showing in invite and
ban list command replys.
* Fixed founder key sending in CMODE command.
* Fixed bugs in Irssi's theme parsing.
Changes between 0.9.8 and 0.9.9.1
=================================
* Updated protocol version to 1.2.
Clients and servers with support for 1.1 are not compatible with the new
protocol!
* Added -no-listener option to FILE SEND command, Renamed FILE RECEIVE
to FILE ACCEPT.
* Added idle and signon fields to the ATTRIBUTE_SERVICE attribute to
indicate the user's current idle and signon time of a service.
* Added MAC field to the Private Message Payload to protect against
chosen ciphertext attacks.
* Added support for normal client to kill its own entries from the network.
* Added ERR_UNSUPPORTED_PUBLIC_KEY and ERR_OPERATION_ALLOWED status types.
* Defined the SILC_MESSAGE_FLAG_SIGNED.
* Defined that all public keys sent in commands and notify payloads are
actually Public Key Payloads not raw public key data.
* Compute maximum padding for authentication packets to make passphrase
approximation attacks impossible (padding must be at least 8 bytes now).
* Added support for rekey before 2^32 sequence number wraps.
* Added Encrypt-Then-MAC order to Channel Message Payload MAC generation.
* Added Encrypt-Then-MAC order to SILC packet MAC generation. Deprecated
the old Encrypt-And-MAC order.
* Added expando $j which expands to current SILC Client version
* SILC_UMODE_GONE changes are now propagated correctly to the client.
* Print "nick now appears as newnick" and update nicklist when you
change your nick to "nick".
* Added support for setting FOUNDER mode on channel with specific public
key which can be set with CMODE command.
* Unified the Channel Message Payload and Private Message into one
Message Payload.
* UTF-8 decode topics also in JOIN command reply and TOPIC_SET notifys
in client.
* Added support to client sending new BAN and INVITE commands. Display
INVITE and BAN lists as specified by SILC 1.2
* Merged with Irssi 0.8.6.
* Added library versioning for shared libraries.
* Do reverse lookups for server when /CONNECT-ing.
* MARS support is now gone.
* Fixed PING command sending in client library and handling in server.
The server ID must be ID Payload, not raw ID data.
* Fixed example in /HELP KEY
* Fixed the client to correctly shutdown the client library to avoid
memory leaks.
* Fixed few double frees from client library.
Changes between 0.9.5.1 and 0.9.8
=================================
* Added STATS command.
* Added Requested Attributes support.
* Added -details option to WHOIS command to support the requested
attributes. By default it requests all attributes.
* Added implementation of VCard (RFC 2426) which can be used as
part of Requested Attributes in WHOIS command.
* Added ATTR command which is used to manage user's Requested
Attributes sending and values for WHOIS command.
* Added support for saving the requested attributes in WHOIS to
directory.
* Added support for auto-passphrase authentication from the config
file during connecting which was not implemented yet.
* Added shared library complation support.
* Added support for encrypted private key files. Now passphrase
must be provided when new key pair is created and prompted when
loading the private key.
* Added -P option which can be used to change the passphrase of
the private key.
* UTF-8 decode the topic in TOPIC command reply and LIST command
reply.
* Added manpage for silc(1).
* Fixed string formatting crashbug in lib/silccore/silcattrs.c
* Fixed double free in RSA public key set function.
* Fixed a bug in authentication protocol failure handling which
was processing wrong callback context.
* Merged DISCONNECT fix, and autoconn port fix from Irssi CVS.
* Merged c0ffee's /set heartbeat patch and fixed the heartbeat
sending.
* Fixed connection closing in client library to not crash.
* Fixed the INVITE command to not crash client when given without
nickname argument.
buildlink->buildlink2
Main changes between 0.9.2 and 0.9.5.1
=======================================
* Do not set the locally resolved hostname for local client entry but take
what server sends. This way the real hostname is shown in WHOIS for
yourself.
* Fixed duplicate PKCS name registering to not allow it.
* Enabled SIM support on *BSD systems.
* Fixed buffer overflow and security problems (loosing bits in CFB
encryption) in SILC RNG.
* Fixed buffer overflow with CUMODE mode->mode character conversion.
* Fixed a crash in client libary in NICK_CHANGE notify when NICK_CHANGE
arrived for client entry we are resolving currently.
* Don't do SILC_STRING_LANGUAGE encoding if the outbuffer is NULL since it
seems that on some platforms NULL is allowed and on some it's not.
Fallback encoding is used instead.
* Fixed a bug in Irssi SILC client to close the connection properly when
disconnecting from server. Handle local errors correctly during resuming.
Update submitted by Lubomir Sedlacik <salo@xtrmntr.org> in PR 18277.
* Call the completion for resolving client information only
after all resolvers has finished. This fixes a crash in
the client. Added support for checking when the resolvers
are finished.
* Wait by default 3 seconds before reconnecting to the server
after being disconnected. Makes the /detach command a bit
more usable.
* Remove the client entry from cache if the WATCH notify type
is KILLED, SERVER_SIGNOFF or SIGNOFF.
* Fixed a crash in OPER and SILCOPER command sending. Empty
passphrase caused the crash.
* Merged with Irssi CVS for Irssi SILC client.
* Added permanent channels support by making the channel
permanent when FOUNDER_AUTH mode is set on the channel.
The channel will not be destroyed even if channel is empty
when that mode is set. Protocol TODO #17.
* Fixed rekey protocol with PFS in the client library.
* Fixed client info resolving on LEAVE command in client
library to not crash.
* Defined that the NICK command replies with thew changed
nickname too, to make the nickname changing simpler at
the client's end. Updated protocol specs and the code
in client and server.
* Remove pending command callbacks also if the connection
to the server is destroyed.
* Added new channel user modes BLOCK_MESSAGES_USERS and
BLOCK_MESSAGES_ROBOTS. Updated the protocol specs and the
code.
* Added support for watch list. It is possible to add nicknames
to be watched, and when they come to network, leave network
or user mode changes the watcher will be notified of this
change. Added SILC_COMMAND_WATCH command, added new
notify type SILC_NOTIFY_TYPE_WATCH to deliver the watch
notifications. Updated the protocol specs and implemented
this to library, client and server. Protocol TODO #21.
* Added user mode SILC_UMODE_REJECT_WATCHING to reject
somebody watching you. Updated the protocol specs and the
code.
* Added MIME header parsing in Irssi SILC Client. It displays
all textual MIME objects, others it ignores.
* Defined <channel user mode list> argument to WHOIS command
reply for returning user modes on the channels. The
channel list now doesn't include the user mode anymore but the
actual channel mode. Updated protocol specs and the code in
client and server.
* Added SILC session detachment/resuming support. It is possible
to detach by closing the network connection and then re-connect
and resume to the old client session. Added DETACHED user
mode that server will set for detached client. Added new
packet RESUME_CLIENT which is used to perform the resuming
process. Added DETACH command. Updated the protocol specs,
core library, client and server. Protocol TODO #22.
* Added new user modes ANONYMOUS for special anonymous servers
that may set the mode for client, and BLOCK_PRIVMSG which
client may set to block incoming private messages unless the
Private Message Key flag is set (using private keys to protect
private messages). Updated protocol specs and code in client
and server and core library. Protocol TODO #23.
* Added new channel user mode BLOCK_MESSAGES which the client
may set to itself to tell server not send channel messages.
Other packets such as channel key packets are still sent.
Protocol TODO #23. Updated the protocol specs, client and
server.
* Added more IM-like features by introducing new user modes
for setting various presence information. Added new modes:
INDISPOSED, BUSY, PAGE, HYPER and ROBOT. Updated protocol
specs and code. Protocol TODO #19.
* The LIST command reply in client libary now adds new channel
entry if the returned channel doesn't exist yet in cache,
and returns the channel entry to the application in the
command_reply client operation.
* Rewrote the version SKE version checking in client libary
and in server to use the silc_parse_version_string.
* Added two new channel modes: SILC_CMODE_SILENCE_USERS
and SILC_CMODE_SILENCE_OPERS which can be used to moderate
the channel. Updated protocol specs and impelemented this
to client and server. Protocol TODO #6.
Added new options m and M to CMODE command in Irssi SILC
client to set these modes.
* Deprecated all administrative commands from SILC protocol
since they are highly implementation specific commands.
Updated protocol specs. Moved the old commands in
implementations to private range of command types.
* Some client implementations quit network by doing first LEAVE
and then immediately SIGNOFF (like Bombyx). We now do check
after a short time after LEAVE notify and check whether the
client is still valid after LEAVE, and if not we remove it from
cache.
Patch submitted by Lubomir Sedlacik <salo@Xtrmntr.org> in PR 16980.
changes in the silc-client package:
===================================
- upgraded to 0.8.6
- separate PLIST files for perl support and crypto modules
- make it compile on Solaris
- minor cleanups
changes in the silc-client since 0.8.3:
=======================================
* Merged irssi crash fixes on /QUIT.
* Fixed a bug in library where sending a bogus authentication
payload would lead to a crash.
* Do not check public key types in SKE during rekey.
* Fixed the Irssi SILC Client to use the silc_get_username and
silc_get_real_name insted of glib routines since the glib
routines only corrupt stack. Fixes the Irssi SILC to work in
Cygwin.
* Fixed the Irssi to not use g_get_home_dir since it crashes
or returns garbage on cygwin and corrupts stack. Added function
get_home_dir to Irssi routines.
* Fixed the KICKED notify handling in client library to
correctly remove the channel and all entries from the
channel when I was kicked. This bug crashed the client.
* Fixed yet another but in KICKED notify handling to remove
the kicked client correctly from the channel.
* Fixed the lib/silcmath/Makefile.am to include the MPI and GMP
sources correctly to distribution. Fixes --with-gmp option.
* Removed the manual rehashing from ID Cache, and changed it
to use the SILC Hash Table's auto rehash feature.
* Fixed a bug in the silc_client_nickname_format function that
handles the multiple same nickname formatting. Two clients
with same nickname caused problems after the first one left
and rejoined. It didn't format the nickname correctly.
Changes contributed by Lubomir Sedlacik <salo@xtrmntr.org> in PR 16611
* Merged Irssi 0.8.2 from irssi.org CVS.
* Fixed the USERS command reply to save the user's mode on the channel
as well.
* Fixed JOIN command reply to check whether a client is on channel
already and not join it twice.
* The user mode (like server/router operator changes) is now shown on
the Irssi SILC client's statusbar.
* Fixed -S option parsing in Irssi SILC Client. Contents of key files
are shown again correctly.
Patch submitted by Lubomir Sedlacik <salo@xtrmntr.org> in PR 15886.
Contributed by Lubomir Sedlacik <salo@xtrmntr.org> in PR 15772.
Changes:
- added support for optional perl support to Makefile
- added PLIST.perl for package with perl support enabled
- updated MASTER_SITEs
- updated patches
This version introduces the new Irssi-SILC client which is based in the new
Irssi 0.8.1 version. In addition of being entirely new irssi base this
version also introduces the perl scripting support. With this scripting
support it is possible to create scripts that introduce new features and new
commands. It is also possible to create a bot with it.
The client config file has changed too. The old "silc.conf" (which was the
silc specific config file) is now gone, and the "config" (which was the irssi
specific config file) is now renamed as silc.conf, and includes both silc
stuff and irssi stuff. So, after installing this new client I suggest
removing the old silc.conf file since otherwise when you run the new client it
will yell you about the config file. Be warned.
When you look at the new silc.conf config file you will see settings like,
"crypto_default_cipher", "crypto_default_hash" and "crypto_default_hmac".
These are the silc specific settings and you can freely edit them (or use
/SET command) to include what ever value you prefer. The default values
should fit to all since they are the SILC protocol default ones. Anyway,
they are editable if you want to edit, but you don't need to edit them.
New commands that this new client introduces is for example /STATUSBAR.
With this command you can manage the different bars on the screen. Like,
whether to show topic bar or not etc.
most significant changes in silc-client since version 0.7.6.2:
* Fixed CUMODE_CHANGE notify handling to change the mode of correct client
* Allow zero length channel messages inside the Channel Message Payload
* The silc_cipher_register, silc_hash_register and silc_hmac_register now
checks if the object to be registered is registered already
* Merged the new SILC Config library, with the server parsing support.
Read the header file silcconfig.h or the toolkit documentation for the
news.
* Added new Passphrase and Publickey authentication methods to config file,
allowing both public key and passphrase based authentication to be set at
the same time.
* Added `prefer_passphrase_auth' setting in config file which can be used to
set to prefer passwd auth if both passwd and public key is set. If not set,
public key is preferred. This has effect only when being initiator
(responder will try both anyway).
* Added support for authentication with passphrase and public key at the same
time. The passphrase is tried first always since it is faster to check.
* Fixed the public key authentication to allocate always the destination
signature buffer instead of using static buffer.
* Add the client on channel after it was resolved at the channel message
receiving, and it was not already on the channel.
* Fixed command line parameter handling. All SILC initialization is now done
in silc_core_init() which also fixes autoconnecting to servers.
* Rewrote the notify handling in Irssi SILC client to not call the events as
signals. Fixes problems with Perl support.
* Send the auto-nicking NICK command in client library with little timeout
after connecting.
* Fixed padding problem in PKCS#1. The padding was not actually random since
the random number generator was used incorrectly. This security bug affects
only when encrypting with PKCS#1, and it is not currently used at all in
SILC. SILC only use signing with PKCS#1.
* Fixed a NICK change bug in client library, to not recreate the
client_entry->channels hash table everytime nick is changed.
* Fixed NICK change printing in Irssi SILC Client. Fixed KICKED notify
printing in Irssi SILC Client.
* Fixed the lib/silcsftp/sftp_fs_memory.c to use silcutil routines instead
of calling directly OS routines.
* Added proper initializations to silc's irssi code, so it's now possible
to load it as module.
* Added silc_schedule_reinit function to do the enlarging of the max tasks
handling capabilities of the scheduler.
* Added `prefer_ipv6' argument to the functions
silc_net_gethostbyname[_async]. If it is TRUE it will return IPv6 address
over IPv4. If FALSE IPv4 address is returned even if IPv6 address was
found.
* Added support silc_net_create_connection[_async] to fallback to IPv4
address if IPv6 address could not be used (like if it doesn't work on
a specific system).