Browse Source

Added bitlbee 3.5.1 package

RISCi_ATOM 5 years ago
parent
commit
eb78d96578
2 changed files with 118 additions and 0 deletions
  1. 68 0
      net/bitlbee/Makefile
  2. 50 0
      net/bitlbee/patches/010-openssl-1.1-compatibility.patch

+ 68 - 0
net/bitlbee/Makefile

@@ -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))

+ 50 - 0
net/bitlbee/patches/010-openssl-1.1-compatibility.patch

@@ -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;