diff options
author | Jakov Smolic <jakov.smolic@sartura.hr> | 2021-01-12 11:48:46 +0100 |
---|---|---|
committer | David Seifert <soap@gentoo.org> | 2021-01-12 11:48:46 +0100 |
commit | fe3fa62844449e6a4c6d013aa06abf609f628a10 (patch) | |
tree | 5696e0a5a49d85a4d701c82714475b540b72c393 /net-vpn/vtun | |
parent | sci-libs/lrslib: Bump to 071 (diff) | |
download | gentoo-fe3fa62844449e6a4c6d013aa06abf609f628a10.tar.gz gentoo-fe3fa62844449e6a4c6d013aa06abf609f628a10.tar.bz2 gentoo-fe3fa62844449e6a4c6d013aa06abf609f628a10.zip |
net-vpn/vtun: Port to EAPI 7
Closes: https://bugs.gentoo.org/708372
Signed-off-by: Jakov Smolic <jakov.smolic@sartura.hr>
Signed-off-by: David Seifert <soap@gentoo.org>
Diffstat (limited to 'net-vpn/vtun')
-rw-r--r-- | net-vpn/vtun/files/vtun-3.0.2-remove-config-presence-check.patch | 4 | ||||
-rw-r--r-- | net-vpn/vtun/files/vtun-3.0.3-C99-inline.patch | 49 | ||||
-rw-r--r-- | net-vpn/vtun/files/vtun-3.0.3-fno-common.patch | 25 | ||||
-rw-r--r-- | net-vpn/vtun/files/vtun-3.0.3-gcc5.patch | 6 | ||||
-rw-r--r-- | net-vpn/vtun/files/vtun-3.0.3-includes.patch | 24 | ||||
-rw-r--r-- | net-vpn/vtun/files/vtun-libssl-1.1.patch | 458 | ||||
-rw-r--r-- | net-vpn/vtun/vtun-3.0.3-r2.ebuild (renamed from net-vpn/vtun/vtun-3.0.3-r1.ebuild) | 44 |
7 files changed, 342 insertions, 268 deletions
diff --git a/net-vpn/vtun/files/vtun-3.0.2-remove-config-presence-check.patch b/net-vpn/vtun/files/vtun-3.0.2-remove-config-presence-check.patch index 15b3bf273c34..c2d9e7d999a7 100644 --- a/net-vpn/vtun/files/vtun-3.0.2-remove-config-presence-check.patch +++ b/net-vpn/vtun/files/vtun-3.0.2-remove-config-presence-check.patch @@ -1,5 +1,5 @@ ---- Makefile.in.orig 2012-06-11 23:31:11.416075337 +0400 -+++ Makefile.in 2012-06-11 23:31:21.247324839 +0400 +--- a/Makefile.in ++++ b/Makefile.in @@ -86,9 +86,7 @@ install_config: diff --git a/net-vpn/vtun/files/vtun-3.0.3-C99-inline.patch b/net-vpn/vtun/files/vtun-3.0.3-C99-inline.patch new file mode 100644 index 000000000000..0e7c68be8f13 --- /dev/null +++ b/net-vpn/vtun/files/vtun-3.0.3-C99-inline.patch @@ -0,0 +1,49 @@ +--- a/lfd_shaper.c ++++ b/lfd_shaper.c +@@ -69,7 +69,7 @@ int shaper_counter(int len, char *in, char **out) + } + + /* Convert tv struct to milisec */ +-unsigned long inline tv2ms(struct timeval tv) ++unsigned long tv2ms(struct timeval tv) + { + register unsigned long ms = (tv.tv_sec * 1000)+(tv.tv_usec / 1000); + return ms ? ms : 1; +--- a/linkfd.c ++++ b/linkfd.c +@@ -105,7 +105,7 @@ int lfd_free_mod(void) + } + + /* Run modules down (from head to tail) */ +-inline int lfd_run_down(int len, char *in, char **out) ++int lfd_run_down(int len, char *in, char **out) + { + register struct lfd_mod *mod; + +@@ -119,7 +119,7 @@ inline int lfd_run_down(int len, char *in, char **out) + } + + /* Run modules up (from tail to head) */ +-inline int lfd_run_up(int len, char *in, char **out) ++int lfd_run_up(int len, char *in, char **out) + { + register struct lfd_mod *mod; + +@@ -133,7 +133,7 @@ inline int lfd_run_up(int len, char *in, char **out) + } + + /* Check if modules are accepting the data(down) */ +-inline int lfd_check_down(void) ++int lfd_check_down(void) + { + register struct lfd_mod *mod; + int err = 1; +@@ -145,7 +145,7 @@ inline int lfd_check_down(void) + } + + /* Check if modules are accepting the data(up) */ +-inline int lfd_check_up(void) ++int lfd_check_up(void) + { + register struct lfd_mod *mod; + int err = 1; diff --git a/net-vpn/vtun/files/vtun-3.0.3-fno-common.patch b/net-vpn/vtun/files/vtun-3.0.3-fno-common.patch new file mode 100644 index 000000000000..2dd6dd2e3348 --- /dev/null +++ b/net-vpn/vtun/files/vtun-3.0.3-fno-common.patch @@ -0,0 +1,25 @@ +https://bugs.gentoo.org/708372 +--- a/auth.c ++++ b/auth.c +@@ -70,7 +70,7 @@ void gen_chal(char *buf) + void encrypt_chal(char *chal, char *pwd) + { + register int i; +- BF_KEY key; ++ extern BF_KEY key; + + BF_set_key(&key, 16, MD5(pwd,strlen(pwd),NULL)); + +--- a/lfd_encrypt.c ++++ b/lfd_encrypt.c +@@ -64,8 +64,8 @@ + #define ENC_BUF_SIZE VTUN_FRAME_SIZE + 128 + #define ENC_KEY_SIZE 16 + +-BF_KEY key; +-char * enc_buf; ++extern BF_KEY key; ++extern char * enc_buf; + char * dec_buf; + + #define CIPHER_INIT 0 diff --git a/net-vpn/vtun/files/vtun-3.0.3-gcc5.patch b/net-vpn/vtun/files/vtun-3.0.3-gcc5.patch index 99c6531d7268..8270f7a4d9ed 100644 --- a/net-vpn/vtun/files/vtun-3.0.3-gcc5.patch +++ b/net-vpn/vtun/files/vtun-3.0.3-gcc5.patch @@ -1,7 +1,5 @@ -Index: vtun-3.0.3/cfg_file.y -=================================================================== ---- vtun-3.0.3.orig/cfg_file.y -+++ vtun-3.0.3/cfg_file.y +--- a/cfg_file.y ++++ b/cfg_file.y @@ -624,7 +624,7 @@ int clear_nat_hack_client(void *d, void } diff --git a/net-vpn/vtun/files/vtun-3.0.3-includes.patch b/net-vpn/vtun/files/vtun-3.0.3-includes.patch index cd7cf6a2a2ee..46ff5eca90a4 100644 --- a/net-vpn/vtun/files/vtun-3.0.3-includes.patch +++ b/net-vpn/vtun/files/vtun-3.0.3-includes.patch @@ -1,5 +1,5 @@ ---- a/lfd_encrypt.c 2008-01-07 23:35:32.000000000 +0100 -+++ b/lfd_encrypt.c 2010-09-18 04:53:31.000000000 +0200 +--- a/lfd_encrypt.c ++++ b/lfd_encrypt.c @@ -44,6 +44,7 @@ #include <strings.h> #include <string.h> @@ -8,8 +8,8 @@ #include "vtun.h" #include "linkfd.h" ---- a/lib.c 2008-01-07 23:35:40.000000000 +0100 -+++ b/lib.c 2010-09-18 04:52:51.000000000 +0200 +--- a/lib.c ++++ b/lib.c @@ -34,6 +34,7 @@ #include <sys/wait.h> #include <syslog.h> @@ -18,8 +18,8 @@ #include "vtun.h" #include "linkfd.h" ---- a/lib.h 2008-01-07 23:35:41.000000000 +0100 -+++ b/lib.h 2010-09-18 04:56:50.000000000 +0200 +--- a/lib.h ++++ b/lib.h @@ -26,6 +26,7 @@ #include <sys/types.h> #include <signal.h> @@ -28,8 +28,8 @@ #ifdef HAVE_LIBUTIL_H #include <libutil.h> ---- a/vtun.h 2008-01-07 23:36:07.000000000 +0100 -+++ b/vtun.h 2010-09-18 04:56:08.000000000 +0200 +--- a/vtun.h ++++ b/vtun.h @@ -232,5 +232,9 @@ int read_config(char *file); struct vtun_host * find_host(char *host); @@ -40,8 +40,8 @@ +int recv_ib_mesg(int *len, char **in); #endif ---- a/lock.c 2008-01-07 23:35:50.000000000 +0100 -+++ b/lock.c 2010-09-18 05:01:21.000000000 +0200 +--- a/lock.c ++++ b/lock.c @@ -32,6 +32,7 @@ #include <sys/types.h> #include <signal.h> @@ -50,8 +50,8 @@ #include "vtun.h" #include "linkfd.h" ---- a/lfd_shaper.c 2008-01-07 23:35:36.000000000 +0100 -+++ b/lfd_shaper.c 2010-09-18 05:07:12.000000000 +0200 +--- a/lfd_shaper.c ++++ b/lfd_shaper.c @@ -27,6 +27,7 @@ #include <stdlib.h> #include <sys/time.h> diff --git a/net-vpn/vtun/files/vtun-libssl-1.1.patch b/net-vpn/vtun/files/vtun-libssl-1.1.patch index 76a3c027d889..f2bf0c1fa82b 100644 --- a/net-vpn/vtun/files/vtun-libssl-1.1.patch +++ b/net-vpn/vtun/files/vtun-libssl-1.1.patch @@ -1,229 +1,229 @@ ---- vtun-3.0.3/lfd_encrypt.c.orig 2019-02-25 18:43:39.310480427 -0500
-+++ vtun-3.0.3/lfd_encrypt.c 2019-02-25 18:55:26.956441285 -0500
-@@ -96,11 +96,11 @@
- char * pkey;
- char * iv_buf;
-
--EVP_CIPHER_CTX ctx_enc; /* encrypt */
--EVP_CIPHER_CTX ctx_dec; /* decrypt */
-+EVP_CIPHER_CTX *ctx_enc; /* encrypt */
-+EVP_CIPHER_CTX *ctx_dec; /* decrypt */
-
--EVP_CIPHER_CTX ctx_enc_ecb; /* sideband ecb encrypt */
--EVP_CIPHER_CTX ctx_dec_ecb; /* sideband ecb decrypt */
-+EVP_CIPHER_CTX *ctx_enc_ecb; /* sideband ecb encrypt */
-+EVP_CIPHER_CTX *ctx_dec_ecb; /* sideband ecb decrypt */
-
- int prep_key(char **key, int size, struct vtun_host *host)
- {
-@@ -152,6 +152,11 @@
- EVP_CIPHER_CTX *pctx_enc;
- EVP_CIPHER_CTX *pctx_dec;
-
-+ ctx_enc = EVP_CIPHER_CTX_new();
-+ ctx_dec = EVP_CIPHER_CTX_new();
-+ ctx_enc_ecb = EVP_CIPHER_CTX_new();
-+ ctx_dec_ecb = EVP_CIPHER_CTX_new();
-+
- enc_init_first_time = 1;
- dec_init_first_time = 1;
-
-@@ -178,15 +183,15 @@
- keysize = 32;
- sb_init = 1;
- cipher_type = EVP_aes_256_ecb();
-- pctx_enc = &ctx_enc_ecb;
-- pctx_dec = &ctx_dec_ecb;
-+ pctx_enc = ctx_enc_ecb;
-+ pctx_dec = ctx_dec_ecb;
- break;
-
- case VTUN_ENC_AES256ECB:
- blocksize = 16;
- keysize = 32;
-- pctx_enc = &ctx_enc;
-- pctx_dec = &ctx_dec;
-+ pctx_enc = ctx_enc;
-+ pctx_dec = ctx_dec;
- cipher_type = EVP_aes_256_ecb();
- strcpy(cipher_name,"AES-256-ECB");
- break;
-@@ -197,14 +202,14 @@
- keysize = 16;
- sb_init=1;
- cipher_type = EVP_aes_128_ecb();
-- pctx_enc = &ctx_enc_ecb;
-- pctx_dec = &ctx_dec_ecb;
-+ pctx_enc = ctx_enc_ecb;
-+ pctx_dec = ctx_dec_ecb;
- break;
- case VTUN_ENC_AES128ECB:
- blocksize = 16;
- keysize = 16;
-- pctx_enc = &ctx_enc;
-- pctx_dec = &ctx_dec;
-+ pctx_enc = ctx_enc;
-+ pctx_dec = ctx_dec;
- cipher_type = EVP_aes_128_ecb();
- strcpy(cipher_name,"AES-128-ECB");
- break;
-@@ -217,16 +222,16 @@
- var_key = 1;
- sb_init = 1;
- cipher_type = EVP_bf_ecb();
-- pctx_enc = &ctx_enc_ecb;
-- pctx_dec = &ctx_dec_ecb;
-+ pctx_enc = ctx_enc_ecb;
-+ pctx_dec = ctx_dec_ecb;
- break;
-
- case VTUN_ENC_BF256ECB:
- blocksize = 8;
- keysize = 32;
- var_key = 1;
-- pctx_enc = &ctx_enc;
-- pctx_dec = &ctx_dec;
-+ pctx_enc = ctx_enc;
-+ pctx_dec = ctx_dec;
- cipher_type = EVP_bf_ecb();
- strcpy(cipher_name,"Blowfish-256-ECB");
- break;
-@@ -239,16 +244,16 @@
- var_key = 1;
- sb_init = 1;
- cipher_type = EVP_bf_ecb();
-- pctx_enc = &ctx_enc_ecb;
-- pctx_dec = &ctx_dec_ecb;
-+ pctx_enc = ctx_enc_ecb;
-+ pctx_dec = ctx_dec_ecb;
- break;
- case VTUN_ENC_BF128ECB: /* blowfish 128 ecb is the default */
- default:
- blocksize = 8;
- keysize = 16;
- var_key = 1;
-- pctx_enc = &ctx_enc;
-- pctx_dec = &ctx_dec;
-+ pctx_enc = ctx_enc;
-+ pctx_dec = ctx_dec;
- cipher_type = EVP_bf_ecb();
- strcpy(cipher_name,"Blowfish-128-ECB");
- break;
-@@ -290,10 +295,10 @@
- lfd_free(enc_buf); enc_buf = NULL;
- lfd_free(dec_buf); dec_buf = NULL;
-
-- EVP_CIPHER_CTX_cleanup(&ctx_enc);
-- EVP_CIPHER_CTX_cleanup(&ctx_dec);
-- EVP_CIPHER_CTX_cleanup(&ctx_enc_ecb);
-- EVP_CIPHER_CTX_cleanup(&ctx_dec_ecb);
-+ EVP_CIPHER_CTX_free(ctx_enc);
-+ EVP_CIPHER_CTX_free(ctx_dec);
-+ EVP_CIPHER_CTX_free(ctx_enc_ecb);
-+ EVP_CIPHER_CTX_free(ctx_dec_ecb);
-
- return 0;
- }
-@@ -319,7 +324,7 @@
- outlen=len+pad;
- if (pad == blocksize)
- RAND_bytes(in_ptr+len, blocksize-1);
-- EVP_EncryptUpdate(&ctx_enc, out_ptr, &outlen, in_ptr, len+pad);
-+ EVP_EncryptUpdate(ctx_enc, out_ptr, &outlen, in_ptr, len+pad);
- *out = enc_buf;
-
- sequence_num++;
-@@ -339,7 +344,7 @@
-
- outlen=len;
- if (!len) return 0;
-- EVP_DecryptUpdate(&ctx_dec, out_ptr, &outlen, in_ptr, len);
-+ EVP_DecryptUpdate(ctx_dec, out_ptr, &outlen, in_ptr, len);
- recv_ib_mesg(&outlen, &out_ptr);
- if (!outlen) return 0;
- tmp_ptr = out_ptr + outlen; tmp_ptr--;
-@@ -427,13 +432,13 @@
- break;
- } /* switch(cipher) */
-
-- EVP_CIPHER_CTX_init(&ctx_enc);
-- EVP_EncryptInit_ex(&ctx_enc, cipher_type, NULL, NULL, NULL);
-+ EVP_CIPHER_CTX_init(ctx_enc);
-+ EVP_EncryptInit_ex(ctx_enc, cipher_type, NULL, NULL, NULL);
- if (var_key)
-- EVP_CIPHER_CTX_set_key_length(&ctx_enc, keysize);
-- EVP_EncryptInit_ex(&ctx_enc, NULL, NULL, pkey, NULL);
-- EVP_EncryptInit_ex(&ctx_enc, NULL, NULL, NULL, iv);
-- EVP_CIPHER_CTX_set_padding(&ctx_enc, 0);
-+ EVP_CIPHER_CTX_set_key_length(ctx_enc, keysize);
-+ EVP_EncryptInit_ex(ctx_enc, NULL, NULL, pkey, NULL);
-+ EVP_EncryptInit_ex(ctx_enc, NULL, NULL, NULL, iv);
-+ EVP_CIPHER_CTX_set_padding(ctx_enc, 0);
- if (enc_init_first_time)
- {
- sprintf(tmpstr,"%s encryption initialized", cipher_name);
-@@ -517,13 +522,13 @@
- break;
- } /* switch(cipher) */
-
-- EVP_CIPHER_CTX_init(&ctx_dec);
-- EVP_DecryptInit_ex(&ctx_dec, cipher_type, NULL, NULL, NULL);
-+ EVP_CIPHER_CTX_init(ctx_dec);
-+ EVP_DecryptInit_ex(ctx_dec, cipher_type, NULL, NULL, NULL);
- if (var_key)
-- EVP_CIPHER_CTX_set_key_length(&ctx_dec, keysize);
-- EVP_DecryptInit_ex(&ctx_dec, NULL, NULL, pkey, NULL);
-- EVP_DecryptInit_ex(&ctx_dec, NULL, NULL, NULL, iv);
-- EVP_CIPHER_CTX_set_padding(&ctx_dec, 0);
-+ EVP_CIPHER_CTX_set_key_length(ctx_dec, keysize);
-+ EVP_DecryptInit_ex(ctx_dec, NULL, NULL, pkey, NULL);
-+ EVP_DecryptInit_ex(ctx_dec, NULL, NULL, NULL, iv);
-+ EVP_CIPHER_CTX_set_padding(ctx_dec, 0);
- if (dec_init_first_time)
- {
- sprintf(tmpstr,"%s decryption initialized", cipher_name);
-@@ -555,7 +560,7 @@
-
- in_ptr = in - blocksize*2;
- outlen = blocksize*2;
-- EVP_EncryptUpdate(&ctx_enc_ecb, in_ptr,
-+ EVP_EncryptUpdate(ctx_enc_ecb, in_ptr,
- &outlen, in_ptr, blocksize*2);
- *out = in_ptr;
- len = outlen;
-@@ -582,7 +587,7 @@
- in_ptr = in;
- iv = malloc(blocksize);
- outlen = blocksize*2;
-- EVP_DecryptUpdate(&ctx_dec_ecb, in_ptr, &outlen, in_ptr, blocksize*2);
-+ EVP_DecryptUpdate(ctx_dec_ecb, in_ptr, &outlen, in_ptr, blocksize*2);
-
- if ( !strncmp(in_ptr, "ivec", 4) )
- {
-@@ -625,7 +630,7 @@
- if (cipher_enc_state != CIPHER_INIT)
- {
- cipher_enc_state = CIPHER_INIT;
-- EVP_CIPHER_CTX_cleanup(&ctx_enc);
-+ EVP_CIPHER_CTX_cleanup(ctx_enc);
- #ifdef LFD_ENCRYPT_DEBUG
- vtun_syslog(LOG_INFO,
- "Forcing local encryptor re-init");
-@@ -706,7 +711,7 @@
- if (cipher_enc_state != CIPHER_INIT)
- {
- cipher_enc_state = CIPHER_INIT;
-- EVP_CIPHER_CTX_cleanup(&ctx_enc);
-+ EVP_CIPHER_CTX_cleanup(ctx_enc);
- }
- #ifdef LFD_ENCRYPT_DEBUG
- vtun_syslog(LOG_INFO, "Remote requests encryptor re-init");
-@@ -720,7 +725,7 @@
- cipher_enc_state != CIPHER_REQ_INIT &&
- cipher_enc_state != CIPHER_INIT)
- {
-- EVP_CIPHER_CTX_cleanup (&ctx_dec);
-+ EVP_CIPHER_CTX_cleanup (ctx_dec);
- cipher_dec_state = CIPHER_INIT;
- cipher_enc_state = CIPHER_REQ_INIT;
- }
+--- a/lfd_encrypt.c ++++ b/lfd_encrypt.c +@@ -96,11 +96,11 @@ unsigned long sequence_num; + char * pkey; + char * iv_buf; + +-EVP_CIPHER_CTX ctx_enc; /* encrypt */ +-EVP_CIPHER_CTX ctx_dec; /* decrypt */ ++EVP_CIPHER_CTX *ctx_enc; /* encrypt */ ++EVP_CIPHER_CTX *ctx_dec; /* decrypt */ + +-EVP_CIPHER_CTX ctx_enc_ecb; /* sideband ecb encrypt */ +-EVP_CIPHER_CTX ctx_dec_ecb; /* sideband ecb decrypt */ ++EVP_CIPHER_CTX *ctx_enc_ecb; /* sideband ecb encrypt */ ++EVP_CIPHER_CTX *ctx_dec_ecb; /* sideband ecb decrypt */ + + int prep_key(char **key, int size, struct vtun_host *host) + { +@@ -151,6 +151,11 @@ int alloc_encrypt(struct vtun_host *host) + char cipher_name[32]; + EVP_CIPHER_CTX *pctx_enc; + EVP_CIPHER_CTX *pctx_dec; ++ ++ ctx_enc = EVP_CIPHER_CTX_new(); ++ ctx_dec = EVP_CIPHER_CTX_new(); ++ ctx_enc_ecb = EVP_CIPHER_CTX_new(); ++ ctx_dec_ecb = EVP_CIPHER_CTX_new(); + + enc_init_first_time = 1; + dec_init_first_time = 1; +@@ -178,15 +183,15 @@ int alloc_encrypt(struct vtun_host *host) + keysize = 32; + sb_init = 1; + cipher_type = EVP_aes_256_ecb(); +- pctx_enc = &ctx_enc_ecb; +- pctx_dec = &ctx_dec_ecb; ++ pctx_enc = ctx_enc_ecb; ++ pctx_dec = ctx_dec_ecb; + break; + + case VTUN_ENC_AES256ECB: + blocksize = 16; + keysize = 32; +- pctx_enc = &ctx_enc; +- pctx_dec = &ctx_dec; ++ pctx_enc = ctx_enc; ++ pctx_dec = ctx_dec; + cipher_type = EVP_aes_256_ecb(); + strcpy(cipher_name,"AES-256-ECB"); + break; +@@ -197,14 +202,14 @@ int alloc_encrypt(struct vtun_host *host) + keysize = 16; + sb_init=1; + cipher_type = EVP_aes_128_ecb(); +- pctx_enc = &ctx_enc_ecb; +- pctx_dec = &ctx_dec_ecb; ++ pctx_enc = ctx_enc_ecb; ++ pctx_dec = ctx_dec_ecb; + break; + case VTUN_ENC_AES128ECB: + blocksize = 16; + keysize = 16; +- pctx_enc = &ctx_enc; +- pctx_dec = &ctx_dec; ++ pctx_enc = ctx_enc; ++ pctx_dec = ctx_dec; + cipher_type = EVP_aes_128_ecb(); + strcpy(cipher_name,"AES-128-ECB"); + break; +@@ -217,16 +222,16 @@ int alloc_encrypt(struct vtun_host *host) + var_key = 1; + sb_init = 1; + cipher_type = EVP_bf_ecb(); +- pctx_enc = &ctx_enc_ecb; +- pctx_dec = &ctx_dec_ecb; ++ pctx_enc = ctx_enc_ecb; ++ pctx_dec = ctx_dec_ecb; + break; + + case VTUN_ENC_BF256ECB: + blocksize = 8; + keysize = 32; + var_key = 1; +- pctx_enc = &ctx_enc; +- pctx_dec = &ctx_dec; ++ pctx_enc = ctx_enc; ++ pctx_dec = ctx_dec; + cipher_type = EVP_bf_ecb(); + strcpy(cipher_name,"Blowfish-256-ECB"); + break; +@@ -239,16 +244,16 @@ int alloc_encrypt(struct vtun_host *host) + var_key = 1; + sb_init = 1; + cipher_type = EVP_bf_ecb(); +- pctx_enc = &ctx_enc_ecb; +- pctx_dec = &ctx_dec_ecb; ++ pctx_enc = ctx_enc_ecb; ++ pctx_dec = ctx_dec_ecb; + break; + case VTUN_ENC_BF128ECB: /* blowfish 128 ecb is the default */ + default: + blocksize = 8; + keysize = 16; + var_key = 1; +- pctx_enc = &ctx_enc; +- pctx_dec = &ctx_dec; ++ pctx_enc = ctx_enc; ++ pctx_dec = ctx_dec; + cipher_type = EVP_bf_ecb(); + strcpy(cipher_name,"Blowfish-128-ECB"); + break; +@@ -290,10 +295,10 @@ int free_encrypt() + lfd_free(enc_buf); enc_buf = NULL; + lfd_free(dec_buf); dec_buf = NULL; + +- EVP_CIPHER_CTX_cleanup(&ctx_enc); +- EVP_CIPHER_CTX_cleanup(&ctx_dec); +- EVP_CIPHER_CTX_cleanup(&ctx_enc_ecb); +- EVP_CIPHER_CTX_cleanup(&ctx_dec_ecb); ++ EVP_CIPHER_CTX_cleanup(ctx_enc); ++ EVP_CIPHER_CTX_cleanup(ctx_dec); ++ EVP_CIPHER_CTX_cleanup(ctx_enc_ecb); ++ EVP_CIPHER_CTX_cleanup(ctx_dec_ecb); + + return 0; + } +@@ -319,7 +324,7 @@ int encrypt_buf(int len, char *in, char **out) + outlen=len+pad; + if (pad == blocksize) + RAND_bytes(in_ptr+len, blocksize-1); +- EVP_EncryptUpdate(&ctx_enc, out_ptr, &outlen, in_ptr, len+pad); ++ EVP_EncryptUpdate(&ctx_enc, out_ptr, outlen, in_ptr, len+pad); + *out = enc_buf; + + sequence_num++; +@@ -339,7 +344,7 @@ int decrypt_buf(int len, char *in, char **out) + + outlen=len; + if (!len) return 0; +- EVP_DecryptUpdate(&ctx_dec, out_ptr, &outlen, in_ptr, len); ++ EVP_DecryptUpdate(ctx_dec, out_ptr, &outlen, in_ptr, len); + recv_ib_mesg(&outlen, &out_ptr); + if (!outlen) return 0; + tmp_ptr = out_ptr + outlen; tmp_ptr--; +@@ -427,13 +432,13 @@ int cipher_enc_init(char * iv) + break; + } /* switch(cipher) */ + +- EVP_CIPHER_CTX_init(&ctx_enc); +- EVP_EncryptInit_ex(&ctx_enc, cipher_type, NULL, NULL, NULL); ++ EVP_CIPHER_CTX_init(ctx_enc); ++ EVP_EncryptInit_ex(ctx_enc, cipher_type, NULL, NULL, NULL); + if (var_key) +- EVP_CIPHER_CTX_set_key_length(&ctx_enc, keysize); +- EVP_EncryptInit_ex(&ctx_enc, NULL, NULL, pkey, NULL); +- EVP_EncryptInit_ex(&ctx_enc, NULL, NULL, NULL, iv); +- EVP_CIPHER_CTX_set_padding(&ctx_enc, 0); ++ EVP_CIPHER_CTX_set_key_length(ctx_enc, keysize); ++ EVP_EncryptInit_ex(ctx_enc, NULL, NULL, pkey, NULL); ++ EVP_EncryptInit_ex(ctx_enc, NULL, NULL, NULL, iv); ++ EVP_CIPHER_CTX_set_padding(ctx_enc, 0); + if (enc_init_first_time) + { + sprintf(tmpstr,"%s encryption initialized", cipher_name); +@@ -517,13 +522,13 @@ int cipher_dec_init(char * iv) + break; + } /* switch(cipher) */ + +- EVP_CIPHER_CTX_init(&ctx_dec); +- EVP_DecryptInit_ex(&ctx_dec, cipher_type, NULL, NULL, NULL); ++ EVP_CIPHER_CTX_init(ctx_dec); ++ EVP_DecryptInit_ex(ctx_dec, cipher_type, NULL, NULL, NULL); + if (var_key) +- EVP_CIPHER_CTX_set_key_length(&ctx_dec, keysize); +- EVP_DecryptInit_ex(&ctx_dec, NULL, NULL, pkey, NULL); +- EVP_DecryptInit_ex(&ctx_dec, NULL, NULL, NULL, iv); +- EVP_CIPHER_CTX_set_padding(&ctx_dec, 0); ++ EVP_CIPHER_CTX_set_key_length(ctx_dec, keysize); ++ EVP_DecryptInit_ex(ctx_dec, NULL, NULL, pkey, NULL); ++ EVP_DecryptInit_ex(ctx_dec, NULL, NULL, NULL, iv); ++ EVP_CIPHER_CTX_set_padding(ctx_dec, 0); + if (dec_init_first_time) + { + sprintf(tmpstr,"%s decryption initialized", cipher_name); +@@ -555,7 +560,7 @@ int send_msg(int len, char *in, char **out) + + in_ptr = in - blocksize*2; + outlen = blocksize*2; +- EVP_EncryptUpdate(&ctx_enc_ecb, in_ptr, ++ EVP_EncryptUpdate(ctx_enc_ecb, in_ptr, + &outlen, in_ptr, blocksize*2); + *out = in_ptr; + len = outlen; +@@ -582,7 +587,7 @@ int recv_msg(int len, char *in, char **out) + in_ptr = in; + iv = malloc(blocksize); + outlen = blocksize*2; +- EVP_DecryptUpdate(&ctx_dec_ecb, in_ptr, &outlen, in_ptr, blocksize*2); ++ EVP_DecryptUpdate(ctx_dec_ecb, in_ptr, &outlen, in_ptr, blocksize*2); + + if ( !strncmp(in_ptr, "ivec", 4) ) + { +@@ -625,7 +630,7 @@ int recv_msg(int len, char *in, char **out) + if (cipher_enc_state != CIPHER_INIT) + { + cipher_enc_state = CIPHER_INIT; +- EVP_CIPHER_CTX_cleanup(&ctx_enc); ++ EVP_CIPHER_CTX_cleanup(ctx_enc); + #ifdef LFD_ENCRYPT_DEBUG + vtun_syslog(LOG_INFO, + "Forcing local encryptor re-init"); +@@ -706,7 +711,7 @@ int recv_ib_mesg(int *len, char **in) + if (cipher_enc_state != CIPHER_INIT) + { + cipher_enc_state = CIPHER_INIT; +- EVP_CIPHER_CTX_cleanup(&ctx_enc); ++ EVP_CIPHER_CTX_cleanup(ctx_enc); + } + #ifdef LFD_ENCRYPT_DEBUG + vtun_syslog(LOG_INFO, "Remote requests encryptor re-init"); +@@ -720,7 +725,7 @@ int recv_ib_mesg(int *len, char **in) + cipher_enc_state != CIPHER_REQ_INIT && + cipher_enc_state != CIPHER_INIT) + { +- EVP_CIPHER_CTX_cleanup (&ctx_dec); ++ EVP_CIPHER_CTX_cleanup (ctx_dec); + cipher_dec_state = CIPHER_INIT; + cipher_enc_state = CIPHER_REQ_INIT; + } diff --git a/net-vpn/vtun/vtun-3.0.3-r1.ebuild b/net-vpn/vtun/vtun-3.0.3-r2.ebuild index 48ca1ccaade8..2152bb74e3ce 100644 --- a/net-vpn/vtun/vtun-3.0.3-r1.ebuild +++ b/net-vpn/vtun/vtun-3.0.3-r2.ebuild @@ -1,7 +1,7 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 inherit linux-info @@ -14,32 +14,33 @@ SLOT="0" KEYWORDS="~alpha amd64 ppc ~sparc x86" IUSE="lzo socks5 ssl zlib" -RDEPEND="ssl? ( dev-libs/openssl:0 ) +RDEPEND=" lzo? ( dev-libs/lzo:2 ) - zlib? ( sys-libs/zlib ) - socks5? ( net-proxy/dante )" -DEPEND="${RDEPEND} - sys-devel/bison" - -DOCS="ChangeLog Credits FAQ README README.Setup README.Shaper TODO" + socks5? ( net-proxy/dante ) + ssl? ( dev-libs/openssl:0= ) + zlib? ( sys-libs/zlib )" +DEPEND="${RDEPEND}" +BDEPEND="sys-devel/bison" +DOCS=( ChangeLog Credits FAQ README README.Setup README.Shaper TODO ) CONFIG_CHECK="~TUN" -src_prepare() { - sed -i Makefile.in \ - -e '/^LDFLAGS/s|=|+=|g' \ - || die "sed Makefile" - eapply "${FILESDIR}"/${P}-includes.patch +PATCHES=( + "${FILESDIR}"/${P}-includes.patch # remove unneeded checking for /etc/vtund.conf - eapply -p0 "${FILESDIR}"/${PN}-3.0.2-remove-config-presence-check.patch + "${FILESDIR}"/${PN}-3.0.2-remove-config-presence-check.patch # GCC 5 compatibility, patch from https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=778164 - eapply "${FILESDIR}"/${P}-gcc5.patch + "${FILESDIR}"/${P}-gcc5.patch # openssl 1.1 compatibility, bug 674280 - eapply -l "${FILESDIR}"/${PN}-libssl-1.1.patch - # portage takes care about striping binaries itself - sed -i 's:$(BIN_DIR)/strip $(DESTDIR)$(SBIN_DIR)/vtund::' Makefile.in || die + "${FILESDIR}"/${PN}-libssl-1.1.patch + "${FILESDIR}"/${P}-fno-common.patch + "${FILESDIR}"/${P}-C99-inline.patch +) - eapply_user +src_prepare() { + default + sed -i -e '/^LDFLAGS/s|=|+=|g' Makefile.in || die + sed -i 's:$(BIN_DIR)/strip $(DESTDIR)$(SBIN_DIR)/vtund::' Makefile.in || die } src_configure() { @@ -54,6 +55,7 @@ src_configure() { src_install() { default newinitd "${FILESDIR}"/vtun.rc vtun - insinto etc + insinto /etc doins "${FILESDIR}"/vtund-start.conf + rm -r "${ED}"/var || die } |