Commit graph

24 commits

Author SHA1 Message Date
tonnerre
ed6b94a3c4 Upgrade silc-client to version 1.1.7, fixing various crash and Perl problems.
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.
2009-01-12 06:46:43 +00:00
tonnerre
37fbcb8563 Upgrade silc-client to version 1.1.4. This fixes two security issues and
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.
2008-07-13 12:04:11 +00:00
salo
23a6466a7c Update to version 1.0.4.1
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
2007-05-18 21:04:25 +00:00
jlam
1a280185e1 Mechanical changes to package PLISTs to make use of LIBTOOLIZE_PLIST.
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".
2004-09-22 08:09:14 +00:00
salo
5bd41dd0f9 PKGREVISION++
- 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.
2004-06-06 11:45:06 +00:00
skrll
0c157532de The long awaited update libtool to 1.5.2.
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.
2004-02-05 20:14:05 +00:00
salo
36117744a1 Updated to version 1.0.1.
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.
2004-01-14 17:09:26 +00:00
salo
e4bb68cbc9 Updated to version 0.9.16.
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.
2003-11-18 18:14:32 +00:00
salo
32a0b53a9a Update to version 0.9.15.
- 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.
2003-11-01 16:45:13 +00:00
salo
fbaed1db37 Updated to version 0.9.14.
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.
2003-10-27 13:23:31 +00:00
salo
ddab288103 Upated to version 0.9.13,
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.
2003-10-16 12:34:50 +00:00
salo
1673f7cd8d Bump PKGREVISION: add Makefile.common shared with plugins, install
configuration files needed by plugins.
2003-04-27 22:28:29 +00:00
salo
50e1e28b6c Updated to version 0.9.12.
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.
2003-03-17 20:12:18 +00:00
salo
35b6872eca Update to version 0.9.11
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.
2003-01-08 23:53:53 +00:00
salo
1378731c0f An important note to all client users:
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.
2002-12-06 19:51:25 +00:00
salo
8cf1d1da2c Update to version 0.9.9.1.
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.
2002-12-04 17:26:48 +00:00
salo
c41dd0cca9 update to version 0.9.8
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.
2002-11-21 15:40:14 +00:00
hubertf
176d4c24a1 Update chat/silc-client to version 0.9.5.1. Changes:
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.
2002-09-12 23:05:37 +00:00
hubertf
26aa21efc7 Update silc-client to version 0.9.1. Changes:
* 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.
2002-05-24 21:38:07 +00:00
hubertf
75fac49990 Update silc-client to 0.8.6. Changes:
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
2002-05-03 21:51:56 +00:00
rh
ef2744b32e Update silc-client to 0.8.3. Update provided in PR pkg/16098 by the
package maintainer, Lubomir Sedlacik <salo@silcnet.org>, thanks!

Changes between 0.8.2 and 0.8.3
===============================

* Merged with latest Irssi from irssi.org CVS.

* Fixed minor IPv6 issues. IPv6 should now work without problems.

* Fixed the internal Unix scheduler functions to check for NULL
  context they may receive.

* Changed hardcoded ~/.silc paths to use get_irssi_dir() so you
  can specify different directory with --home command line parameter.

* SILC-specific commands aren't now executed if the active server
  isn't of SILC-type, so there won't be problems with having IRC
  and SILC protocol support in same client.


Changes between 0.8.1 and 0.8.2
===============================

* IPv6 support was broken with some of the network handling routines.
  Now they are fixed and every network routine should support IPv6.

* Merged with Irssi 0.8.4 from irssi.org CVS.

* Added "change" command to KEY command which can be used to change
  the current channel private key.  Bound the command also to
  alt+K (Alt©hift+k). See also /HELP KEY

* Fixed a packet sending bug on very high load, where outgoing
  packet queue wasn't handled correctly and packets got corrupted.

* Added checks for maximum length of channel message payload and
  private message payload too.

* Added checks for maximum packet length in client library.

* Fixed the handling of third parameter of KICKED notify, since
  it was mistakenly updated to SILC Protocol 1.0 even though it
  is to be included in 1.1.  Since it is not in 1.0 it is not
  mandatory, and this fix now handles it only if it is provided,
  and it is not error if it is not provided.
2002-03-29 11:29:22 +00:00
hubertf
9e17b947e1 Update silc-client to 0.8.1. Changes:
* 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.
2002-03-12 20:54:16 +00:00
hubertf
3533c420aa Update of chat/silc-client to version 0.8.
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).
2002-03-03 23:27:48 +00:00
hubertf
0b8c43a386 Add silc-client-0.6.6:
Client for the Secure Internet Live Conferencing (SILC)

Submitted by Lubomir Sedlacik <salo@Xtrmntr.org> in PR 14543
2001-11-29 16:17:43 +00:00