Compare commits

...

No commits in common. "c8" and "c10s" have entirely different histories.
c8 ... c10s

18 changed files with 576 additions and 20 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

19
.gitignore vendored
View File

@ -1 +1,18 @@
SOURCES/socat-1.7.4.1.tar.gz
socat-1.6.0.1.tar.bz2
socat-1.7.0.0.tar.bz2
socat-1.7.1.1.tar.bz2
socat-1.7.1.2.tar.gz
socat-1.7.1.3.tar.gz
socat-1.7.2.0.tar.gz
/socat-1.7.2.2.tar.gz
/socat-1.7.2.3.tar.gz
/socat-1.7.2.4.tar.gz
/socat-1.7.3.1.tar.gz
/socat-1.7.3.2.tar.gz
/socat-1.7.3.3.tar.gz
/socat-1.7.3.4.tar.gz
/socat-1.7.4.0.tar.gz
/socat-1.7.4.1.tar.gz
/socat-1.7.4.2.tar.gz
/socat-1.7.4.3.tar.gz
/socat-1.7.4.4.tar.gz

View File

@ -1 +0,0 @@
9fe5a0a0b13dded556a66259b68eb672b900f1d1 SOURCES/socat-1.7.4.1.tar.gz

1
ci.fmf Normal file
View File

@ -0,0 +1 @@
resultsdb-testcase: separate

25
gating.yaml Normal file
View File

@ -0,0 +1,25 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_testing
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/tier1-public.functional}
#Rawhide
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/tier1-public.functional}
#gating rhel
--- !Policy
product_versions:
- rhel-*
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/tier1-public.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/tier1-internal.functional}

36
plans.fmf Normal file
View File

@ -0,0 +1,36 @@
/tier1-internal:
plan:
import:
url: https://src.fedoraproject.org/tests/socat.git
name: /plans/tier1/internal
/tier1-public:
plan:
import:
url: https://src.fedoraproject.org/tests/socat.git
name: /plans/tier1/public
/tier2-tier3-internal:
plan:
import:
url: https://src.fedoraproject.org/tests/socat.git
name: /plans/tier2-tier3/internal
/tier2-tier3-public:
plan:
import:
url: https://src.fedoraproject.org/tests/socat.git
name: /plans/tier2-tier3/public
/others-internal:
plan:
import:
url: https://src.fedoraproject.org/tests/socat.git
name: /plans/others/internal
/others-public:
plan:
import:
url: https://src.fedoraproject.org/tests/socat.git
name: /plans/others/public

View File

