2020-02-09 14:19:10 +01:00
|
|
|
# $NetBSD: Makefile,v 1.43 2020/02/09 13:19:10 jdolecek Exp $
|
Import socat-1.3.2.2 from pkgsrc-wip. Provided by Adrian Portelli,
and slightly modified by me.
socat is a relay for bidirectional data transfer between two
independent data channels. Each of these data channels may be a file,
pipe, device (serial line etc. or a pseudo terminal), a socket (UNIX,
IP4, IP6 - raw, UDP, TCP), an SSL socket, proxy CONNECT connection, a
file descriptor (stdin etc.), the GNU line editor, a program, or a
combination of two of these. These modes include generation of
"listening" sockets, pipes and pseudo terminals.
2004-02-14 23:43:38 +01:00
|
|
|
|
socat: Update to 1.7.3.3
pkgsrc changes:
- Adjust test related definition
- Remove no longer needed patches
Changes:
1.7.3.3:
--------
Corrections:
Makefile.in did not specify dependencies of filan on vsnprintf_r.o
and snprinterr.o
Added definition of FILAN_OBJS
Thanks to Craig Leres, Clayton Shotwell, and Chris Packham for
providing patches.
configure option --enable-msglevel did not work with numbers
The autoconf mechanism for determining SHIFT_OFFSET did not work when
cross compiling.
Thanks to Max Freisinger from Gentoo for sending a patch.
Socat still depended on obsolete gethostbyname() function, thus
compiling with MUSL libc failed.
Problem reported by Kennedy33.
The async signal safe diagnostic system used FDs 3 and 4 internally, so
use of appropriate fdin or fdout led to failures.
Test: DIAG_FDIN
Problem reported by Onur Sentürk.
The socket based mechanism for passing messages and signal information
from signal handler to process could reach and kill the wrong process.
Introduces functions diag_sock_pair(), diag_fork()
Thanks to Darren Zhao for analysing and reporting this problem.
Option ipv6-join-group did not work because it was applied in the wrong
phase
Test: UDP6MULTICAST_UNIDIR
Thanks to Angus Gratton for sending a patch.
Setting ispeed and ospeed failed for some serial devices because the
two settings were applied with two different get/set cycles, Thanks to
Alexandre Fenyo for providing an initial patch.
However, the actual fix is part of a conceptual change of the termios
module that aims for applying all changes in a single tcsetaddr call.
Fixes FreeBSD Bug 198441
Termios options TAB0,TAB1,TAB2,TAB3, and XTABS did not have an effect.
Thanks to Alan Walters for reporting this bug.
Substituted cumbersom ISPEED_OFFSET mechanism for cfsetispeed() calls
With TCP6-LISTEN and the other passive IPv6 addresses the range option
just failed: due to a bug in the syntax parser and two more bugs in
the xiocheckrange_ip6() function.
The syntax has now been changed from "[::1/128]" to "[::1]/128"!
Thanks Leah Neukirchen for sending an initial fix.
For name resolution Socat only checked the first character of the host
name to decide if it is an IPv4 address. This was not RFC conform. This
fix removes the possibility for use of IPv4 addresses with IPv6, e.g.
TCP6:127.0.0.1:80
Thanks to Nicolas Fournil for reporting this issue.
Print a useful error message when single character options appear to be
merged in Socat invocation
Test: SOCCAT_OPT_HINT
Fixed some docu typos.
Thanks to Travis Wellman, Thomas <tjps636>, Dan Kenigsberg,
Julian Zinn, and Simon Matter
Porting:
OpenSSL functions TLS1_client_method() and similar are
deprecated. Socat now uses recommended TLS_client_method(). The old
functions and dependend option openssl-method can still be
used when configuring socat with --enable-openssl-method
Shell scripts in socat distribution are now headed with:
#! /usr/bin/env bash
to make them better portable to systems without /bin/bash
Thanks to Maya Rashish for sending a patch
RES_AAONLY, RES_PRIMARY are deprecated. You can still enable them with
configure option --enable-res-deprecated.
New versions of OpenSSL preset SSL_MODE_AUTO_RETRY which may hang socat.
Solution: clear SSL_MODE_AUTO_RETRY when it is set.
Renamed configure.in to configure.ac and set an appropriate symlink for
older environments.
Related Gentoo bug 426262: Warning on configure.in
Thanks to Francesco Turco for reporting that warning.
Fixed new IPv6 range code for platforms without s6_addr32 component.
Testing:
test.sh: Show a warning when phase-1 (insecure phase) of a security
test fails
OpenSSL tests failed on actual Linux distributions. Measures:
Increased key lengths from 768 to 1024 bits
Added test.sh option -C to delete temp certs from prevsious runs
Provide DH-parameter in certificate in PEM
OpenSSL s_server option -verify 0 must be omitted
OpenSSL authentication method aNULL no longer works
Failure of cipher aNULL is not a failure
Failure of methods SSL3 and SSL23 is desired
test.sh depended on ifconfig and netstat utilities which are no longer
available in some distributions. test.sh now checks for and prefers
ip and ss.
Thanks to Ruediger Meier for reporting this problem.
More corrections to test.sh:
Language settings could still influence test results
netstat was still required
Suppress usleep deprecated messag
Force use of IPv4 with some certificates
Set timeout for UDPxMAXCHILDREN tests
Git:
Added missing Config/Makefile.DragonFly-2-8-2,
Config/config.DragonFly-2-8-2.h
Removed testcert.conf (to be generated by test.sh)
Cosmetics:
Simplified handling of missing termios defines.
New features:
Permit combined -d options as -dd etc.
2019-04-07 21:26:56 +02:00
|
|
|
DISTNAME= socat-1.7.3.3
|
2020-02-09 14:19:10 +01:00
|
|
|
PKGREVISION= 2
|
Import socat-1.3.2.2 from pkgsrc-wip. Provided by Adrian Portelli,
and slightly modified by me.
socat is a relay for bidirectional data transfer between two
independent data channels. Each of these data channels may be a file,
pipe, device (serial line etc. or a pseudo terminal), a socket (UNIX,
IP4, IP6 - raw, UDP, TCP), an SSL socket, proxy CONNECT connection, a
file descriptor (stdin etc.), the GNU line editor, a program, or a
combination of two of these. These modes include generation of
"listening" sockets, pipes and pseudo terminals.
2004-02-14 23:43:38 +01:00
|
|
|
CATEGORIES= net
|
|
|
|
MASTER_SITES= http://www.dest-unreach.org/socat/download/
|
|
|
|
|
2017-02-05 21:40:32 +01:00
|
|
|
MAINTAINER= leot@NetBSD.org
|
Import socat-1.3.2.2 from pkgsrc-wip. Provided by Adrian Portelli,
and slightly modified by me.
socat is a relay for bidirectional data transfer between two
independent data channels. Each of these data channels may be a file,
pipe, device (serial line etc. or a pseudo terminal), a socket (UNIX,
IP4, IP6 - raw, UDP, TCP), an SSL socket, proxy CONNECT connection, a
file descriptor (stdin etc.), the GNU line editor, a program, or a
combination of two of these. These modes include generation of
"listening" sockets, pipes and pseudo terminals.
2004-02-14 23:43:38 +01:00
|
|
|
HOMEPAGE= http://www.dest-unreach.org/socat/
|
|
|
|
COMMENT= "netcat++" (extended design, new implementation)
|
2009-07-19 14:08:12 +02:00
|
|
|
LICENSE= gnu-gpl-v2
|
Import socat-1.3.2.2 from pkgsrc-wip. Provided by Adrian Portelli,
and slightly modified by me.
socat is a relay for bidirectional data transfer between two
independent data channels. Each of these data channels may be a file,
pipe, device (serial line etc. or a pseudo terminal), a socket (UNIX,
IP4, IP6 - raw, UDP, TCP), an SSL socket, proxy CONNECT connection, a
file descriptor (stdin etc.), the GNU line editor, a program, or a
combination of two of these. These modes include generation of
"listening" sockets, pipes and pseudo terminals.
2004-02-14 23:43:38 +01:00
|
|
|
|
|
|
|
GNU_CONFIGURE= YES
|
|
|
|
|
socat: Update to 1.7.3.3
pkgsrc changes:
- Adjust test related definition
- Remove no longer needed patches
Changes:
1.7.3.3:
--------
Corrections:
Makefile.in did not specify dependencies of filan on vsnprintf_r.o
and snprinterr.o
Added definition of FILAN_OBJS
Thanks to Craig Leres, Clayton Shotwell, and Chris Packham for
providing patches.
configure option --enable-msglevel did not work with numbers
The autoconf mechanism for determining SHIFT_OFFSET did not work when
cross compiling.
Thanks to Max Freisinger from Gentoo for sending a patch.
Socat still depended on obsolete gethostbyname() function, thus
compiling with MUSL libc failed.
Problem reported by Kennedy33.
The async signal safe diagnostic system used FDs 3 and 4 internally, so
use of appropriate fdin or fdout led to failures.
Test: DIAG_FDIN
Problem reported by Onur Sentürk.
The socket based mechanism for passing messages and signal information
from signal handler to process could reach and kill the wrong process.
Introduces functions diag_sock_pair(), diag_fork()
Thanks to Darren Zhao for analysing and reporting this problem.
Option ipv6-join-group did not work because it was applied in the wrong
phase
Test: UDP6MULTICAST_UNIDIR
Thanks to Angus Gratton for sending a patch.
Setting ispeed and ospeed failed for some serial devices because the
two settings were applied with two different get/set cycles, Thanks to
Alexandre Fenyo for providing an initial patch.
However, the actual fix is part of a conceptual change of the termios
module that aims for applying all changes in a single tcsetaddr call.
Fixes FreeBSD Bug 198441
Termios options TAB0,TAB1,TAB2,TAB3, and XTABS did not have an effect.
Thanks to Alan Walters for reporting this bug.
Substituted cumbersom ISPEED_OFFSET mechanism for cfsetispeed() calls
With TCP6-LISTEN and the other passive IPv6 addresses the range option
just failed: due to a bug in the syntax parser and two more bugs in
the xiocheckrange_ip6() function.
The syntax has now been changed from "[::1/128]" to "[::1]/128"!
Thanks Leah Neukirchen for sending an initial fix.
For name resolution Socat only checked the first character of the host
name to decide if it is an IPv4 address. This was not RFC conform. This
fix removes the possibility for use of IPv4 addresses with IPv6, e.g.
TCP6:127.0.0.1:80
Thanks to Nicolas Fournil for reporting this issue.
Print a useful error message when single character options appear to be
merged in Socat invocation
Test: SOCCAT_OPT_HINT
Fixed some docu typos.
Thanks to Travis Wellman, Thomas <tjps636>, Dan Kenigsberg,
Julian Zinn, and Simon Matter
Porting:
OpenSSL functions TLS1_client_method() and similar are
deprecated. Socat now uses recommended TLS_client_method(). The old
functions and dependend option openssl-method can still be
used when configuring socat with --enable-openssl-method
Shell scripts in socat distribution are now headed with:
#! /usr/bin/env bash
to make them better portable to systems without /bin/bash
Thanks to Maya Rashish for sending a patch
RES_AAONLY, RES_PRIMARY are deprecated. You can still enable them with
configure option --enable-res-deprecated.
New versions of OpenSSL preset SSL_MODE_AUTO_RETRY which may hang socat.
Solution: clear SSL_MODE_AUTO_RETRY when it is set.
Renamed configure.in to configure.ac and set an appropriate symlink for
older environments.
Related Gentoo bug 426262: Warning on configure.in
Thanks to Francesco Turco for reporting that warning.
Fixed new IPv6 range code for platforms without s6_addr32 component.
Testing:
test.sh: Show a warning when phase-1 (insecure phase) of a security
test fails
OpenSSL tests failed on actual Linux distributions. Measures:
Increased key lengths from 768 to 1024 bits
Added test.sh option -C to delete temp certs from prevsious runs
Provide DH-parameter in certificate in PEM
OpenSSL s_server option -verify 0 must be omitted
OpenSSL authentication method aNULL no longer works
Failure of cipher aNULL is not a failure
Failure of methods SSL3 and SSL23 is desired
test.sh depended on ifconfig and netstat utilities which are no longer
available in some distributions. test.sh now checks for and prefers
ip and ss.
Thanks to Ruediger Meier for reporting this problem.
More corrections to test.sh:
Language settings could still influence test results
netstat was still required
Suppress usleep deprecated messag
Force use of IPv4 with some certificates
Set timeout for UDPxMAXCHILDREN tests
Git:
Added missing Config/Makefile.DragonFly-2-8-2,
Config/config.DragonFly-2-8-2.h
Removed testcert.conf (to be generated by test.sh)
Cosmetics:
Simplified handling of missing termios defines.
New features:
Permit combined -d options as -dd etc.
2019-04-07 21:26:56 +02:00
|
|
|
USE_TOOLS+= bash:test
|
2017-11-11 20:43:06 +01:00
|
|
|
REPLACE_BASH+= *.sh
|
|
|
|
|
socat: Update to 1.7.3.3
pkgsrc changes:
- Adjust test related definition
- Remove no longer needed patches
Changes:
1.7.3.3:
--------
Corrections:
Makefile.in did not specify dependencies of filan on vsnprintf_r.o
and snprinterr.o
Added definition of FILAN_OBJS
Thanks to Craig Leres, Clayton Shotwell, and Chris Packham for
providing patches.
configure option --enable-msglevel did not work with numbers
The autoconf mechanism for determining SHIFT_OFFSET did not work when
cross compiling.
Thanks to Max Freisinger from Gentoo for sending a patch.
Socat still depended on obsolete gethostbyname() function, thus
compiling with MUSL libc failed.
Problem reported by Kennedy33.
The async signal safe diagnostic system used FDs 3 and 4 internally, so
use of appropriate fdin or fdout led to failures.
Test: DIAG_FDIN
Problem reported by Onur Sentürk.
The socket based mechanism for passing messages and signal information
from signal handler to process could reach and kill the wrong process.
Introduces functions diag_sock_pair(), diag_fork()
Thanks to Darren Zhao for analysing and reporting this problem.
Option ipv6-join-group did not work because it was applied in the wrong
phase
Test: UDP6MULTICAST_UNIDIR
Thanks to Angus Gratton for sending a patch.
Setting ispeed and ospeed failed for some serial devices because the
two settings were applied with two different get/set cycles, Thanks to
Alexandre Fenyo for providing an initial patch.
However, the actual fix is part of a conceptual change of the termios
module that aims for applying all changes in a single tcsetaddr call.
Fixes FreeBSD Bug 198441
Termios options TAB0,TAB1,TAB2,TAB3, and XTABS did not have an effect.
Thanks to Alan Walters for reporting this bug.
Substituted cumbersom ISPEED_OFFSET mechanism for cfsetispeed() calls
With TCP6-LISTEN and the other passive IPv6 addresses the range option
just failed: due to a bug in the syntax parser and two more bugs in
the xiocheckrange_ip6() function.
The syntax has now been changed from "[::1/128]" to "[::1]/128"!
Thanks Leah Neukirchen for sending an initial fix.
For name resolution Socat only checked the first character of the host
name to decide if it is an IPv4 address. This was not RFC conform. This
fix removes the possibility for use of IPv4 addresses with IPv6, e.g.
TCP6:127.0.0.1:80
Thanks to Nicolas Fournil for reporting this issue.
Print a useful error message when single character options appear to be
merged in Socat invocation
Test: SOCCAT_OPT_HINT
Fixed some docu typos.
Thanks to Travis Wellman, Thomas <tjps636>, Dan Kenigsberg,
Julian Zinn, and Simon Matter
Porting:
OpenSSL functions TLS1_client_method() and similar are
deprecated. Socat now uses recommended TLS_client_method(). The old
functions and dependend option openssl-method can still be
used when configuring socat with --enable-openssl-method
Shell scripts in socat distribution are now headed with:
#! /usr/bin/env bash
to make them better portable to systems without /bin/bash
Thanks to Maya Rashish for sending a patch
RES_AAONLY, RES_PRIMARY are deprecated. You can still enable them with
configure option --enable-res-deprecated.
New versions of OpenSSL preset SSL_MODE_AUTO_RETRY which may hang socat.
Solution: clear SSL_MODE_AUTO_RETRY when it is set.
Renamed configure.in to configure.ac and set an appropriate symlink for
older environments.
Related Gentoo bug 426262: Warning on configure.in
Thanks to Francesco Turco for reporting that warning.
Fixed new IPv6 range code for platforms without s6_addr32 component.
Testing:
test.sh: Show a warning when phase-1 (insecure phase) of a security
test fails
OpenSSL tests failed on actual Linux distributions. Measures:
Increased key lengths from 768 to 1024 bits
Added test.sh option -C to delete temp certs from prevsious runs
Provide DH-parameter in certificate in PEM
OpenSSL s_server option -verify 0 must be omitted
OpenSSL authentication method aNULL no longer works
Failure of cipher aNULL is not a failure
Failure of methods SSL3 and SSL23 is desired
test.sh depended on ifconfig and netstat utilities which are no longer
available in some distributions. test.sh now checks for and prefers
ip and ss.
Thanks to Ruediger Meier for reporting this problem.
More corrections to test.sh:
Language settings could still influence test results
netstat was still required
Suppress usleep deprecated messag
Force use of IPv4 with some certificates
Set timeout for UDPxMAXCHILDREN tests
Git:
Added missing Config/Makefile.DragonFly-2-8-2,
Config/config.DragonFly-2-8-2.h
Removed testcert.conf (to be generated by test.sh)
Cosmetics:
Simplified handling of missing termios defines.
New features:
Permit combined -d options as -dd etc.
2019-04-07 21:26:56 +02:00
|
|
|
TEST_TARGET= test
|
2017-11-11 20:43:06 +01:00
|
|
|
|
2013-05-10 02:46:53 +02:00
|
|
|
.include "../../mk/bsd.prefs.mk"
|
|
|
|
|
Import socat-1.3.2.2 from pkgsrc-wip. Provided by Adrian Portelli,
and slightly modified by me.
socat is a relay for bidirectional data transfer between two
independent data channels. Each of these data channels may be a file,
pipe, device (serial line etc. or a pseudo terminal), a socket (UNIX,
IP4, IP6 - raw, UDP, TCP), an SSL socket, proxy CONNECT connection, a
file descriptor (stdin etc.), the GNU line editor, a program, or a
combination of two of these. These modes include generation of
"listening" sockets, pipes and pseudo terminals.
2004-02-14 23:43:38 +01:00
|
|
|
CONFIGURE_ARGS+= --disable-libwrap
|
|
|
|
|
2013-05-10 02:46:53 +02:00
|
|
|
.if !empty(USE_CROSS_COMPILE:M[yY][eE][sS]) && ${OPSYS} == "NetBSD"
|
|
|
|
# XXX Kludge -- the right fix is to make socat not depend on these constants.
|
|
|
|
CONFIGURE_ENV+= sc_cv_sys_crdly_shift=-1
|
|
|
|
CONFIGURE_ENV+= sc_cv_sys_tabdly_shift=-1
|
|
|
|
CONFIGURE_ENV+= sc_cv_sys_csize_shift=8
|
|
|
|
CONFIGURE_ENV+= ac_cv_ispeed_offset=9
|
|
|
|
.endif
|
|
|
|
|
Import socat-1.3.2.2 from pkgsrc-wip. Provided by Adrian Portelli,
and slightly modified by me.
socat is a relay for bidirectional data transfer between two
independent data channels. Each of these data channels may be a file,
pipe, device (serial line etc. or a pseudo terminal), a socket (UNIX,
IP4, IP6 - raw, UDP, TCP), an SSL socket, proxy CONNECT connection, a
file descriptor (stdin etc.), the GNU line editor, a program, or a
combination of two of these. These modes include generation of
"listening" sockets, pipes and pseudo terminals.
2004-02-14 23:43:38 +01:00
|
|
|
SUBST_CLASSES+= paths
|
Update to 1.4.3.1
> ####################### V 1.4.3.1:
>
> corrections:
> PROBLEM: UNIX socket listen accepted only one (or a few) connections.
> FIX: do not remove listening UNIX socket in child process
>
> PROBLEM: SIGSEGV when TCP part of SSL connect failed
> FIX: check ssl pointer before calling SSH_shutdown
>
> In debug mode, show connect client port even when connect fails
>
> ####################### V 1.4.3.0:
>
> new features:
> socat options -L, -W for application level locking
>
> options "lockfile", "waitlock" for address level locking
> (Stefan Luethje)
>
> option "readbytes" limits read length (Adam Osuchowski)
>
> option "retry" for unix-connect, unix-listen, tcp6-listen (Dale Dude)
> socat options -L, -W for application level locking
>
> options "lockfile", "waitlock" for address level locking
> (Stefan Luethje)
>
> option "readbytes" limits read length (Adam Osuchowski)
>
> option "retry" for unix-connect, unix-listen, tcp6-listen (Dale Dude)
>
> pty symlink, unix listen socket, and named pipe are per default removed
> after use; option unlink-close overrides this new behaviour and also
> controls removal of other socat generated files (Stefan Luethje)
>
> corrections:
> option "retry" did not work with tcp-listen
>
> EPIPE condition could result in a 100% CPU loop
>
> further changes:
> support systems without SHUT_RD etc.
> handle more size_t types
> try to find makedepend options with gcc 3 (richard/OpenMacNews)
2006-02-05 01:33:34 +01:00
|
|
|
SUBST_MESSAGE.paths= Fixing hardcoded paths.
|
2018-07-04 15:40:07 +02:00
|
|
|
SUBST_STAGE.paths= pre-configure
|
2007-04-09 11:47:48 +02:00
|
|
|
SUBST_FILES.paths= doc/socat.1
|
Import socat-1.3.2.2 from pkgsrc-wip. Provided by Adrian Portelli,
and slightly modified by me.
socat is a relay for bidirectional data transfer between two
independent data channels. Each of these data channels may be a file,
pipe, device (serial line etc. or a pseudo terminal), a socket (UNIX,
IP4, IP6 - raw, UDP, TCP), an SSL socket, proxy CONNECT connection, a
file descriptor (stdin etc.), the GNU line editor, a program, or a
combination of two of these. These modes include generation of
"listening" sockets, pipes and pseudo terminals.
2004-02-14 23:43:38 +01:00
|
|
|
SUBST_SED.paths= -e 's,/usr/,${PREFIX}/,g'
|
|
|
|
|
2007-10-09 22:21:29 +02:00
|
|
|
.include "options.mk"
|
|
|
|
|
Import socat-1.3.2.2 from pkgsrc-wip. Provided by Adrian Portelli,
and slightly modified by me.
socat is a relay for bidirectional data transfer between two
independent data channels. Each of these data channels may be a file,
pipe, device (serial line etc. or a pseudo terminal), a socket (UNIX,
IP4, IP6 - raw, UDP, TCP), an SSL socket, proxy CONNECT connection, a
file descriptor (stdin etc.), the GNU line editor, a program, or a
combination of two of these. These modes include generation of
"listening" sockets, pipes and pseudo terminals.
2004-02-14 23:43:38 +01:00
|
|
|
.include "../../security/openssl/buildlink3.mk"
|
|
|
|
.include "../../devel/readline/buildlink3.mk"
|
|
|
|
.include "../../mk/bsd.pkg.mk"
|