socat is a relay for bidirectional data transfer between two independent
data channels. Each of these data channels may be a file, pipe, device
(terminal or modem etc.), socket (UNIX, IP4, IP6 - raw, UDP, TCP), a file
descriptor (stdin etc.), a program, or an arbitrary combination of two of
these.
socat can be used, e.g., as TCP relay (one-shot or daemon), as an external
socksifier, for attacking weak firewalls, as a shell interface to UNIX
sockets, IP6 relay, for redirecting TCP oriented programs like brutus to a
serial line, or to establish a relatively secure environment (su and chroot)
for running client or server shell scripts with network connections.
WWW: http://www.dest-unreach.org/socat/

* - deleted ports are only shown under the This port is required by section. It was harder to do for the Required section. Perhaps later...
Configuration Options

===> The following configuration options are available for socat-1.7.3.2_2:
DOCS=on: Build and/or install documentation
READLINE=off: Command line editing via libreadline
===> Use 'make config' to modify these settings

socat will automatically link against readline if devel/readline is installed.
Make readline optional and explicitly enable/disable during configure. This
did not affect pkg only users as readline is not present on package build
clusters but might affect (depending on readline presence) users that manually
build ports. Therefore bump PORTREVISION.
PR: 218370 (based on)
Submitted by: sunpoet

net/socat: Update to 1.7.3.1
This release fixes an important security bug with a hardcoded DH
parameter not being a prime number.
http://www.dest-unreach.org/socat/contrib/socat-secadv7.html
MFH: 2016Q1
Security: https://vuxml.freebsd.org/freebsd/a52a7172-c92e-11e5-96d6-14dae9d210b8.html

With SOCAT on systems where b0 to b4000000 options are not available, like
FreeBSD, setting the speed of a TERMIOS terminal is done using the ispeed and
ospeed options.
But when using simultaneously ispeed and ospeed parameters with SOCAT, the speed
values are set within two distinct ioctl requests, so changing the speed of
terminals or devices that need matching input and output returns an Invalid
argument error (the TIOCSETA/TIOCSETAW/TIOCSETAF ioctl returns -1 and sets errno
to EINVAL).
This is especially the case On FreeBSD, where many tty device drivers need
matching input and output speeds: - those that depend on ucom(4): uark(4),
ubsa(4), ubser(4), uftdi(4), umcs(4), uplcom(4), uslcom(4), uvscom(4) - some
others, even not depending on ucom(4): sio(4), digi(4), rp(4) But some don't:
tty(4)

Change the clang detector to use a pattern match instead of a conditional
define and always test. This fixes build on 9-STABLE and saves some shell
commands.
PR: 181007
Submitted by: "r4721@tormail.org" <r4721@tormail.org>

Fix startup script issue with a wrapper script obtained from www/gatling.
This wrapper tries to emulate part of the functionality usually supplied by
software like daemontools or runit. It is used to start socat which does not
daemonize itself and logs to stdout/stderr. It redirects stdout and stderr to
logger(1) via a fifo.
While here also remove if-statement around PORTDOCS based on NOPORTDOCS since
it's redundant with checks in ports/Mk/bsd.ports.mk.
PR: 166947
Submitted by: Mark Felder <feld@feld.me>

In the rc.d scripts, change assignments to rcvar to use the
literal name_enable wherever possible, and ${name}_enable
when it's not, to prepare for the demise of set_rcvar().
In cases where I had to hand-edit unusual instances also
modify formatting slightly to be more uniform (and in
some cases, correct). This includes adding some $FreeBSD$
tags, and most importantly moving rcvar= to right after
name= so it's clear that one is derived from the other.

- Update to 1.7.2.0 (this release allows tun/tap interfaces without IP
addresses)
- Remove the option to build without OpenSSL, we're supposed to provide
sensible default configurations and options. Building a port without
OpenSSL support in 2011 makes no sense. This has also been discussed at the
Dev Summit 2011
Feature safe: yes

Fix a few "bad example" problems in the rc.d scripts that have been
propogated by copy and paste.
1. Primarily the "empty variable" default assignment, which is mostly
${name}_flags="", but fix a few others as well.
2. Where they are not already documented, add the existence of the _flags
(or other deleted empties) option to the comments, and in some cases add
comments from scratch.
3. Replace things that look like:
prefix=%%PREFIX%%
command=${prefix}/sbin/foo
to just use %%PREFIX%%. In many cases the $prefix variable is only used
once, and in some cases it is not used at all.
4. In a few cases remove ${name}_flags from command_args
5. Remove a long-stale comment about putting the port's rc.d script in
/etc/rc.d (which is no longer necessary).
No PORTREVISION bumps because all of these changes are noops.

socat 1.4.0.0 has buggy SOCKS4A code. The maintainer patch on the web site has
(probably had, now) a platform-specific bug,
which was resolved in conjunction with the socat author earlier. The problem
will be corrected in socat 1.4.0.1, but in the
meantime is provided separately. This patch adds the fix as a replacement
xio-socks.c.
I have also set myself as the maintainer as part of the patch below. I am
willing to take on maintainership of this port.
PR: 69317
Submitted by: rik <freebsd-ports@rikrose.net>

Update net/socat: 1.3.1.0 -> 1.3.2.0
* A new mode allows you to directly connect an
executed program to the other side of the relay.
* A couple of minor improvements and corrections
have been made.
PR: 54284
Submitted by: Kirill Ponomarew <ponomarew@oberon.net>