Compare commits

..

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

13 changed files with 2 additions and 350 deletions

14
.gitignore vendored
View File

@ -1,13 +1 @@
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.4.1.tar.gz
SOURCES/socat-1.7.4.1.tar.gz

1
.socat.metadata Normal file
View File

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

View File

@ -1,7 +0,0 @@
--- !Policy
product_versions:
- rhel-8
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tedude.validation}

View File

@ -1,69 +0,0 @@
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

@ -1,11 +0,0 @@
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

@ -1,12 +0,0 @@
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

@ -1,67 +0,0 @@
--- 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 */

View File

@ -1,85 +0,0 @@
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

View File

@ -1,43 +0,0 @@
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

@ -1,13 +0,0 @@
*** 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 };

View File

@ -1,29 +0,0 @@
--- /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

@ -1 +0,0 @@
SHA512 (socat-1.7.4.1.tar.gz) = e43c8b23a841aea5ecc3ac324185ee4ada552a8284ec41b99245def2d8b493bca9caea1af6f646f434a7eda67a1dd71e4e037eea65fce0444840236eadb126a6