SecBSD's official ports repository

This commit is contained in:
purplerain 2023-08-16 22:26:55 +00:00
commit 2c0afcbbf3
Signed by: purplerain
GPG key ID: F42C07F07E2E35B7
64331 changed files with 5339189 additions and 0 deletions

View file

@ -0,0 +1,21 @@
COMMENT = extensible Perl internet server
DISTNAME = Net-Server-2.014
CATEGORIES = devel net
# Perl
PERMIT_PACKAGE = Yes
MODULES = cpan
TEST_DEPENDS = devel/p5-IO-Multiplex \
net/p5-IO-Socket-INET6 \
security/p5-IO-Socket-SSL \
security/p5-Net-SSLeay
PKG_ARCH = *
MODCPAN_EXAMPLES = Yes
.include <bsd.port.mk>

View file

@ -0,0 +1,2 @@
SHA256 (Net-Server-2.014.tar.gz) = NAa5ylpmKgB17tR/t43hMWtgHJT2Kg7jSlVE25uqNyA=
SIZE (Net-Server-2.014.tar.gz) = 154783

View file

@ -0,0 +1,14 @@
Non blocking SSL does not use read or write properly. With TLS 1.2
it works by accident. Do not use TLS 1.3.
Index: lib/Net/Server/Proto/SSLEAY.pm
--- lib/Net/Server/Proto/SSLEAY.pm.orig
+++ lib/Net/Server/Proto/SSLEAY.pm
@@ -153,6 +153,7 @@ sub bind_SSL {
my $ctx = Net::SSLeay::CTX_new(); $sock->SSLeay_check_fatal("SSLeay bind_SSL CTX_new");
Net::SSLeay::CTX_set_options($ctx, Net::SSLeay::OP_ALL()); $sock->SSLeay_check_fatal("SSLeay bind_SSL CTX_set_options");
+ Net::SSLeay::CTX_set_max_proto_version($ctx, Net::SSLeay::TLS1_2_VERSION());
# 0x1: SSL_MODE_ENABLE_PARTIAL_WRITE
# 0x10: SSL_MODE_RELEASE_BUFFERS (ignored before OpenSSL v1.0.0)

View file

@ -0,0 +1,17 @@
We don't have the sysctl any more, resulting in this binding to v6 only.
Index: lib/Net/Server/Proto.pm
--- lib/Net/Server/Proto.pm.orig
+++ lib/Net/Server/Proto.pm
@@ -163,10 +163,7 @@ sub get_addr_info {
}
sub _bindv6only {
- my $class = shift;
- my $val = $class->_sysctl('net.ipv6.bindv6only'); # linux
- $val = $class->_sysctl('net.inet6.ip6.v6only') if ! length($val); # bsd
- return $val;
+ return '1'; # OpenBSD requires separate binds for v4 and v6.
}
sub _sysctl {

View file

@ -0,0 +1,26 @@
`Net::Server' is an extensible, generic Perl server engine.
`Net::Server' combines the good properties from `Net::Daemon' (0.34),
`NetServer::Generic' (1.03), and `Net::FTPServer' (1.0), and also from
various concepts in the Apache Webserver.
Features include:
* Single Server Mode
* Inetd Server Mode
* Preforking Simple Mode (PreForkSimple)
* Preforking Managed Mode (PreFork)
* Forking Mode
* Multi port accepts on Single, Preforking, and Forking modes
* Simultaneous accept/recv on tcp, udp, and unix sockets
* User customizable hooks
* Chroot ability after bind
* Change of user and group after bind
* Basic allow/deny access control
* Customized logging (choose Syslog, log_file, or STDERR)
* HUP able server (clean restarts via sig HUP)
* Dequeue ability in all Fork and PreFork modes.
* Taint clean
* Written in Perl
* Protection against buffer overflow
* Clean process flow
* Extensibility

View file

@ -0,0 +1,60 @@
bin/net-server
${P5SITE}/Net/
${P5SITE}/Net/Server/
${P5SITE}/Net/Server.pm
${P5SITE}/Net/Server.pod
${P5SITE}/Net/Server/Daemonize.pm
${P5SITE}/Net/Server/Fork.pm
${P5SITE}/Net/Server/HTTP.pm
${P5SITE}/Net/Server/INET.pm
${P5SITE}/Net/Server/Log/
${P5SITE}/Net/Server/Log/Log/
${P5SITE}/Net/Server/Log/Log/Log4perl.pm
${P5SITE}/Net/Server/Log/Sys/
${P5SITE}/Net/Server/Log/Sys/Syslog.pm
${P5SITE}/Net/Server/MultiType.pm
${P5SITE}/Net/Server/Multiplex.pm
${P5SITE}/Net/Server/PSGI.pm
${P5SITE}/Net/Server/PreFork.pm
${P5SITE}/Net/Server/PreForkSimple.pm
${P5SITE}/Net/Server/Proto/
${P5SITE}/Net/Server/Proto.pm
${P5SITE}/Net/Server/Proto/SSL.pm
${P5SITE}/Net/Server/Proto/SSLEAY.pm
${P5SITE}/Net/Server/Proto/TCP.pm
${P5SITE}/Net/Server/Proto/UDP.pm
${P5SITE}/Net/Server/Proto/UNIX.pm
${P5SITE}/Net/Server/Proto/UNIXDGRAM.pm
${P5SITE}/Net/Server/SIG.pm
${P5SITE}/Net/Server/Single.pm
${P5SITE}/Net/Server/Thread.pm
@man man/man1/net-server.1
@man man/man3p/Net::Server.3p
@man man/man3p/Net::Server::Daemonize.3p
@man man/man3p/Net::Server::Fork.3p
@man man/man3p/Net::Server::HTTP.3p
@man man/man3p/Net::Server::INET.3p
@man man/man3p/Net::Server::Log::Log::Log4perl.3p
@man man/man3p/Net::Server::Log::Sys::Syslog.3p
@man man/man3p/Net::Server::MultiType.3p
@man man/man3p/Net::Server::Multiplex.3p
@man man/man3p/Net::Server::PSGI.3p
@man man/man3p/Net::Server::PreFork.3p
@man man/man3p/Net::Server::PreForkSimple.3p
@man man/man3p/Net::Server::Proto.3p
@man man/man3p/Net::Server::Proto::SSL.3p
@man man/man3p/Net::Server::Proto::SSLEAY.3p
@man man/man3p/Net::Server::Proto::TCP.3p
@man man/man3p/Net::Server::Proto::UDP.3p
@man man/man3p/Net::Server::Proto::UNIX.3p
@man man/man3p/Net::Server::Proto::UNIXDGRAM.3p
@man man/man3p/Net::Server::SIG.3p
@man man/man3p/Net::Server::Single.3p
@man man/man3p/Net::Server::Thread.3p
share/examples/p5-Net-Server/
share/examples/p5-Net-Server/LoadTester.pl
share/examples/p5-Net-Server/connection_test.pl
share/examples/p5-Net-Server/httpd
share/examples/p5-Net-Server/samplechat.pl
share/examples/p5-Net-Server/sigtest.pl
share/examples/p5-Net-Server/udp_server.pl