Added bitlbee 3.5.1 package
authorRISCi_ATOM <bob@bobcall.me>
Sat, 12 Jan 2019 17:25:46 +0000 (12:25 -0500)
committerRISCi_ATOM <bob@bobcall.me>
Sat, 12 Jan 2019 17:25:46 +0000 (12:25 -0500)
net/bitlbee/Makefile [new file with mode: 0644]
net/bitlbee/patches/010-openssl-1.1-compatibility.patch [new file with mode: 0644]

diff --git a/net/bitlbee/Makefile b/net/bitlbee/Makefile
new file mode 100644 (file)
index 0000000..90b8527
--- /dev/null
@@ -0,0 +1,68 @@
+#
+# Copyright (C) 2016 Nikil Mehta <nikil.mehta@gmail.com>
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=bitlbee
+PKG_VERSION:=3.5.1
+PKG_RELEASE:=2
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=http://get.bitlbee.org/src/ \
+                       http://distcache.FreeBSD.org/local-distfiles/brix/
+PKG_HASH:=9636d7fd89ebb3756c13a9a3387736ca6d56ccf66ec0580d512f07b21db0fa69
+
+PKG_MAINTAINER:=Nikil Mehta <nikil.mehta@gmail.com>
+PKG_LICENSE:=GPL-2.0
+PKG_LICENSE_FILES:=COPYING
+
+PKG_INSTALL:=1
+
+include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/nls.mk
+
+define Package/bitlbee
+  SECTION:=net
+  CATEGORY:=Network
+  SUBMENU:=Instant Messaging
+  TITLE:=An IRC to other chat networks gateway
+  URL:=http://www.bitlbee.org/
+  DEPENDS:=+glib2 +libopenssl $(ICONV_DEPENDS) $(INTL_DEPENDS)
+endef
+
+define Package/bitlbee/description
+       This program can be used as an IRC server which forwards everything you
+       say to people on other chat networks: Jabber (which includes Google Talk
+       and Facebook Chat), ICQ, AIM, MSN, Yahoo! and Twitter/Identica/Status.net.
+endef
+
+define Package/bitlbee/conffiles
+/etc/bitlbee/bitlbee.conf
+/etc/bitlbee/motd.txt
+endef
+
+CONFIGURE_ARGS = \
+       --target=$(GNU_TARGET_NAME) \
+       --host=$(GNU_TARGET_NAME) \
+       --build=$(GNU_HOST_NAME) \
+       --prefix=$(CONFIGURE_PREFIX) \
+       --etcdir=/etc/bitlbee \
+       --ssl=openssl \
+       --msn=0
+
+define Build/Install
+       $(call Build/Install/Default,install install-etc)
+endef
+
+define Package/bitlbee/install 
+       $(INSTALL_DIR) $(1)/usr/sbin
+       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/bitlbee $(1)/usr/sbin/
+       $(INSTALL_DIR) $(1)/etc/bitlbee
+       $(INSTALL_DATA) $(PKG_INSTALL_DIR)/etc/bitlbee/{bitlbee.conf,motd.txt} $(1)/etc/bitlbee
+endef
+
+$(eval $(call BuildPackage,bitlbee))
diff --git a/net/bitlbee/patches/010-openssl-1.1-compatibility.patch b/net/bitlbee/patches/010-openssl-1.1-compatibility.patch
new file mode 100644 (file)
index 0000000..02327e6
--- /dev/null
@@ -0,0 +1,50 @@
+--- a/lib/ssl_openssl.c
++++ b/lib/ssl_openssl.c
+@@ -64,11 +64,17 @@ void ssl_init(void)
+ {
+       const SSL_METHOD *meth;
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+       SSL_library_init();
+       meth = SSLv23_client_method();
+       ssl_ctx = SSL_CTX_new(meth);
+       SSL_CTX_set_options(ssl_ctx, SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3);
++#else
++      meth = TLS_client_method();
++      ssl_ctx = SSL_CTX_new(meth);
++      SSL_CTX_set_min_proto_version(ssl_ctx, TLS1_VERSION);
++#endif
+       initialized = TRUE;
+ }
+@@ -300,20 +306,20 @@ size_t ssl_des3_encrypt(const unsigned c
+                         const unsigned char *iv, unsigned char **res)
+ {
+       int output_length = 0;
+-      EVP_CIPHER_CTX ctx;
++      EVP_CIPHER_CTX *ctx;
+       *res = g_new0(unsigned char, 72);
+       /* Don't set key or IV because we will modify the parameters */
+-      EVP_CIPHER_CTX_init(&ctx);
+-      EVP_CipherInit_ex(&ctx, EVP_des_ede3_cbc(), NULL, NULL, NULL, 1);
+-      EVP_CIPHER_CTX_set_key_length(&ctx, key_len);
+-      EVP_CIPHER_CTX_set_padding(&ctx, 0);
++      ctx = EVP_CIPHER_CTX_new();
++      EVP_CipherInit_ex(ctx, EVP_des_ede3_cbc(), NULL, NULL, NULL, 1);
++      EVP_CIPHER_CTX_set_key_length(ctx, key_len);
++      EVP_CIPHER_CTX_set_padding(ctx, 0);
+       /* We finished modifying parameters so now we can set key and IV */
+-      EVP_CipherInit_ex(&ctx, NULL, NULL, key, iv, 1);
+-      EVP_CipherUpdate(&ctx, *res, &output_length, input, input_len);
+-      EVP_CipherFinal_ex(&ctx, *res, &output_length);
+-      EVP_CIPHER_CTX_cleanup(&ctx);
++      EVP_CipherInit_ex(ctx, NULL, NULL, key, iv, 1);
++      EVP_CipherUpdate(ctx, *res, &output_length, input, input_len);
++      EVP_CipherFinal_ex(ctx, *res, &output_length);
++      EVP_CIPHER_CTX_free(ctx);
+       //EVP_cleanup();
+       return output_length;