net-misc/socat: Sync with gentoo

It's from gentoo commit 759bceb81f9e6a4d46011e361b206ac9609be989.
This commit is contained in:
Krzesimir Nowak 2022-02-25 15:11:47 +01:00
parent ac752cbd53
commit ff3da333a0
10 changed files with 176 additions and 486 deletions

View File

@ -1,3 +1,3 @@
DIST socat-1.7.3.1.tar.bz2 488467 SHA256 d2da659540c38139f388e9437bfaae16bb458d174d056cb3228432a8f489fbaa SHA512 463340f578d4d1d54458b8ef9573ad3eff51dbcc736205e1b62e9a4782770d4bb76e6a07506350fd35405b130660559aaa79dfa2664c53ea268d7d64231f9b32 WHIRLPOOL 09f0fc537eaad194cac97cce73971c9f69047c648f03788fa69ac3444673ff73f143b2657d0ed28d082e2cfc36829304ed7bf0ff79c7ed75e96c991292f94dd4
DIST socat-1.7.3.2.tar.bz2 493324 SHA256 e3561f808739383eb10fada1e5d4f26883f0311b34fd0af7837d0c95ef379251 SHA512 9ed4911deb09c36955b62a2efbcdfdff0e9d963fa30110e32396e49133d395afd7e61a19ca6a1a23e6e98ded4f603bcbb68c8eb3da4ce870f1450b8b6f7dd293 WHIRLPOOL d5b25ee77fd9ac77fd2a0dd33c39ae636cfe380608b8cee0d14f4d2e042bd53f9269edb466ae6c5403ccd5f5e2bff48b5f1ab15504957419f5ec759fc84a84f4
DIST socat-2.0.0-b9.tar.bz2 516673 SHA256 49efb0a5c66b94b279014addc2851faf8ebbd1ec4b7e31c1de7e912d7b4983d2 SHA512 f728bd634feeeacd2f0e4020c1c6aafdadaef3ba9da818d9ae1195e9f48fb693b2bea8dbbb208af8daddd8d6405217113d5ce31d05c2e9b27f5d2fba6b1cc834 WHIRLPOOL e293f9da0fed9573a02658b79ae87c24e2d88c57f6d8b1ddaeecd52e035b5012eaebbfa82da80f8442da666114d14e1c2767cf929e57b634f762e198ed4e3b50
DIST socat-1.7.4.2.tar.gz 653068 BLAKE2B 0eba89e2f8993e6c5f2ffaa57ca9e93ae89cb01bf9d6f0f0d5e9550d4cd7e6aa390b26120a47e3661772550f4fb189807bedd31d1477ff0065f478ef2be062ab SHA512 c331a6348e0febb35cd8adc2b116e3b8896cd7f64bcd93e507df4b8197ee1e6738ca256abf74c9b225e7a3769cf9643f0e237826125c6f390b5124ce0f10c972
DIST socat-1.7.4.3.tar.gz 655520 BLAKE2B d91de7ef55332001e6439f64130555b9558338fb9b6c15c91ab5efc8f86a2e7e0f5fe0b292754731a198d83be5f511c3388c65c7c7f559c55691f42703f1849b SHA512 81cb34c245052b6a0ae38a711591358460b6070957af4a9eeb11a3cadb4aff184eeaedabbc7ecdc7fdf21a6126c06f90f19b24a87ce74b30bfd60a3879181046
DIST socat-2.0.0-b9.tar.bz2 516673 BLAKE2B 808c8821b89ae2463074f87915dfae10f82b66ac6cd0b6ff56ab18f57c704e5a2a3ce76650152dccce41e4bd00e3a937948d4ade0a915b1f0e917c7543c6fc31 SHA512 f728bd634feeeacd2f0e4020c1c6aafdadaef3ba9da818d9ae1195e9f48fb693b2bea8dbbb208af8daddd8d6405217113d5ce31d05c2e9b27f5d2fba6b1cc834

View File

