Subject: CVS commit: pkgsrc/net/socat
From: Leonardo Taccari
Date: 2023-08-17 23:55:22
Message id: 20230817215522.B1CB6FBDB@cvs.NetBSD.org

Log Message:
socat: Update to 1.7.4.4

pkgsrc changes:
- Remove patch-sysutils.c, patch-xio-openssl.c, patch-xio-socket.c: applied
  upstream

Changes:
1.7.4.4
=======
Corrections:
 - In error.c msg2() there was a stack overflow on long messages: The
   terminating \0 Byte was written behind the last position.
   Thanks to Martin Liška for sending the address sanitizer report.
 - UDP-RECVFROM with fork sometimes terminated when multiple packets
   arrived. This issue was introduced with a bug fix in version 1.7.4.0.
   Reason was not handling EAGAIN on recvmsg().
   Thanks to Jamie McQuillan for reporting this issue.
 - Address TCP with options connect-timeout and retry terminated
   immediately when a connection attempt failed on network error or
   connection refused.
   Test: TCP_TIMEOUT_RETRY
   Thanks to Kamil Holubicki for reporting this issue.
 - There were a couple of weaknesses and errors when accessing invalid or
   incompatible file system entries with UNIX domain, file, and generic
   addresses.
   For example, UNIX-CONNECT, when using a non matching socktype, failed
   with -1 and did not print an error message, instead of printing an
   error message and exiting with rc=1.
   Thanks to Paul Wise for reporting and analyzing the case of accessing
   a left over socket entry with GOPEN.
 - The rawer option failed because it tried to clear CREAD.
 - UDP-SEND and UPD-SENDTO with option lowport always bound to port 1
   instead of a free port in range 640..1023
 - Fixed bad parser error message on "socat /tmp/x\"x/x -"
 - Tightened syntax checks to detect numerical arguments that are missing
   or have trailing garbage.
 - ctype(3) functions need there arguments to be unsigned char.
   Thanks to Taylor R Campbell for sending a patch.
 - Filan library uses Socats diag/error message system and therefore had
   always the signal handler messages socket pair open. This fix avoids
   this socketpair in standalone Filan.
 - Corrected printf format for type socklen_t in two places.

Porting:
 - OpenSSL, at least 1.1 on Ubuntu, crashed with SIGSEGV under certain
   conditions: client connection to server with certificate with empty
   subject, and pressing ^C after successful connect.
   This crash is now prevented by setting OPENSSL_INIT_NO_ATEXIT.
   Thanks to Martin Dorey for reporting and analyzing this issue, and for
   providing an environment for reproduction.
 - Socat failed to compile on platforms that have
   IP_ADD_SOURCE_MEMBERSHIP but not struct ip_mreq_source
   Thanks to Justin Yackoski for sending a patch.
 - configure.ac's detection of getprotobynumber_r() variant did not
   recognize if this function does not exist, e.g. on Musl libc.
   Thanks to Alexander Kanavin and Baruch Siach for sending patches.
 - Corrected message format when no strftime() is available; improved
   handling of very long host or program names
 - Solaris requires that termios options are always applied to the slave
   side of PTY.
 - Fixed ancillary messages on Solaris.
 - Filan: Solaris has the open file path infos in /proc/<pid>/path/
   Thanks to Andy Fiddaman to directing me to the patch.
 - Filan now recognizes and prints Solaris doors and event ports.
 - Solaris derivatives no longer need librt for clock_gettime()
   Thanks to Andy Fiddaman to directing me to the patch.

Building:
 - Failure during building documentation, e.g. due to missing Yodl
   packages, now does not let the build process fail.
   Feature requested by Seyhun.

Features:
 - Filan prints target of symlink when appropriate
 - VSOCK-LISTEN now generates environment variables SOCAT_PEERADDR,
   SOCAT_PEERPORT, SOCAT_SOCKADDR, SOCAT_SOCKPORT
   New address aliases VSOCK, VSOCK-L

Documentation:
 - Fixed typo in doc/socat-tun.html and link in README.
   Thanks to William Suthers for reporting.
 - Fixed hard coded path in docu examples.
   Thanks to Jakub Wilk for sending a patch.
 - Updated doc/socat-openssltunnel.html: 2048 bits, commonname

Testing:
 - Unset SOCAT_MAIN_WAIT on informational Socat calls
 - SOCAT=socat used ./socat instead of the version derived by $PATH
 - Do not try VSOCK_ECHO test when feature is not compiled in.
 - Fixed logging of test 220 TUNINTERFACE
   Musl libc refuses to execve() shell scripts, 2 tests needed to be
   adapted.
 - Musl libc has FOPEN_MAX=1000 which made bash dumping core on test
   EXCEED_FOPEN_MAX.
 - Added tests for failures of UNIX socket and GOPEN accesses to non
   matching file system entries.
 - On RHEL-9 SCTP support requires installation of package
   kernel-modules-extra. test.sh now detects when SCTP is missing in
   kernel and reacts with warnings instead of errors.
 - VSOCK loopback still does not seem to work even in kernel 5.13, so just
   issue warning on "No such device".

Files:
RevisionActionfile
1.49modifypkgsrc/net/socat/Makefile
1.36modifypkgsrc/net/socat/distinfo
1.1removepkgsrc/net/socat/patches/patch-sysutils.c
1.1removepkgsrc/net/socat/patches/patch-xio-openssl.c
1.1removepkgsrc/net/socat/patches/patch-xio-socket.c