@ -0,0 +1,69 @@
diff -up socat-1.7.1.3/xio-tun.c.orig socat-1.7.1.3/xio-tun.c
--- socat-1.7.1.3/xio-tun.c.orig 2011-05-19 20:25:38.654799000 +0200
+++ socat-1.7.1.3/xio-tun.c 2011-05-19 20:37:48.675627004 +0200
@@ -78,8 +78,8 @@ static int xioopen_tun(int argc, const c
char *ifaddr;
int result;
- if (argc != 2) {
- Error2("%s: wrong number of parameters (%d instead of 1)",
+ if (argc > 2 || argc < 0) {
+ Error2("%s: wrong number of parameters (%d instead of 0 or 1)",
argv[0], argc-1);
}
@@ -146,30 +146,31 @@ static int xioopen_tun(int argc, const c
}
/*--------------------- setting interface address and netmask ------------*/
- if ((ifaddr = strdup(argv[1])) == NULL) {
- Error1("strdup(\"%s\"): out of memory", argv[1]);
- return STAT_RETRYLATER;
+ if (argc == 2) {
+ if ((ifaddr = strdup(argv[1])) == NULL) {
+ Error1("strdup(\"%s\"): out of memory", argv[1]);
+ return STAT_RETRYLATER;
+ }
+ if ((result = xioparsenetwork(ifaddr, pf, &network)) != STAT_OK) {
+ /*! recover */
+ return result;
+ }
+ socket_init(pf, (union sockaddr_union *)&ifr.ifr_addr);
+ ((struct sockaddr_in *)&ifr.ifr_addr)->sin_addr =
+ network.netaddr.ip4.sin_addr;
+ if (Ioctl(sockfd, SIOCSIFADDR, &ifr) < 0) {
+ Error4("ioctl(%d, SIOCSIFADDR, {\"%s\", \"%s\"}: %s",
+ sockfd, ifr.ifr_name, ifaddr, strerror(errno));
+ }
+ ((struct sockaddr_in *)&ifr.ifr_netmask)->sin_addr =
+ network.netmask.ip4.sin_addr;
+ if (Ioctl(sockfd, SIOCSIFNETMASK, &ifr) < 0) {
+ Error4("ioctl(%d, SIOCSIFNETMASK, {\"0x%08u\", \"%s\"}, %s",
+ sockfd, ((struct sockaddr_in *)&ifr.ifr_netmask)->sin_addr.s_addr,
+ ifaddr, strerror(errno));
+ }
+ free(ifaddr);
}
- if ((result = xioparsenetwork(ifaddr, pf, &network)) != STAT_OK) {
- /*! recover */
- return result;
- }
- socket_init(pf, (union sockaddr_union *)&ifr.ifr_addr);
- ((struct sockaddr_in *)&ifr.ifr_addr)->sin_addr =
- network.netaddr.ip4.sin_addr;
- if (Ioctl(sockfd, SIOCSIFADDR, &ifr) < 0) {
- Error4("ioctl(%d, SIOCSIFADDR, {\"%s\", \"%s\"}: %s",
- sockfd, ifr.ifr_name, ifaddr, strerror(errno));
- }
- ((struct sockaddr_in *)&ifr.ifr_netmask)->sin_addr =
- network.netmask.ip4.sin_addr;
- if (Ioctl(sockfd, SIOCSIFNETMASK, &ifr) < 0) {
- Error4("ioctl(%d, SIOCSIFNETMASK, {\"0x%08u\", \"%s\"}, %s",
- sockfd, ((struct sockaddr_in *)&ifr.ifr_netmask)->sin_addr.s_addr,
- ifaddr, strerror(errno));
- }
- free(ifaddr);
-
/*--------------------- setting interface flags --------------------------*/
applyopts_single(&xfd->stream, opts, PH_FD);

View File

@ -0,0 +1,11 @@
diff -Naur socat-1.7.2.1-orig/xio-ip.c socat-1.7.2.1/xio-ip.c
--- socat-1.7.2.1-orig/xio-ip.c 2011-12-06 02:45:03.000000000 -0500
+++ socat-1.7.2.1/xio-ip.c 2012-05-23 16:31:23.000000000 -0400
@@ -42,6 +42,7 @@
const struct optdesc opt_ip_hdrincl = { "ip-hdrincl", "hdrincl", OPT_IP_HDRINCL, GROUP_SOCK_IP, PH_PASTSOCKET, TYPE_INT, OFUNC_SOCKOPT, SOL_IP, IP_HDRINCL };
#endif
#ifdef IP_RECVERR
+# include <linux/errqueue.h>
const struct optdesc opt_ip_recverr = { "ip-recverr", "recverr", OPT_IP_RECVERR, GROUP_SOCK_IP, PH_PASTSOCKET, TYPE_INT, OFUNC_SOCKOPT, SOL_IP, IP_RECVERR };
#endif
#ifdef IP_MTU_DISCOVER

View File

@ -0,0 +1,12 @@
diff -Naur socat-1.7.2.1-orig/procan-cdefs.c socat-1.7.2.1/procan-cdefs.c
--- socat-1.7.2.1-orig/procan-cdefs.c 2010-10-06 03:25:30.000000000 -0400
+++ socat-1.7.2.1/procan-cdefs.c 2012-11-20 17:15:37.521215330 -0500
@@ -20,7 +20,7 @@
fprintf(outfile, "#define FD_SETSIZE %u\n", FD_SETSIZE);
#endif
#ifdef NFDBITS
- fprintf(outfile, "#define NFDBITS "F_Zu"\n", NFDBITS);
+ fprintf(outfile, "#define NFDBITS %u\n", NFDBITS);
#endif
#ifdef O_RDONLY
fprintf(outfile, "#define O_RDONLY %u\n", O_RDONLY);

View File

@ -0,0 +1,67 @@
--- a/config.h.in
+++ a/config.h.in
@@ -308,6 +308,9 @@
/* define if your struct sigaction has sa_sigaction */
#undef HAVE_STRUCT_SIGACTION_SA_SIGACTION
+/* define if you have struct sock_extended_err */
+#undef HAVE_STRUCT_SOCK_EXTENDED_ERR
+
/* Define if your struct termios has component c_ispeed */
#undef HAVE_TERMIOS_ISPEED
--- a/configure.in
+++ a/configure.in
@@ -80,7 +80,8 @@ AC_HEADER_RESOLV()
AC_CHECK_HEADERS(termios.h linux/if_tun.h)
AC_CHECK_HEADERS(net/if_dl.h)
AC_CHECK_HEADERS(linux/types.h)
-AC_CHECK_HEADER(linux/errqueue.h, AC_DEFINE(HAVE_LINUX_ERRQUEUE_H), [], [#include <linux/types.h>])
+AC_CHECK_HEADER(linux/errqueue.h, AC_DEFINE(HAVE_LINUX_ERRQUEUE_H), [], [#include <sys/time.h>
+#include <linux/types.h>])
AC_CHECK_HEADERS(sys/utsname.h sys/select.h sys/file.h)
AC_CHECK_HEADERS(util.h bsd/libutil.h libutil.h sys/stropts.h regex.h)
AC_CHECK_HEADERS(linux/fs.h linux/ext2_fs.h)
@@ -915,6 +916,22 @@ if test $sc_cv_type_sa_family_t = yes; then
fi
AC_MSG_RESULT($sc_cv_type_sa_family_t)
+AC_MSG_CHECKING(for struct sock_extended_err)
+AC_CACHE_VAL(sc_cv_struct_sock_extended_err,
+[AC_TRY_COMPILE([#include <linux/types.h>
+#if TIME_WITH_SYS_TIME
+#include <sys/time.h>
+#endif
+#if HAVE_LINUX_ERRQUEUE_H
+#include <linux/errqueue.h>
+#endif],[struct sock_extended_err s;],
+[sc_cv_struct_sock_extended_err=yes],
+[sc_cv_struct_sock_extended_err=no])])
+if test $sc_cv_struct_sock_extended_err = yes; then
+ AC_DEFINE(HAVE_STRUCT_SOCK_EXTENDED_ERR)
+fi
+AC_MSG_RESULT($sc_cv_struct_sock_extended_err)
+
AC_MSG_CHECKING(for struct sigaction.sa_sigaction)
AC_CACHE_VAL(sc_cv_struct_sigaction_sa_sigaction,
[AC_TRY_COMPILE([#include <signal.h>],[struct sigaction s;s.sa_sigaction=0;],
--- a/xio-ip.c
+++ a/xio-ip.c
@@ -503,7 +503,7 @@ int xiolog_ancillary_ip(struct cmsghdr *cmsg, int *num,
return STAT_OK;
#endif /* defined(IP_PKTINFO) && HAVE_STRUCT_IN_PKTINFO */
#endif /* WITH_IP4 */
-#ifdef IP_RECVERR
+#if defined(IP_RECVERR) && HAVE_STRUCT_SOCK_EXTENDED_ERR
case IP_RECVERR: {
struct sock_extended_err *err =
(struct sock_extended_err *)CMSG_DATA(cmsg);
@@ -521,7 +521,7 @@ int xiolog_ancillary_ip(struct cmsghdr *cmsg, int *num,
err->ee_code, '\0', err->ee_info, '\0', err->ee_data);
return STAT_OK;
}
-#endif /* IP_RECVERR */
+#endif /* defined(IP_RECVERR) && HAVE_STRUCT_SOCK_EXTENDED_ERR */
#ifdef IP_RECVIF
case IP_RECVIF: {
/* spec in FreeBSD: /usr/include/net/if_dl.h */

85
socat-1.7.2.4-test.patch Normal file
View File

@ -0,0 +1,85 @@
diff -Naur socat-1.7.2.4-orig/test.sh socat-1.7.2.4/test.sh
--- socat-1.7.2.4-orig/test.sh 2014-03-09 10:51:39.000000000 -0400
+++ socat-1.7.2.4/test.sh 2014-04-10 19:26:46.744943241 -0400
@@ -3713,11 +3713,13 @@
if [ "$MYPID" = "$MYPPID" -o "$MYPID" = "$MYPGID" -o "$MYPID" = "$MYSID" -o \
"$MYPPID" = "$MYPGID" -o "$MYPPID" = "$MYSID" -o "$MYPGID" = "$MYSID" ];
then
- $PRINTF "$FAILED:\n"
- echo "$CMD"
- cat "$te"
- numFAIL=$((numFAIL+1))
- listFAIL="$listFAIL $N"
+ $PRINTF "test $F_n $TEST... ${YELLOW}skipped - fails in mock ${NORMAL}\n" $N
+ numCANT=$((numCANT+1))
+ #$PRINTF "$FAILED:\n"
+ #echo "$CMD"
+ #cat "$te"
+ #numFAIL=$((numFAIL+1))
+ #listFAIL="$listFAIL $N"
else
$PRINTF "$OK\n"
numOK=$((numOK+1))
@@ -4218,7 +4220,11 @@
elif ! testaddrs listen tcp ip4 >/dev/null || ! runsip4 >/dev/null; then
$PRINTF "test $F_n $TEST... ${YELLOW}TCP/IPv4 not available${NORMAL}\n" $N
numCANT=$((numCANT+1))
+elif test -n "not-empty"; then
+ $PRINTF "test $F_n $TEST... ${YELLOW}TCP/IPv4 external network test skipped${NORMAL}\n" $N
+ numCANT=$((numCANT+1))
else
+# never called
tf="$td/test$N.stdout"
te="$td/test$N.stderr"
tdiff="$td/test$N.diff"
@@ -4263,7 +4269,11 @@
elif ! testaddrs listen tcp ip6 >/dev/null || ! runsip6 >/dev/null; then
$PRINTF "test $F_n $TEST... ${YELLOW}TCP/IPv6 not available${NORMAL}\n" $N
numCANT=$((numCANT+1))
+elif test -n "not-empty"; then
+ $PRINTF "test $F_n $TEST... ${YELLOW}TCP/IPv4 external network test skipped${NORMAL}\n" $N
+ numCANT=$((numCANT+1))
else
+# never called
tf="$td/test$N.stdout"
te="$td/test$N.stderr"
tdiff="$td/test$N.diff"
@@ -4303,6 +4313,9 @@
*%$N%*|*%functions%*|*%socks%*|*%socks4a%*|*%tcp%*|*%tcp4%*|*%ip4%*|*%$NAME%*)
TEST="$NAME: socks4a connect over TCP/IPv4"
if ! eval $NUMCOND; then :;
+elif test -n "not-empty"; then
+ $PRINTF "test $F_n $TEST... ${YELLOW}SOCKS4A skipped - unreliable in mock ${NORMAL}\n" $N
+ numCANT=$((numCANT+1))
elif ! testaddrs socks4a >/dev/null; then
$PRINTF "test $F_n $TEST... ${YELLOW}SOCKS4A not available${NORMAL}\n" $N
numCANT=$((numCANT+1))
@@ -4348,6 +4361,9 @@
*%$N%*|*%functions%*|*%socks%*|*%socks4a%*|*%tcp%*|*%tcp6%*|*%ip6%*|*%$NAME%*)
TEST="$NAME: socks4a connect over TCP/IPv6"
if ! eval $NUMCOND; then :;
+elif test -n "not-empty"; then
+ $PRINTF "test $F_n $TEST... ${YELLOW}SOCKS4A skipped - unreliable in mock ${NORMAL}\n" $N
+ numCANT=$((numCANT+1))
elif ! testaddrs socks4a >/dev/null; then
$PRINTF "test $F_n $TEST... ${YELLOW}SOCKS4A not available${NORMAL}\n" $N
numCANT=$((numCANT+1))
@@ -9660,6 +9676,9 @@
# outside code then checks if the environment contains the variables correctly
# describing the peer and local sockets.
if ! eval $NUMCOND; then :;
+elif test -n "not-empty"; then
+ $PRINTF "test $F_n $TEST... ${YELLOW}$(echo "$feat" |tr a-z A-Z) too unreliable${NORMAL}\n" $N
+ numCANT=$((numCANT+1))
elif ! feat=$(testaddrs $FEAT); then
$PRINTF "test $F_n $TEST... ${YELLOW}$(echo "$feat" |tr a-z A-Z) not available${NORMAL}\n" $N
numCANT=$((numCANT+1))
@@ -9669,7 +9688,7 @@
numCANT=$((numCANT+1))
elif [ "$KEYW" = "SCTP4" ] && ! runssctp4 "$((PORT))"; then
$PRINTF "test $F_n $TEST... ${YELLOW}$KEYW not available${NORMAL}\n" $N
-elif [ "$KEYW" = "SCTP6" ] && ! runssctp4 "$((PORT))"; then
+elif [ "$KEYW" = "SCTP6" ] && ! runssctp6 "$((PORT))"; then
#!!! branch not reached - caught above!
$PRINTF "test $F_n $TEST... ${YELLOW}$KEYW not available${NORMAL}\n" $N
else

43
socat-1.7.3.3-warn.patch Normal file
View File

@ -0,0 +1,43 @@
diff -Naur socat-1.7.3.3-orig/sysutils.c socat-1.7.3.3/sysutils.c
--- socat-1.7.3.3-orig/sysutils.c 2017-01-08 05:38:53.000000000 -0500
+++ socat-1.7.3.3/sysutils.c 2019-06-24 17:02:56.693056583 -0400
@@ -614,7 +614,7 @@
return -1;
}
- strncpy(ifr.ifr_name, ifname, IFNAMSIZ); /* ok */
+ strncpy(ifr.ifr_name, ifname, IFNAMSIZ - 1); /* ok */
if (Ioctl(s, SIOCGIFINDEX, &ifr) < 0) {
Info3("ioctl(%d, SIOCGIFINDEX, {\"%s\"}): %s",
s, ifr.ifr_name, strerror(errno));
diff -Naur socat-1.7.3.3-orig/xio-socket.c socat-1.7.3.3/xio-socket.c
--- socat-1.7.3.3-orig/xio-socket.c 2017-01-08 04:56:00.000000000 -0500
+++ socat-1.7.3.3/xio-socket.c 2019-06-24 17:04:48.684491835 -0400
@@ -1710,7 +1710,6 @@
int xiocheckpeer(xiosingle_t *xfd,
union sockaddr_union *pa, union sockaddr_union *la) {
char infobuff[256];
- int result;
#if WITH_IP4
if (xfd->para.socket.dorange) {
@@ -1778,6 +1777,7 @@
#endif /* WITH_TCP || WITH_UDP */
#if (WITH_TCP || WITH_UDP) && WITH_LIBWRAP
+ int result;
result = xio_tcpwrap_check(xfd, la, pa);
if (result < 0) {
char infobuff[256];
diff -Naur socat-1.7.3.3-orig/xio-tun.c socat-1.7.3.3/xio-tun.c
--- socat-1.7.3.3-orig/xio-tun.c 2017-01-06 15:58:40.000000000 -0500
+++ socat-1.7.3.3/xio-tun.c 2019-06-24 17:03:55.276797729 -0400
@@ -106,7 +106,7 @@
memset(&ifr, 0,sizeof(ifr));
if (retropt_string(opts, OPT_TUN_NAME, &tunname) == 0) {
- strncpy(ifr.ifr_name, tunname, IFNAMSIZ); /* ok */
+ strncpy(ifr.ifr_name, tunname, IFNAMSIZ - 1); /* ok */
free(tunname);
} else {
ifr.ifr_name[0] = '\0';

View File

@ -0,0 +1,41 @@
diff -Naur socat-1.7.4.0-orig/compat.h socat-1.7.4.0/compat.h
--- socat-1.7.4.0-orig/compat.h 2021-01-03 13:23:22.000000000 -0500
+++ socat-1.7.4.0/compat.h 2021-01-04 14:07:30.229747181 -0500
@@ -134,6 +134,8 @@
# define F_uint64_t "%u"
# elif HAVE_BASIC_UINT64_T==6
# define F_uint64_t "%lu"
+# elif HAVE_BASIC_UINT64_T==8
+# define F_uint64_t "%llu"
# else
# error "HAVE_BASIC_UINT64_T is out of range:" HAVE_BASIC_UINT64_T
# endif
@@ -147,7 +149,7 @@
# elif HAVE_BASIC_INT16_T==3
# define F_int16_t "%d"
# elif HAVE_BASIC_INT16_T==5
-# define F_int16_t "%l"
+# define F_int16_t "%ld"
# else
# error "HAVE_BASIC_INT16_T is out of range:" HAVE_BASIC_INT16_T
# endif
@@ -161,7 +163,7 @@
# elif HAVE_BASIC_INT32_T==3
# define F_int32_t "%d"
# elif HAVE_BASIC_INT32_T==5
-# define F_int32_t "%l"
+# define F_int32_t "%ld"
# else
# error "HAVE_BASIC_INT32_T is out of range:" HAVE_BASIC_INT32_T
# endif
@@ -175,7 +177,9 @@
# elif HAVE_BASIC_INT64_T==3
# define F_int64_t "%d"
# elif HAVE_BASIC_INT64_T==5
-# define F_int64_t "%l"
+# define F_int64_t "%ld"
+# elif HAVE_BASIC_INT64_T==7
+# define F_int64_t "%lld"
# else
# error "HAVE_BASIC_INT64_T is out of range:" HAVE_BASIC_INT64_T
# endif

32
socat-configure-c99.patch Normal file
View File

@ -0,0 +1,32 @@
Include <openssl/err.h> for the ERR_error_string function. This
improves compatibility with future compilers which will not accept
implicit funcction declarations by default.
diff --git a/configure b/configure
index fe4e606e91010520..694801b2a93659af 100755
--- a/configure
+++ b/configure
@@ -5199,6 +5199,8 @@ else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <openssl/ssl.h>
+ #include <openssl/err.h>
+
int
main ()
{
diff --git a/configure.ac b/configure.ac
index 09dbb7a1e8d35c84..abd599c90e3ef0d7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -559,7 +559,9 @@ if test -n "$WITH_OPENSSL" -a "$sc_cv_have_openssl_ssl_h" = 'yes'; then
else
LIBS="$LIBS -lssl -lcrypto"
fi
- AC_TRY_LINK([#include <openssl/ssl.h>],
+ AC_TRY_LINK([#include <openssl/ssl.h>
+ #include <openssl/err.h>
+ ],
[SSL_library_init();ERR_error_string()],
[sc_cv_have_libssl='yes'],
[ LIBS="$LIBS -lcrypto"

13
socat-ext2.patch Normal file
View File

@ -0,0 +1,13 @@
*** xio-ext2.c.orig 2007-02-19 23:26:33.000000000 -0500
--- xio-ext2.c 2007-02-19 23:24:58.000000000 -0500
***************
*** 15,20 ****
--- 15,22 ----
/****** FD options ******/
+ #include <linux/fs.h>
+
#ifdef EXT2_SECRM_FL
/* secure deletion, chattr 's' */
const struct optdesc opt_ext2_secrm = { "ext2-secrm", "secrm", OPT_EXT2_SECRM, GROUP_REG, PH_FD, TYPE_BOOL, OFUNC_IOCTL_MASK_LONG, EXT2_IOC_GETFLAGS, EXT2_IOC_SETFLAGS, EXT2_SECRM_FL };

29
socat-wall.patch Normal file
View File

@ -0,0 +1,29 @@
--- /home/paul/BUILD/socat-1.7.1.1/configure.in 2009-05-06 14:09:03.000000000 -0400
+++ configure.in 2009-05-09 09:29:03.000000000 -0400
@@ -84,7 +84,7 @@ AC_CHECK_FUNC(setsockopt, , AC_CHECK_LIB
dnl Check for hstrerror prototype
AC_MSG_CHECKING(for hstrerror prototype)
AC_CACHE_VAL(sc_cv_have_prototype_hstrerror,
-[CFLAGS1="$CFLAGS"; CFLAGS="-Werror -O0 $CFLAGS1";
+[CFLAGS1="$CFLAGS"; CFLAGS="-Werror -O0 $(echo "$CFLAGS1" | sed -e 's@-Wall\>@@g')";
AC_TRY_COMPILE([#include <netdb.h>],[hstrerror();],
[sc_cv_have_prototype_hstrerror=no],
[sc_cv_have_prototype_hstrerror=yes]);
@@ -1296,7 +1296,7 @@ dnl output values: 1..short, 2..unsign
dnl 5..long, 6..u-long; others not yet supported
define(AC_BASIC_TYPE,[
AC_CACHE_CHECK(for equivalent simple type of $2, $4,
-[CFLAGS1="$CFLAGS"; CFLAGS="-Werror -O0 $CFLAGS1"
+[CFLAGS1="$CFLAGS"; CFLAGS="-Werror -O0 $(echo "$CFLAGS1" | sed -e 's@-Wall\>@@g')"
AC_TRY_COMPILE([$1],[$2 u; short v; &u==&v;],
[$4="1 /* short */"],
[AC_TRY_COMPILE([$1],[$2 u; unsigned short v; &u==&v;],
@@ -1328,7 +1328,7 @@ dnl arg4: output variable, values see AC
dnl arg5: cache variable (might be constructed automatically)
define(AC_TYPEOF_COMPONENT,[
AC_CACHE_CHECK(for basic type of $2.$3, $5,
-[CFLAGS1="$CFLAGS"; CFLAGS="-Werror -O0 $CFLAGS1"
+[CFLAGS1="$CFLAGS"; CFLAGS="-Werror -O0 $(echo "$CFLAGS1" | sed -e 's@-Wall\>@@g')"
AC_TRY_COMPILE([$1],[$2 u;short v; &u.$3==&v;],
[$5="1 /* short */"],
[AC_TRY_COMPILE([$1],[$2 u; unsigned short v; &u.$3==&v;],

View File

@ -2,13 +2,17 @@
Summary: Bidirectional data relay between two data channels ('netcat++')
Name: socat
Version: 1.7.4.1
Release: 1%{?dist}
License: GPLv2
Version: 1.7.4.4
Release: 7%{?dist}
License: GPL-2.0-only
Url: http://www.dest-unreach.org/socat/
Source: http://www.dest-unreach.org/socat/download/%{name}-%{version}.tar.gz
Group: Applications/Internet
Patch1: socat-1.7.3.3-warn.patch
Patch2: socat-configure-c99.patch
BuildRequires: make
BuildRequires: gcc
BuildRequires: openssl-devel readline-devel ncurses-devel
BuildRequires: autoconf kernel-headers > 2.6.18
# for make test
@ -26,6 +30,8 @@ line editor (readline), a program, or a combination of two of these.
%setup -q
iconv -f iso8859-1 -t utf-8 CHANGES > CHANGES.utf8
mv CHANGES.utf8 CHANGES
%patch1 -p1
%patch2 -p1
%build
%configure \
@ -37,23 +43,27 @@ mv CHANGES.utf8 CHANGES
--enable-listen --enable-proxy --enable-exec \
--enable-system --enable-pty --enable-readline \
--enable-openssl --enable-sycls --enable-filan \
--enable-retry #--enable-fips
--enable-retry # --enable-fips
make %{?_smp_mflags}
%make_build
%install
make DESTDIR=%{buildroot} install
%make_install
install -d %{buildroot}/%{_docdir}/socat
install -m 0644 *.sh %{buildroot}/%{_docdir}/socat/
install -m 0644 *.sh %{buildroot}/%{_docdir}/socat/
echo ".so man1/socat.1" | gzip > %{buildroot}/%{_mandir}/man1/filan.1.gz
cp -a %{buildroot}/%{_mandir}/man1/filan.1.gz %{buildroot}/%{_mandir}/man1/procan.1.gz
%check
export TERM=ansi
export OD_C=/usr/bin/od
# intermittently, a test sometimes just fails and hangs, mostly on arm
#timeout 30m make test
# intermittently, a test sometimes just fails and some just hang
# HANGS on x86_64: 93, 323
# FAILED on x86_64: 61 215 306 307
# FAILED on ppc64le: 58 239
# FAILED on armv7hl: 154 155 318 319
#sed -i 's/NUMCOND=true/NUMCOND="test \\$N -ne 93 -a \\$N -ne 323"/' test.sh
#make test
%files
%doc BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ PORTING
@ -65,16 +75,80 @@ export OD_C=/usr/bin/od
%doc %{_mandir}/man1/*
%changelog
* Tue Mar 30 2021 Paul Wouters <pwouters@redhat.com> - 1.7.4.1-1
- Resolves: rhbz#1805132 socat does not recognize IP addresses of the SAN extensions in ssl mode
- Resolves: rhbz#1870279 Transfer via socat fails with openssl enabled
- Resolves: rhbz#1914989 Socat udp4-recvfrom cause endless loop error when target is not vaild
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 1.7.4.4-7
- Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018
* Sun Dec 01 2019 Paul Wouters <pwouters@redhat.com> - 1.7.3.3-2
- Resolves: rhbz#1682464 socat changes blocked until gating tests are added
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 1.7.4.4-6
- Bump release for June 2024 mass rebuild
* Wed Nov 06 2019 Paul Wouters <pwouters@redhat.com> - 1.7.3.3-1
- Resolves: rhbz#1723581 socat-1.7.3.3 is available
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.4.4-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Oct 02 2023 Martin Osvald <mosvald@redhat.com> - 1.7.4.4-4
- SPDX migration
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.4.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.4.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Tue Jan 17 2023 Clemens Lang <cllang@redhat.com> - 1.7.4.4-1
- Resolves: rhbz#2038615 socat-1.7.4.4 is available
* Mon Dec 12 2022 Florian Weimer <fweimer@redhat.com> - 1.7.4.2-4
- Port configure script to C99 (#2152488)
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.4.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.4.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Mon Nov 1 2021 Davide Cavalca <dcavalca@fedoraproject.org> - 1.7.4.2-1
- Resolves: rhbz#2018835 socat-1.7.4.2 is available
* Tue Sep 14 2021 Sahana Prasad <sahana@redhat.com> - 1.7.4.1-4
- Rebuilt with OpenSSL 3.0.0
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.4.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.4.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Jan 11 10:35:54 EST 2021 Paul Wouters <pwouters@redhat.com> - 1.7.4.1-1
- Resolves: rhbz#1914653 socat-1.7.4.1 is available
* Mon Jan 4 09:34:27 EST 2021 Paul Wouters <pwouters@redhat.com> - 1.7.4.0-1
- Resolves: rhbz#1912161 socat-1.7.4.0 is available
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.3.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.3.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Mon Jan 06 2020 Paul Wouters <pwouters@redhat.com> - 1.7.3.4-1
- Resolves: rhbz#1787954 socat-1.7.3.4 is available
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.3.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Mon Jun 24 2019 Paul Wouters <pwouters@redhat.com> - 1.7.3.3-1
- Resolves: rhbz#1696931 socat-1.7.3.3 is available
- Resolves: rhbz#1612274 Man page scan results for socat
- Disabled --enable-fips as its requires fipsld which we don't have.
* Sun Feb 17 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.7.3.2-9
- Rebuild for readline 8.0
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.3.2-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.3.2-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.7.3.2-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

1
sources Normal file
View File

@ -0,0 +1 @@
SHA512 (socat-1.7.4.4.tar.gz) = 709fd393642d4249152d75add4d489ea76e6118c9e6740e796f029e8c5ddd4f5c9218d587977fc57ada640f635a996cbbe4055275236a169881bb2be1d3e5df9