diff --git a/net/seafile-ccnet/Makefile b/net/seafile-ccnet/Makefile index 64603ed8f..beda03459 100644 --- a/net/seafile-ccnet/Makefile +++ b/net/seafile-ccnet/Makefile @@ -8,16 +8,16 @@ include $(TOPDIR)/rules.mk PKG_NAME:=seafile-ccnet -PKG_VERSION:=6.2.2 +PKG_VERSION:=6.3.0 PKG_RELEASE=$(PKG_SOURCE_VERSION)-1 PKG_LICENSE:=GPL-3.0 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/haiwen/ccnet-server.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=6b9d7e2920aa9b807f9efe9038439b57ce949ecc +PKG_SOURCE_VERSION:=614926b161623b267b4fb77fa1861718da406103 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz -PKG_MIRROR_HASH:=8aed6d2283ac7b3148f9b5c82b1d992ed36dc5193000cf727bdcfae7446ce1fe +PKG_MIRROR_HASH:=843660e05809e6a6e076cf4d5ea3a6aad65b9b03aa1eaa3b4d980a314e7aed61 PKG_FIXUP:=autoreconf PKG_INSTALL:=1 @@ -34,7 +34,7 @@ define Package/seafile-ccnet DEPENDS:=+libsearpc +libevent2 +libopenssl \ +glib2 +python +libzdb +libuuid \ +libpthread +libsqlite3 +jansson $(ICONV_DEPENDS) - EXTRA_DEPENDS:=libsearpc (=6.2.2-8998e7b2c5587f0b94c48db24e2952d08def5add-1) + EXTRA_DEPENDS:=libsearpc (=3.0.8-12a01268825e9c7e17794c58c367e3b4db912ad9-1) endef define Package/seafile-ccnet/description diff --git a/net/seafile-ccnet/patches/020-Remove-API-deprecated-in-openssl-1.1.patch b/net/seafile-ccnet/patches/020-Remove-API-deprecated-in-openssl-1.1.patch new file mode 100644 index 000000000..8d1d73c21 --- /dev/null +++ b/net/seafile-ccnet/patches/020-Remove-API-deprecated-in-openssl-1.1.patch @@ -0,0 +1,153 @@ +From afeb62f01ad6e610cd19dcde0ceffc018b3247ec Mon Sep 17 00:00:00 2001 +From: Eneas U de Queiroz +Date: Wed, 6 Jun 2018 18:05:33 -0300 +Subject: [PATCH] Remove API deprecated in openssl 1.1 + +With openssl 1.1, we do not call OpenSSL_add_all_algorithms(), as +library initialization is done automatically. +Functions RAND_pseudo_bytes and RSA_generate_key were deprecated as +well. +Also, we need to #include for BN_num_bytes(). + +Signed-off-by: Eneas U de Queiroz +--- + lib/rsa.c | 19 ++++++++++++++----- + net/common/processors/keepalive-proc.c | 4 ++-- + net/common/processors/keepalive2-proc.c | 2 +- + net/common/processors/sendsessionkey-proc.c | 2 +- + net/common/processors/sendsessionkey-v2-proc.c | 2 +- + net/server/user-mgr.c | 4 ++++ + tools/ccnet-init.c | 2 ++ + 7 files changed, 25 insertions(+), 10 deletions(-) + +diff --git a/lib/rsa.c b/lib/rsa.c +index 7cca150..23abb82 100644 +--- a/lib/rsa.c ++++ b/lib/rsa.c +@@ -4,6 +4,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -207,9 +208,17 @@ RSA * + generate_private_key(u_int bits) + { + RSA *private = NULL; +- +- private = RSA_generate_key(bits, 35, NULL, NULL); +- if (private == NULL) +- g_error ("rsa_generate_private_key: key generation failed."); +- return private; ++ BIGNUM *e = NULL; ++ ++ private = RSA_new(); ++ e = BN_new(); ++ if (private == NULL || e == NULL || !BN_set_word(e, 35) || ++ !RSA_generate_key_ex(private, bits, e, NULL)) { ++ BN_free(e); ++ return private; ++ } ++ BN_free(e); ++ RSA_free(private); ++ g_error ("rsa_generate_private_key: key generation failed."); ++ return NULL; + } +diff --git a/net/common/processors/keepalive-proc.c b/net/common/processors/keepalive-proc.c +index 609d102..42a0c23 100644 +--- a/net/common/processors/keepalive-proc.c ++++ b/net/common/processors/keepalive-proc.c +@@ -401,7 +401,7 @@ static void send_challenge(CcnetProcessor *processor) + unsigned char *buf; + int len; + +- RAND_pseudo_bytes (priv->random_buf, 40); ++ RAND_bytes (priv->random_buf, 40); + buf = public_key_encrypt (peer->pubkey, priv->random_buf, 40, &len); + ccnet_processor_send_update (processor, "311", NULL, (char *)buf, len); + +@@ -434,7 +434,7 @@ static void send_challenge_user(CcnetProcessor *processor, CcnetUser *user) + + ccnet_debug ("[Keepalive] Send user challenge to %.8s\n", + processor->peer->id); +- RAND_pseudo_bytes (priv->random_buf, 40); ++ RAND_bytes (priv->random_buf, 40); + buf = public_key_encrypt (user->pubkey, priv->random_buf, 40, &len); + ccnet_processor_send_update (processor, "321", NULL, (char *)buf, len); + +diff --git a/net/common/processors/keepalive2-proc.c b/net/common/processors/keepalive2-proc.c +index d3e799e..d81c266 100644 +--- a/net/common/processors/keepalive2-proc.c ++++ b/net/common/processors/keepalive2-proc.c +@@ -306,7 +306,7 @@ static void send_challenge(CcnetProcessor *processor) + unsigned char *buf; + int len; + +- RAND_pseudo_bytes (priv->random_buf, 40); ++ RAND_bytes (priv->random_buf, 40); + buf = public_key_encrypt (peer->pubkey, priv->random_buf, 40, &len); + if (len < 0) { + ccnet_debug ("[Keepalive] Failed to encrypt challenge " +diff --git a/net/common/processors/sendsessionkey-proc.c b/net/common/processors/sendsessionkey-proc.c +index 3ec2757..10c3340 100644 +--- a/net/common/processors/sendsessionkey-proc.c ++++ b/net/common/processors/sendsessionkey-proc.c +@@ -124,7 +124,7 @@ generate_session_key (CcnetProcessor *processor, int *len_p) + unsigned char random_buf[40]; + SHA_CTX s; + +- RAND_pseudo_bytes (random_buf, sizeof(random_buf)); ++ RAND_bytes (random_buf, sizeof(random_buf)); + + SHA1_Init (&s); + SHA1_Update (&s, random_buf, sizeof(random_buf)); +diff --git a/net/common/processors/sendsessionkey-v2-proc.c b/net/common/processors/sendsessionkey-v2-proc.c +index c1c6924..4805ba6 100644 +--- a/net/common/processors/sendsessionkey-v2-proc.c ++++ b/net/common/processors/sendsessionkey-v2-proc.c +@@ -125,7 +125,7 @@ generate_session_key (CcnetProcessor *processor, int *len_p) + unsigned char random_buf[40]; + SHA_CTX s; + +- RAND_pseudo_bytes (random_buf, sizeof(random_buf)); ++ RAND_bytes (random_buf, sizeof(random_buf)); + + SHA1_Init (&s); + SHA1_Update (&s, random_buf, sizeof(random_buf)); +diff --git a/net/server/user-mgr.c b/net/server/user-mgr.c +index 0973959..3f0c3b3 100644 +--- a/net/server/user-mgr.c ++++ b/net/server/user-mgr.c +@@ -811,9 +811,13 @@ hash_password_pbkdf2_sha256 (const char *passwd, + char salt_str[SHA256_DIGEST_LENGTH*2+1]; + + if (!RAND_bytes (salt, sizeof(salt))) { ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || OPENSSL_API_COMPAT < 0x10100000L + ccnet_warning ("Failed to generate salt " + "with RAND_bytes(), use RAND_pseudo_bytes().\n"); + RAND_pseudo_bytes (salt, sizeof(salt)); ++#else ++ ccnet_warning ("Failed to generate salt with RAND_bytes().\n"); ++#endif + } + + PKCS5_PBKDF2_HMAC (passwd, strlen(passwd), +diff --git a/tools/ccnet-init.c b/tools/ccnet-init.c +index 4748962..28c9995 100644 +--- a/tools/ccnet-init.c ++++ b/tools/ccnet-init.c +@@ -162,7 +162,9 @@ main(int argc, char **argv) + + config_dir = ccnet_expand_path (config_dir); + /* printf("[conf_dir=%s\n]", config_dir); */ ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + OpenSSL_add_all_algorithms(); ++#endif + + if (RAND_status() != 1) { /* it should be seeded automatically */ + fprintf(stderr, "PRNG is not seeded\n"); +-- +2.16.4 +