about summary refs log tree commit diff
path: root/pkgs/applications/networking/instant-messengers/silc-client
diff options
context:
space:
mode:
authorLluís Batlle i Rossell <viric@viric.name>2013-04-12 21:10:44 +0200
committerLluís Batlle i Rossell <viric@viric.name>2013-04-12 21:39:07 +0200
commitaaf0a34f2a3869b4f04205bfd4097fa57cf8ea47 (patch)
treede02f27a6ed504e6c8cd93848ade35deef55539f /pkgs/applications/networking/instant-messengers/silc-client
parent5e6c0de6c9f1dfd31e58668ea04e08c41d23a452 (diff)
Adding silc-client as irssi plugin
Alone, with its own irssi, doesn't build.
Diffstat (limited to 'pkgs/applications/networking/instant-messengers/silc-client')
-rw-r--r--pkgs/applications/networking/instant-messengers/silc-client/server_setup.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/pkgs/applications/networking/instant-messengers/silc-client/server_setup.patch b/pkgs/applications/networking/instant-messengers/silc-client/server_setup.patch
new file mode 100644
index 0000000000000..466194c0a8fe2
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/silc-client/server_setup.patch
@@ -0,0 +1,28 @@
+Add function to replace the behaviour of server_setup_find_port which was removed from irssi on revision 5125. Fixes bug #577501.
+--- a/apps/irssi/src/silc/core/client_ops.c
++++ b/apps/irssi/src/silc/core/client_ops.c
+@@ -2790,6 +2790,15 @@
+   silc_free(a);
+ }
+ 
++/* helper function to emulate server_setup_find_port */
++static SERVER_SETUP_REC *silc_server_setup_find_port(const char *address,
++						     int port) {
++  SERVER_SETUP_REC *rec;
++
++  rec = server_setup_find(address, port, NULL);
++  return (rec == NULL || rec->port != port) ? NULL : rec;
++}
++
+ /* Find authentication data by hostname and port. The hostname may be IP
+    address as well.*/
+ 
+@@ -2811,7 +2820,7 @@
+ 
+   /* Check whether we find the password for this server in our
+      configuration.  If it's set, always send it server. */
+-  setup = server_setup_find_port(hostname, port);
++  setup = silc_server_setup_find_port(hostname, port);
+   if (setup && setup->password) {
+     completion(SILC_AUTH_PASSWORD, setup->password, strlen(setup->password),
+ 	       context);