@ -0,0 +1,24 @@
--- a/filan.c
+++ b/filan.c
@@ -30,7 +30,9 @@
/* dirty workaround so we dont get an error on AIX when being linked with
libwrap */
+#if _AIX
int allow_severity, deny_severity;
+#endif
/* global variables for configuring filan */
bool filan_followsymlinks;
--- a/procan.c
+++ b/procan.c
@@ -21,7 +21,9 @@
/* dirty workaround so we dont get an error on AIX when getting linked with
libwrap */
+#if _AIX
int allow_severity, deny_severity;
+#endif
int procan(FILE *outfile) {

View File

@ -1,267 +0,0 @@
From fbb0cc3b65a2ead522019fb461ae520371cc3ede Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marek=20Beh=C3=BAn?= <kabel@blackhole.sk>
Date: Mon, 6 Jun 2016 18:41:30 +0200
Subject: [PATCH] Support compiling with LibreSSL 2.4.0
This patch checks for macros OPENSSL_NO_COMP, OPENSSL_NO_EGD, and
if disables those features if they are.
Also add ifdef for HAVE_SSLv3_{client/server}_method in sslcls.c,
since these were removed from LibreSSL 2.4.0.
---
sslcls.c | 8 +++++++-
sslcls.h | 4 +++-
xio-openssl.c | 24 ++++++++++++++++++------
xio-openssl.h | 4 +++-
xioopts.c | 8 ++++++--
xioopts.h | 4 +++-
6 files changed, 40 insertions(+), 12 deletions(-)
diff --git a/sslcls.c b/sslcls.c
index ea4c303..5011ef2 100644
--- a/sslcls.c
+++ b/sslcls.c
@@ -55,6 +55,7 @@ const SSL_METHOD *sycSSLv2_server_method(void) {
}
#endif
+#if HAVE_SSLv3_client_method
const SSL_METHOD *sycSSLv3_client_method(void) {
const SSL_METHOD *result;
Debug("SSLv3_client_method()");
@@ -62,7 +63,9 @@ const SSL_METHOD *sycSSLv3_client_method(void) {
Debug1("SSLv3_client_method() -> %p", result);
return result;
}
+#endif
+#if HAVE_SSLv3_server_method
const SSL_METHOD *sycSSLv3_server_method(void) {
const SSL_METHOD *result;
Debug("SSLv3_server_method()");
@@ -70,6 +73,7 @@ const SSL_METHOD *sycSSLv3_server_method(void) {
Debug1("SSLv3_server_method() -> %p", result);
return result;
}
+#endif
const SSL_METHOD *sycSSLv23_client_method(void) {
const SSL_METHOD *result;
@@ -347,6 +351,7 @@ void sycSSL_free(SSL *ssl) {
return;
}
+#ifndef OPENSSL_NO_EGD
int sycRAND_egd(const char *path) {
int result;
Debug1("RAND_egd(\"%s\")", path);
@@ -354,6 +359,7 @@ int sycRAND_egd(const char *path) {
Debug1("RAND_egd() -> %d", result);
return result;
}
+#endif
DH *sycPEM_read_bio_DHparams(BIO *bp, DH **x, pem_password_cb *cb, void *u) {
DH *result;
@@ -391,7 +397,7 @@ int sycFIPS_mode_set(int onoff) {
}
#endif /* WITH_FIPS */
-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
const COMP_METHOD *sycSSL_get_current_compression(SSL *ssl) {
const COMP_METHOD *result;
Debug1("SSL_get_current_compression(%p)", ssl);
diff --git a/sslcls.h b/sslcls.h
index 152fe5b..9fd8ef2 100644
--- a/sslcls.h
+++ b/sslcls.h
@@ -49,7 +49,9 @@ X509 *sycSSL_get_peer_certificate(SSL *ssl);
int sycSSL_shutdown(SSL *ssl);
void sycSSL_CTX_free(SSL_CTX *ctx);
void sycSSL_free(SSL *ssl);
+#ifndef OPENSSL_NO_EGD
int sycRAND_egd(const char *path);
+#endif
DH *sycPEM_read_bio_DHparams(BIO *bp, DH **x, pem_password_cb *cb, void *u);
@@ -57,7 +59,7 @@ BIO *sycBIO_new_file(const char *filename, const char *mode);
int sycFIPS_mode_set(int onoff);
-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
const COMP_METHOD *sycSSL_get_current_compression(SSL *ssl);
const COMP_METHOD *sycSSL_get_current_expansion(SSL *ssl);
const char *sycSSL_COMP_get_name(const COMP_METHOD *comp);
diff --git a/xio-openssl.c b/xio-openssl.c
index c7f283c..38dc20d 100644
--- a/xio-openssl.c
+++ b/xio-openssl.c
@@ -181,9 +181,11 @@ const struct optdesc opt_openssl_key = { "openssl-key", "key",
const struct optdesc opt_openssl_dhparam = { "openssl-dhparam", "dh", OPT_OPENSSL_DHPARAM, GROUP_OPENSSL, PH_SPEC, TYPE_FILENAME, OFUNC_SPEC };
const struct optdesc opt_openssl_cafile = { "openssl-cafile", "cafile", OPT_OPENSSL_CAFILE, GROUP_OPENSSL, PH_SPEC, TYPE_FILENAME, OFUNC_SPEC };
const struct optdesc opt_openssl_capath = { "openssl-capath", "capath", OPT_OPENSSL_CAPATH, GROUP_OPENSSL, PH_SPEC, TYPE_FILENAME, OFUNC_SPEC };
+#ifndef OPENSSL_NO_EGD
const struct optdesc opt_openssl_egd = { "openssl-egd", "egd", OPT_OPENSSL_EGD, GROUP_OPENSSL, PH_SPEC, TYPE_FILENAME, OFUNC_SPEC };
+#endif
const struct optdesc opt_openssl_pseudo = { "openssl-pseudo", "pseudo", OPT_OPENSSL_PSEUDO, GROUP_OPENSSL, PH_SPEC, TYPE_BOOL, OFUNC_SPEC };
-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
const struct optdesc opt_openssl_compress = { "openssl-compress", "compress", OPT_OPENSSL_COMPRESS, GROUP_OPENSSL, PH_SPEC, TYPE_STRING, OFUNC_SPEC };
#endif
#if WITH_FIPS
@@ -220,7 +222,7 @@ int xio_reset_fips_mode(void) {
static void openssl_conn_loginfo(SSL *ssl) {
Notice1("SSL connection using %s", SSL_get_cipher(ssl));
-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
{
const COMP_METHOD *comp, *expansion;
@@ -786,7 +788,7 @@ int _xioopen_openssl_listen(struct single *xfd,
#endif /* WITH_LISTEN */
-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
/* In OpenSSL 0.9.7 compression methods could be added using
* SSL_COMP_add_compression_method(3), but the implemntation is not compatible
* with the standard (RFC3749).
@@ -857,8 +859,10 @@ int
char *opt_dhparam = NULL; /* file name of DH params */
char *opt_cafile = NULL; /* certificate authority file */
char *opt_capath = NULL; /* certificate authority directory */
+#ifndef OPENSSL_NO_EGD
char *opt_egd = NULL; /* entropy gathering daemon socket path */
-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
+#endif
+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
char *opt_compress = NULL; /* compression method */
#endif
bool opt_pseudo = false; /* use pseudo entropy if nothing else */
@@ -875,9 +879,11 @@ int
retropt_string(opts, OPT_OPENSSL_CAPATH, &opt_capath);
retropt_string(opts, OPT_OPENSSL_KEY, &opt_key);
retropt_string(opts, OPT_OPENSSL_DHPARAM, &opt_dhparam);
+#ifndef OPENSSL_NO_EGD
retropt_string(opts, OPT_OPENSSL_EGD, &opt_egd);
+#endif
retropt_bool(opts,OPT_OPENSSL_PSEUDO, &opt_pseudo);
-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
retropt_string(opts, OPT_OPENSSL_COMPRESS, &opt_compress);
#endif
#if WITH_FIPS
@@ -1010,9 +1016,11 @@ int
}
}
+#ifndef OPENSSL_NO_EGD
if (opt_egd) {
sycRAND_egd(opt_egd);
}
+#endif
if (opt_pseudo) {
long int randdata;
@@ -1124,7 +1132,7 @@ int
}
#endif /* !defined(EC_KEY) */
-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
if (opt_compress) {
int result;
result = openssl_setup_compression(*ctx, opt_compress);
@@ -1238,7 +1246,11 @@ static int openssl_SSL_ERROR_SSL(int level, const char *funcname) {
if (e == ((ERR_LIB_RAND<<24)|
(RAND_F_SSLEAY_RAND_BYTES<<12)|
(RAND_R_PRNG_NOT_SEEDED)) /*0x24064064*/) {
+#ifdef OPENSSL_NO_EGD
+ Error("too few entropy; use option \"pseudo\"");
+#else
Error("too few entropy; use options \"egd\" or \"pseudo\"");
+#endif
stat = STAT_NORETRY;
} else {
Msg2(level, "%s(): %s", funcname, ERR_error_string(e, buf));
diff --git a/xio-openssl.h b/xio-openssl.h
index 62586fc..f10ee0c 100644
--- a/xio-openssl.h
+++ b/xio-openssl.h
@@ -21,9 +21,11 @@ extern const struct optdesc opt_openssl_key;
extern const struct optdesc opt_openssl_dhparam;
extern const struct optdesc opt_openssl_cafile;
extern const struct optdesc opt_openssl_capath;
+#ifndef OPENSSL_NO_EGD
extern const struct optdesc opt_openssl_egd;
+#endif
extern const struct optdesc opt_openssl_pseudo;
-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
extern const struct optdesc opt_openssl_compress;
#endif
#if WITH_FIPS
diff --git a/xioopts.c b/xioopts.c
index 6c231f4..9a56298 100644
--- a/xioopts.c
+++ b/xioopts.c
@@ -303,7 +303,7 @@ const struct optname optionnames[] = {
#if WITH_EXT2 && defined(EXT2_COMPR_FL)
IF_ANY ("compr", &opt_ext2_compr)
#endif
-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
IF_OPENSSL("compress", &opt_openssl_compress)
#endif
#ifdef TCP_CONN_ABORT_THRESHOLD /* HP_UX */
@@ -419,7 +419,9 @@ const struct optname optionnames[] = {
#ifdef ECHOPRT
IF_TERMIOS("echoprt", &opt_echoprt)
#endif
+#ifndef OPENSSL_NO_EGD
IF_OPENSSL("egd", &opt_openssl_egd)
+#endif
IF_ANY ("end-close", &opt_end_close)
IF_TERMIOS("eof", &opt_veof)
IF_TERMIOS("eol", &opt_veol)
@@ -1062,11 +1064,13 @@ const struct optname optionnames[] = {
IF_OPENSSL("openssl-certificate", &opt_openssl_certificate)
IF_OPENSSL("openssl-cipherlist", &opt_openssl_cipherlist)
IF_OPENSSL("openssl-commonname", &opt_openssl_commonname)
-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
IF_OPENSSL("openssl-compress", &opt_openssl_compress)
#endif
IF_OPENSSL("openssl-dhparam", &opt_openssl_dhparam)
+#ifndef OPENSSL_NO_EGD
IF_OPENSSL("openssl-egd", &opt_openssl_egd)
+#endif
#if WITH_FIPS
IF_OPENSSL("openssl-fips", &opt_openssl_fips)
#endif
diff --git a/xioopts.h b/xioopts.h
index 2a165f5..37d6883 100644
--- a/xioopts.h
+++ b/xioopts.h
@@ -478,11 +478,13 @@ enum e_optcode {
OPT_OPENSSL_CERTIFICATE,
OPT_OPENSSL_CIPHERLIST,
OPT_OPENSSL_COMMONNAME,
-#if OPENSSL_VERSION_NUMBER >= 0x00908000L
+#if OPENSSL_VERSION_NUMBER >= 0x00908000L && !defined(OPENSSL_NO_COMP)
OPT_OPENSSL_COMPRESS,
#endif
OPT_OPENSSL_DHPARAM,
+#ifndef OPENSSL_NO_EGD
OPT_OPENSSL_EGD,
+#endif
OPT_OPENSSL_FIPS,
OPT_OPENSSL_KEY,
OPT_OPENSSL_METHOD,
--
2.7.3

View File

@ -1,8 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>sam@gentoo.org</email>
<name>Sam James</name>
</maintainer>
<maintainer type="project">
<email>netmon@gentoo.org</email>
<name>Gentoo network monitoring and analysis project</name>
</maintainer>
<upstream>
<remote-id type="cpe">cpe:/a:dest-unreach:socat</remote-id>
</upstream>
</pkgmetadata>

View File

@ -1,52 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit autotools eutils flag-o-matic toolchain-funcs
DESCRIPTION="Multipurpose relay (SOcket CAT)"
HOMEPAGE="http://www.dest-unreach.org/socat/"
MY_P=${P/_beta/-b}
S="${WORKDIR}/${MY_P}"
SRC_URI="http://www.dest-unreach.org/socat/download/${MY_P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc s390 sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="ssl readline ipv6 tcpd"
DEPEND="
ssl? ( dev-libs/openssl:0= )
readline? ( sys-libs/readline:= )
tcpd? ( sys-apps/tcp-wrappers )
"
RDEPEND="${DEPEND}"
RESTRICT="test"
DOCS=(
BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY
)
src_prepare() {
epatch "${FILESDIR}"/${PN}-1.7.3.0-filan-build.patch
epatch "${FILESDIR}"/${PN}-1.7.3.1-stddef_h.patch
eautoreconf
}
src_configure() {
filter-flags '-Wno-error*' #293324
tc-export AR
econf \
$(use_enable ssl openssl) \
$(use_enable readline) \
$(use_enable ipv6 ip6) \
$(use_enable tcpd libwrap)
}
src_install() {
default
dohtml doc/*.html doc/*.css
}

View File

@ -1,70 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools flag-o-matic toolchain-funcs
DESCRIPTION="Multipurpose relay (SOcket CAT)"
HOMEPAGE="http://www.dest-unreach.org/socat/"
MY_P=${P/_beta/-b}
S="${WORKDIR}/${MY_P}"
SRC_URI="http://www.dest-unreach.org/socat/download/${MY_P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 ~arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="bindist libressl ssl readline ipv6 tcpd"
DEPEND="
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:= )
)
readline? ( sys-libs/readline:= )
tcpd? ( sys-apps/tcp-wrappers )
"
RDEPEND="${DEPEND}"
RESTRICT="test
ssl? ( readline? ( bindist ) )"
DOCS=(
BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY
)
PATCHES=(
"${FILESDIR}"/${PN}-1.7.3.0-filan-build.patch
)
pkg_setup() {
# bug #587740
if use readline && use ssl; then
elog "You are enabling both readline and openssl USE flags, the licenses"
elog "for these packages conflict. You may not be able to legally"
elog "redistribute the resulting binary."
fi
}
src_prepare() {
default
eautoreconf
}
src_configure() {
filter-flags '-Wno-error*' #293324
tc-export AR
econf \
$(use_enable ssl openssl) \
$(use_enable readline) \
$(use_enable ipv6 ip6) \
$(use_enable tcpd libwrap)
}
src_install() {
default
docinto html
dodoc doc/*.html doc/*.css
}

View File

@ -0,0 +1,58 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic toolchain-funcs
MY_P=${P/_beta/-b}
DESCRIPTION="Multipurpose relay (SOcket CAT)"
HOMEPAGE="http://www.dest-unreach.org/socat/ https://repo.or.cz/socat.git"
SRC_URI="http://www.dest-unreach.org/socat/download/${MY_P}.tar.gz"
S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
IUSE="bindist ipv6 readline ssl tcpd"
DEPEND="ssl? ( dev-libs/openssl:0= )
readline? ( sys-libs/readline:= )
tcpd? ( sys-apps/tcp-wrappers )"
RDEPEND="${DEPEND}"
# Tests are a large bash script
# Hard to disable individual tests needing network or privileges
# in 1.7.4.2: FAILED: 59 329
RESTRICT="test ssl? ( readline? ( bindist ) )"
DOCS=( BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY )
pkg_setup() {
# bug #587740
if use readline && use ssl ; then
elog "You are enabling both readline and openssl USE flags, the licenses"
elog "for these packages conflict. You may not be able to legally"
elog "redistribute the resulting binary."
fi
}
src_configure() {
# bug #293324
filter-flags '-Wno-error*'
tc-export AR
econf \
$(use_enable ssl openssl) \
$(use_enable readline) \
$(use_enable ipv6 ip6) \
$(use_enable tcpd libwrap)
}
src_install() {
default
docinto html
dodoc doc/*.html doc/*.css
}

View File

@ -0,0 +1,64 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic toolchain-funcs
MY_P=${P/_beta/-b}
DESCRIPTION="Multipurpose relay (SOcket CAT)"
HOMEPAGE="http://www.dest-unreach.org/socat/ https://repo.or.cz/socat.git"
SRC_URI="http://www.dest-unreach.org/socat/download/${MY_P}.tar.gz"
S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
IUSE="bindist ipv6 readline ssl tcpd"
DEPEND="ssl? ( dev-libs/openssl:0= )
readline? ( sys-libs/readline:= )
tcpd? ( sys-apps/tcp-wrappers )"
RDEPEND="${DEPEND}"
# Tests are a large bash script
# Hard to disable individual tests needing network or privileges
# in 1.7.4.2: FAILED: 59 329
RESTRICT="test ssl? ( readline? ( bindist ) )"
DOCS=( BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY )
pkg_setup() {
# bug #587740
if use readline && use ssl ; then
elog "You are enabling both readline and ssl (openssl) USE flags, the licenses"
elog "for these packages conflict. You may not be able to legally"
elog "redistribute the resulting binary."
fi
}
src_configure() {
# bug #293324
filter-flags '-Wno-error*'
tc-export AR
# getprotobynumber_r doesn't exist on musl, so avoid probing for it
# and possibly getting it wrong. TODO: fix configure?
# (Grabbed from Alpine Linux: https://git.alpinelinux.org/aports/commit/main/socat/APKBUILD?id=5edc9195355ced3db991c1a7cda5648d52019b11)
# bug #831016
use elibc_musl && export sc_cv_getprotobynumber_r=2
econf \
$(use_enable ssl openssl) \
$(use_enable readline) \
$(use_enable ipv6 ip6) \
$(use_enable tcpd libwrap)
}
src_install() {
default
docinto html
dodoc doc/*.html doc/*.css
}

View File

@ -1,47 +1,45 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=7
inherit autotools flag-o-matic toolchain-funcs
DESCRIPTION="Multipurpose relay (SOcket CAT)"
HOMEPAGE="http://www.dest-unreach.org/socat/"
MY_P=${P/_beta/-b}
S="${WORKDIR}/${MY_P}"
DESCRIPTION="Multipurpose relay (SOcket CAT)"
HOMEPAGE="http://www.dest-unreach.org/socat/ https://repo.or.cz/socat.git"
SRC_URI="http://www.dest-unreach.org/socat/download/${MY_P}.tar.bz2"
S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS=""
IUSE="libressl ssl readline ipv6 tcpd"
IUSE="ipv6 readline ssl tcpd"
DEPEND="
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:= )
)
ssl? ( dev-libs/openssl:0= )
readline? ( sys-libs/readline:= )
tcpd? ( sys-apps/tcp-wrappers )
"
RDEPEND="${DEPEND}"
RESTRICT="test
ssl? ( readline? ( bindist ) )"
# Tests are a large bash script
# Hard to disable individual tests needing network or privileges
RESTRICT="
test
ssl? ( readline? ( bindist ) )
"
DOCS=(
BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY
)
DOCS=( BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY )
PATCHES=(
"${FILESDIR}"/${PN}-1.7.3.0-filan-build.patch
"${FILESDIR}"/${PN}-1.7.3.1-stddef_h.patch
"${FILESDIR}"/${PN}-2.0.0_beta9-libressl.patch
"${FILESDIR}"/${PN}-1.7.3.4-fno-common.patch
)
pkg_setup() {
# bug #587740
if use readline && use ssl; then
if use readline && use ssl ; then
elog "You are enabling both readline and openssl USE flags, the licenses"
elog "for these packages conflict. You may not be able to legally"
elog "redistribute the resulting binary."
@ -57,8 +55,10 @@ src_prepare() {
}
src_configure() {
filter-flags -Wall '-Wno-error*' #293324
# bug #293324
filter-flags -Wall '-Wno-error*'
tc-export AR
econf \
$(use_enable ssl openssl) \
$(use_enable readline) \

View File

@ -1,74 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools flag-o-matic git-r3 toolchain-funcs
DESCRIPTION="Multipurpose relay (SOcket CAT)"
HOMEPAGE="http://www.dest-unreach.org/socat/"
MY_P=${P/_beta/-b}
S="${WORKDIR}/${MY_P}"
EGIT_REPO_URI="git://repo.or.cz/${PN}.git"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS=""
IUSE="libressl ssl readline ipv6 tcpd"
DEPEND="
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:= )
)
readline? ( sys-libs/readline:= )
tcpd? ( sys-apps/tcp-wrappers )
"
DEPEND="
${RDEPEND}
app-text/yodl
"
RESTRICT="test
ssl? ( readline? ( bindist ) )"
DOCS=(
BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY
)
PATCHES=(
"${FILESDIR}"/${PN}-1.7.3.0-filan-build.patch
"${FILESDIR}"/${PN}-1.7.3.1-stddef_h.patch
)
pkg_setup() {
# bug #587740
if use readline && use ssl; then
elog "You are enabling both readline and openssl USE flags, the licenses"
elog "for these packages conflict. You may not be able to legally"
elog "redistribute the resulting binary."
fi
}
src_prepare() {
default
eautoreconf
}
src_configure() {
filter-flags '-Wno-error*' #293324
tc-export AR
econf \
$(use_enable ssl openssl) \
$(use_enable readline) \
$(use_enable ipv6 ip6) \
$(use_enable tcpd libwrap)
}
src_install() {
default
docinto html
dodoc doc/*.html doc/*.css
}