2.009 Aug 09 2017
- Several long awaited fixes
- Log when a child exits abnormally. RT #86815
- Added delete-child hook
- Add cleanup_dead_child_hook to PreFork server
- Removed stray warn
- Use File::Temp instead of POSIX::tmpnam
- UNIX read_until to allow for SSL under unix sockets
---------------
2.008 May 12 2014
- Long awaited patch for the IO::Socket::SSL default verify mode bug
- Add Time::HiRes as a dep
- Update to new github hosted repository with all legacy code imported
- Beginnings of change to dzil based releases
- There are several dozen outstanding bugs that will be addressed in the next release
Do it for all packages that
* mention perl, or
* have a directory name starting with p5-*, or
* depend on a package starting with p5-
like last time, for 5.18, where this didn't lead to complaints.
Let me know if you have any this time.
2.006nb1 to 2.007.
Upstream changes:
2.007 Jan 09 2013
- Update run_dequeue to clear out signals after fork.
- Add serialize none for PreFork and PreForkSimple servers that
at not multi-port.
- Allow for auto-assigned port to be the same when hostname
resolves to multiple ips/ipvs (RT #78024)
- Fix bug in header parsing (RT #82125)
- Fix warning bug (RT #78828)
- Fix wrong wantarray context in Proto::TCP (RT #31437)
- Simplify _get_commandline to just use $0 - no fishing in proc
(RT #80260)
- Fix uninitialized begin (RT #78830)
- Fix misplaced +2 (RT #78827)
- Fix various spelling errors and pod nits (RT #77994)
- Allow for log calls from the MUX object (RT #78514)
- Give an error at begin time of SSLEAY if the need Fcntl function
is not available on this platform (RT #82542)
- Make all of the tests self cancel much earlier if there is an
error handling the request.
- Add a stronger timeout to PreFork tests - ideally we'd like to
find a real way to test these one windows (RT #811411, #81993) -
still broken - but shouldn't hang
- Superficial changes to help packagers not list Log4perl as
dependency (it is optional)
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package
Like last time, where this caused no complaints.
- Allow for case where host is *, and IO::Socket::INET6 is installed, but IPv6 doesn't really work.
- Add missing child_init_hook in Fork server (so Fork can be more parallel with PreFork in some respects)
- Change BOUND_SOCKETS passing to use ; as a separator rather than a \n
2.005 Jun 12 2012
NOTE: ipv now defaults to *
- Change the default of ipv from 4 to *. This means if a host of * (default), or a named host is used, any available IPv4 OR IPv6 address will be used.
- Allow for explicit close_client_stdout call
- Add dispatch methods and app setup to HTTP
- Allow for exec_fork_hook in HTTP
- Make sure errors in HTTP use correct logging mechanisms (and do not die un-needed)
- Fix 500 call in PSGI
- Fix send_header
2.004 Jun 08 2012
NOTE: Version 2.005 will change the default ipv value to * meaning it will attempt to bind IPv4 and IPv6 if they are available if you pass a hostname
- Add Net::Server::Proto->get_addr_info which can more reliably resolve domain information.
- Use that information to figure out an appropriate host to bind to for tests
- Make get_addr_info less reliant on magic values of sysctl net.ipv6.bindv6only
- Allow all tests to function in IPv6 only environments
- Fix broken number of tests in test suite
- Add warnings about changes to the default value of ipv coming in 2.005
2.003 Jun 06 2012
- Make the logging system pluggable
- Added net-server server executor for writing easier one line servers
- Sys::Syslog and Log::Log4perl are now moved out to their own module subsystems
- Added full apache style HTTP log formatting for the HTTP server
- Allow for ipv to be specified as part of host, or proto, or passed via $ENV{'IPV'}
- Add apache style access logging (access_log_file and access_log_format) to HTTP
- Allow HTTP header parsing to not untaint the headers (thanks Miko O'Sullivan)
- Fix missing legacy NS_unix_path call (missing since 2.000)
- Fix a bug in MultiType that prevented calling server_type HTTP
PR 46515 by Francois Tigeot.
2.002 May 31 2012
- Make HTTP output header parsing more consistent - and catch more errors
- Add exec_cgi and exec_trusted_perl methods to HTTP
- Add bugfix for ipv=>"*" combined with UNIX sockets. (Mark Martinec)
- Fix the SSL_test.t to use exit rather than quit so the parent departs
2.001 May 30 2012
- Bug fix wrong usage of File::Temp::tempfile.
- Fix HTTP_COOKIES to be HTTP_COOKIE
- Handle multiple header values better in HTTP
- Add Log::Log4perl logging courtesy of TONVOON@cpan
2.000 May 30 2012
- Sorry for the amazingly long delay. This release represents change to much of the code base. Future patch submissions should be more promptly handled
- Bring Net::Server::Proto::SSL back. It is now fully functional under all scenarios, including IPv4 and IPv6
- Change Proto interface to allow passing more information. This represents an internal API change.
- Updates to the HUP mechanisms to make sure we rebind all types of ports correctly.
- Add IPv6 integration via ::1 style addresses as well as the ipv configuration parameter (Mark Martinec)
- Added graceful shutdown (Tatsuhiko Miyagawa)
- Added hot deploy via TTIN and TTOU (Tatsuhiko Miyagawa)
- Internal code retidying
- Finish out support for connecting to ports by service name
- Don't loose track of fork and prefork children on a hup - make sure to actively wait them off
- Correct accept to take a classname, and optionally be called in array context
- Cleanup numerous configuration issues.
- Added sig_passthrough option to Fork, PreFork, and PreForkSimple servers allowing for arbitrary signals to propagate to children
- Add syswrite/sysread support to SSLEAY (Sergey Zasenko).
- Add PSGI module.
- Many small accumulated bugfixes.
to trigger/signal a rebuild for the transition 5.10.1 -> 5.12.1.
The list of packages is computed by finding all packages which end
up having either of PERL5_USE_PACKLIST, BUILDLINK_API_DEPENDS.perl,
or PERL5_PACKLIST defined in their make setup (tested via
"make show-vars VARNAMES=..."), minus the packages updated after
the perl package update.
sno@ was right after all, obache@ kindly asked and he@ led the
way. Thanks!
Upstream changes:
0.99 July 13 2010
- Add customizable check_for_spawn and min_child_ttl settings in PreFork (Graham Barr)
- Add other_child_died_hook (Daniel Kahn Gillmor)
- Make Multiplex do $mux->add($sock) for UDP sockets (Kristoffer Møllerhøj)
- Change Net::Server::Daemonize to use kill 0 rather than the unportable `ps`
- Fix calling conventions of MultiType
- Avoid select in SSLEAY that was allowing for infinite spin loop
- Fix tie_stdout mode to not warn about unopen handles.
- Added Net::Server::HTTP base class for basic HTTP daemon handling.
- Change examples/httpd to use Net::Server::HTTP
0.98 May 05 2010
- Add SSLeay proto - finally a workable SSL solution.
- Add minimal Net::Server::TiedHandle to allow for STDIN and STDOUT to work with SSLEAY
- Net::Server::TiedHandle also support tied_stdin_callback and tied_stdout_callback
Feb 08 2008
- Allow for port => 0 which lets the OS auto assign a port on some OSes (Blackie Hlasek)
- Add idle_loop_hook to PreForkSimple and PreFork (David Zuhn)
- Add consistent formatting capabilities to the log method (whethere Syslog is used or not) (David Zuhn)
- Warn when default listen value is used - try to make it a sensible default (Mark Martinec)
- Allow for non-zero exit value - particularly when called from fatal (David Schweikert)
to trigger/signal a rebuild for the transition 5.8.8 -> 5.10.0.
The list of packages is computed by finding all packages which end
up having either of PERL5_USE_PACKLIST, BUILDLINK_API_DEPENDS.perl,
or PERL5_PACKLIST defined in their make setup (tested via
"make show-vars VARNAMES=...").
- Allow for better handling of setlogsock depending upon the version of Sys::Syslog installed (David Schweikert)
- Update examples with minimal pod and working synopses
- Added post_client_connection_hook (Mihail Nasedkin)
0.96 Mar 23 2007
- Allow for conf_file to be specified in the default_values.
- Add perldoc for why we use a template in options.
- Fix syslog log options regex again (Carlos Velasco)
- Fix ->autoflush (needs FileHandle) (Paul Miller)
- Add handle_syslog_error to allow catching errors during syslog writes (Patrik Wallstrom)
- Add open_syslog to slightly abstract opening of syslog.
- Add numerous patches from Rob Mueller to cleanup child accounting in PreFork server.
0.95 Feb 02 2007
- Warn clean on the chld hanlder in PreFork. (Michael Virnstein)
- Allow lock_file for lock serialization to only be opened once (Rob Mueller)
- Add additional log messages during failure in accept (Mark Martinec)
- Fix double decrement bug in PreFork.pm (Bill Nesbitt, Carlos Velasco)
- Fix precedence bug with non-parened open (John W. Krahn)
- Check setuid better after POSIX setuid (Ricardo Signes)
- Update Syslog options parsing (Carlos Velasco)
- Allow no_client_stdout to work with Multiplex (Steven Lembark)
- Allow Sys::SysLog keyworks be passed through the ->log method (Peter Beckman)
- Allow more characters through in syslog_ident (Peter Beckman)
- Fix Fork server bug which had post_accept_hook called twice (Curtis Wilbar)
- Added pre_fork_hook to Fork server to handle removed duplicate post_accept_hook call.
- Reopen STDIN/STDOUT to /dev/null at end of child connection to avoid spurious warnings (Rob Mueller)
- Don't process STDIN/STDOUT in post_accept if udp_true (Rob Mueller)
- Cleanup child processing code in PreFork server (Rob Mueller)
- Try and let tests fail gracefully if localhost is not setup properly (Peter Beckman)
- Add numerous tests for configuration passing.
- Add perldoc about adding your own custom options.
0.94 Jul 08 2006
- Add nofatal to Sys::Syslog::openlog if Sys::Syslog
version >= 0.15 (thanks to DSCHWEI on cpan)
- Added the leave_children_open_on_hup flag which leaves
open connections open when the server
is hupped. It is false by default.
- Make sure new and run can both take a hash or a hashref of values.
- More fixes to HUP under taint (thanks to LUPE on cpan)
- Allow for port, host, and proto to be passed as arrayrefs to run and new.
- Fix bug in a check for dead child processes algorithm in
PreFork server (thanks to Michael Virnstein).
0.93 Mar 23 2006
- Allow for get sock info routines to use $peer->{client} rather than STDIN
which may not be set if the "no_client_stdout" flag is set. (thanks to
Mark Martinec for pointing this out)
0.92 Mar 13 2006
- Allow for duplicated STDIN and STDOUT to properly close.
Previously they closed because they were simple symbol globs.
Now they need an explicit close be cause they are opened to
the client socket's file descriptors.
- Add flag to disable all of the binding of client to STDIN and STDOUT
0.91 Mar 08 2006
- Abstract shutdown_sockets method that is called at the end
of server_close (to allow for calling in other places).
- Make sure close_children unsets the overridden signals in
the forked and preforked servers.
- Better handling of STDIN and STDOUT as provided by tye on
perlmonks in response to Ben Cohen's question (in node
http://www.perlmonks.org/?node_id=534791)
- Finally added a new method.
- Added much missing perldoc.
- Pass parameters to ->run the second time it is called. This
allows for multitype to handle more parameters - but needs
to be tested for all use cases (it could result in array fields
getting multiple entries which should be fine in most cases).
Thanks to Aron Ujvari for pointing this out.
- Add default_values method (suggested by Malte S. Stretz).
- Fix udp_broadcast issue (fix by Rob Mueller)
0.90 Dec 05 2005
- Make HUP work correctly on Multiplex server.
- Allow socket files to cleanup correctly.
- Allow Net::Server::Daemonize to function properly in Taint
mode again (broken in .88).
- Add ->commandline method to allow for getting and setting
the commandline for use during a HUP. This is to allow for
untainting as necessary.
- Add ->can_read_hook (see the documentation) to allow for
processing of arbitrary handles in accept_multi_port.
0.89 Nov 22 2005
- Added SSL_passwd_cb to Proto/SSL.pm (Irving A. Bermudez S.)
- Fix rt #13450 which is caused by broken POSIX::setuid on
perl 5.8.0 on RedHat 9.0.
- Allow for graceful skipping if a port is configured twice in
the configuration file.
- Allow tests that can pass to pass on Win32 (skip those that cannot)
- Allow "-" in user names. (Carl Lewis)
- Add Reuse = 1 to Proto::UDP. (Slaven Rezic)
- Allow for udp_broadcast setting in Proto::UDP. (Tim Watt)
- Add bug note to Proto::SSL (Christopher A Bongaarts)
- setsid property is now boolean rather than checking definedness.
- Command line parameters override conf file parameters.
- Store command line a little better in preparation for HUP.
developer is officially maintaining the package.
The rationale for changing this from "tech-pkg" to "pkgsrc-users" is
that it implies that any user can try to maintain the package (by
submitting patches to the mailing list). Since the folks most likely
to care about the package are the folks that want to use it or are
already using it, this would leverage the energy of users who aren't
developers.
0.88 Jun 21 2005
- Change maintainer back to paul@seamons.com (Paul Seamons)
- Add run_n_children_hook to prefork servers (At suggestion of
James Fitzgibbon and Paul B. Henson)
- Make delete child only delete children it knows about.
Fixes ancient bug http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=168784
filed by Christian Mock and worked on by Lucas Filipozzi.
- Store $ENV{PWD} as part of script name for HUP'ing (Russel Pettway)
- Allow PreFork and PreForkSimple to have child mark
explicitly as done the same as other server types via
the ->done(1) call. (Idea from Marc Martinec)
- After numerous requests, the CHLD SIGNAL is now
set to DEFAULT in the child process of PreFork and
PreForkSimple servers. This should allow grand child processes to
run without affecting the child process (or parent).
- Fix parent/child communication channel buffering issue (Matt Sergeant)
- Check for child's sock before closing with
child_communication enabled (Alexander Hlawenka)
- Documentation fix (Mark Morgan)
- Allow 'stream' option for syslog_logsock property (Daniel Matuschek)
- Fix syslog format vulnerability. (Carlos Velasco) This has
potential to break some log implementations that were
planning on ->log passing all of @_ to syslog. Now only the
first item from @_ is passed as the message.
- Allow for '-' in group names. (Corey Minyard)
- Prevent locking caused by interupt of flock (Dietmar Maurer [cpan #11693])
- Finally fix UID/GID bugs during daemonization. This is the
biggest bug winner. The new model Calls POSIX::setuid and
setgid and tests for success by checking the values of $<
and $( and not by checking the response of the setuid/setgid functions.
- Add CIDR style lookups for allow/deny using cidr_allow and
cidr_deny (Carsten Wolff)
- Allow for port configured in perl to not have to be arrayref.
module directory has changed (eg. "darwin-2level" vs.
"darwin-thread-multi-2level").
binary packages of perl modules need to be distinguishable between
being built against threaded perl and unthreaded perl, so bump the
PKGREVISION of all perl module packages and introduce
BUILDLINK_RECOMMENDED for perl as perl>=5.8.5nb5 so the correct
dependencies are registered and the binary packages are distinct.
addresses PR pkg/28619 from H. Todd Fujinaka.
changes since 0.85:
- Changed maintainer to bbb@cpan.org (Rob Brown).
- Patch to fix Net::Server::Daemonize setuid bug:
http://www.ijs.si/software/amavisd/net-server.patch
- Add a fix in the argument handling of configure
to account for some alpha systems (James Vasak)
- For RedHat 8.0 perl.req, avoid demanding that
perl(IO::Muliplex) and perl(IO::Socket::SSL)
rpms are installed just to use Net::Server.
Patch provided by Peter Reich <pr@alles.prima.de> via PR pkg/22542.
Changes:
0.85 Sep 24 09:51 2002 - 0.85 Mar 06 18:00 2003
- Lower timeouts during tests (Anil Madhavapeddy)
- Add configure_hook to MultiType (Michael Alan Dorman)
- More graceful exit of children in PreForkSimple (Helge Kraenz)
- Correct test for POSIX::setuid(0) success (Peter Chen)
- Allow DOS filenames for conf files (Mark M. Adkins)
- Allow for ndelay on Sys::Syslog::openlog (Doug Perham)
- Add documentation about run_dequeue.
- Add run_dequeue feature to Multiplex personality.