stderr
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 139
htsserver 0.5.9
htsserver project consists of a server application of the multiplayer trading game Holsham Traders more>>
htsserver project consists of a server application of the multiplayer trading game Holsham Traders
htsserver is the server application for Holsham Traders, a realtime multiplayer trading game. In the game, you are a merchant on a distant planet trying to make as much money as possible by buying and selling goods.
htsserver is the name of the server. You also need a client to play the game.
Enhancements:
- We use autoconf 2.49c and the latest CVS automake now.
- htsserver now requires Glib 1.3.2 or better.
- Rewrite of the networking code, the logging code, configfile support, the string parsing routine and much more.
- We use htsprotocol 0.4.6 now. There were several changes in the protocol. See docs/PROTOCOL for details.
- login_timeout and autosave_delay can now be turned off.
- Removed the defaultgame option and the commandline options --gamename and --creategame.
- Added the commandline options --configfile, --logfile, --datadir and --savegamesdir.
- Lots of documentation updates. Added the manpage htsserver.conf(5).
- More verbosive and more descriptive error reports.
- Removed some arbitrary limits, e.g. the length of the logging-messages is not limited anymore.
- Removed the commandline options --daemonize and --stderr-device.
- You cannot log to stderr anymore. htsserver always runs as daemon, now.
- Removed savegame support. This will be re-implemented. Savegame files will either be ASCII files or XML files.
- Added configure options --with-configfile=FILE, --with-logfile=FILE, --with-datadir=DIR and --with-savegamesdir=DIR to make the game more relocatable.
- htsserver is FHS compliant, now.
- Fixed several format string vulnerabilities.
- Lots and lots of internal improvements and of course the usual bugfixes.
<<lesshtsserver is the server application for Holsham Traders, a realtime multiplayer trading game. In the game, you are a merchant on a distant planet trying to make as much money as possible by buying and selling goods.
htsserver is the name of the server. You also need a client to play the game.
Enhancements:
- We use autoconf 2.49c and the latest CVS automake now.
- htsserver now requires Glib 1.3.2 or better.
- Rewrite of the networking code, the logging code, configfile support, the string parsing routine and much more.
- We use htsprotocol 0.4.6 now. There were several changes in the protocol. See docs/PROTOCOL for details.
- login_timeout and autosave_delay can now be turned off.
- Removed the defaultgame option and the commandline options --gamename and --creategame.
- Added the commandline options --configfile, --logfile, --datadir and --savegamesdir.
- Lots of documentation updates. Added the manpage htsserver.conf(5).
- More verbosive and more descriptive error reports.
- Removed some arbitrary limits, e.g. the length of the logging-messages is not limited anymore.
- Removed the commandline options --daemonize and --stderr-device.
- You cannot log to stderr anymore. htsserver always runs as daemon, now.
- Removed savegame support. This will be re-implemented. Savegame files will either be ASCII files or XML files.
- Added configure options --with-configfile=FILE, --with-logfile=FILE, --with-datadir=DIR and --with-savegamesdir=DIR to make the game more relocatable.
- htsserver is FHS compliant, now.
- Fixed several format string vulnerabilities.
- Lots and lots of internal improvements and of course the usual bugfixes.
Download (0.14MB)
Added: 2007-01-10 License: GPL (GNU General Public License) Price:
1018 downloads
PAM_Extern 0.3
PAM_Extern is a PAM module that hands the username and password to an external application or shellscript for further handling. more>>
PAM_Extern is a PAM module that hands the username and password to an external application or shellscript for further handling.
The theory is that while a lot of people might be able to create authentication schemes, few are are able to do so using C and the PAM library.
Installation:
make
make install
Enhancements:
- The password is now passed on stdin instead of an environment variable to prevent it from showing up in "ps auxe".
- Every "malloc" call is now checked for success.
- Debug output is now realized with PAMs D macro instead of fprintf(stderr) and _pam_overwrite and _pam_drop are used instead of free().
<<lessThe theory is that while a lot of people might be able to create authentication schemes, few are are able to do so using C and the PAM library.
Installation:
make
make install
Enhancements:
- The password is now passed on stdin instead of an environment variable to prevent it from showing up in "ps auxe".
- Every "malloc" call is now checked for success.
- Debug output is now realized with PAMs D macro instead of fprintf(stderr) and _pam_overwrite and _pam_drop are used instead of free().
Download (0.009MB)
Added: 2007-01-16 License: GPL (GNU General Public License) Price:
1011 downloads
JACK Meter 0.3
Jack Meter is a basic console based DPM (Digital Peak Meter) for JACK. more>>
Jack Meter is a basic console based DPM (Digital Peak Meter) for JACK. I wrote it for quickly checking remote signal levels, without having to run X11 to use a pretty graphical meter such as meterbridge.
Usage
Usage jack_meter [-f freqency] [-r ref-level] [-w width] [-n] [< port >, ...]
where -f is how often to update the meter per second (8)
-r is the reference signal level for 0dB on the meter
-w is how wide to make the meter (79)
-n changes mode to output meter level as number in decibels
< port > the ports to monitor (multiple ports are mixed)
Enhancements:
- uses new JACK API (and hence requires JACK version 0.100.0)
- connects multiple ports on the command line
- informational messages are new sent to STDERR
- added -n option to output level as number in decibels
<<lessUsage
Usage jack_meter [-f freqency] [-r ref-level] [-w width] [-n] [< port >, ...]
where -f is how often to update the meter per second (8)
-r is the reference signal level for 0dB on the meter
-w is how wide to make the meter (79)
-n changes mode to output meter level as number in decibels
< port > the ports to monitor (multiple ports are mixed)
Enhancements:
- uses new JACK API (and hence requires JACK version 0.100.0)
- connects multiple ports on the command line
- informational messages are new sent to STDERR
- added -n option to output level as number in decibels
Download (0.14MB)
Added: 2005-09-16 License: GPL (GNU General Public License) Price:
1505 downloads
Test::More 0.70
Test::More is yet another framework for writing test scripts. more>>
Test::More is yet another framework for writing test scripts.
SYNOPSIS
use Test::More tests => 23;
# or
use Test::More qw(no_plan);
# or
use Test::More skip_all => $reason;
BEGIN { use_ok( Some::Module ); }
require_ok( Some::Module );
# Various ways to say "ok"
ok($got eq $expected, $test_name);
is ($got, $exptected, $test_name);
isnt($got, $expected, $test_name);
# Rather than print STDERR "# heres what went wrongn"
diag("heres what went wrong");
like ($got, qr/expected/, $test_name);
unlike($got, qr/expected/, $test_name);
cmp_ok($got, ==, $expected, $test_name);
is_deeply($got_complex_structure, $expected_complex_structure, $test_name);
SKIP: {
skip $why, $how_many unless $have_some_feature;
ok( foo(), $test_name );
is( foo(42), 23, $test_name );
};
TODO: {
local $TODO = $why;
ok( foo(), $test_name );
is( foo(42), 23, $test_name );
};
can_ok($module, @methods);
isa_ok($object, $class);
pass($test_name);
fail($test_name);
BAIL_OUT($why);
# UNIMPLEMENTED!!!
my @status = Test::More::status;
STOP! If youre just getting started writing tests, have a look at Test::Simple first. This is a drop in replacement for Test::Simple which you can switch to once you get the hang of basic testing.
The purpose of this module is to provide a wide range of testing utilities. Various ways to say "ok" with better diagnostics, facilities to skip tests, test future features and compare complicated data structures. While you can do almost anything with a simple ok() function, it doesnt provide good diagnostic output.
<<lessSYNOPSIS
use Test::More tests => 23;
# or
use Test::More qw(no_plan);
# or
use Test::More skip_all => $reason;
BEGIN { use_ok( Some::Module ); }
require_ok( Some::Module );
# Various ways to say "ok"
ok($got eq $expected, $test_name);
is ($got, $exptected, $test_name);
isnt($got, $expected, $test_name);
# Rather than print STDERR "# heres what went wrongn"
diag("heres what went wrong");
like ($got, qr/expected/, $test_name);
unlike($got, qr/expected/, $test_name);
cmp_ok($got, ==, $expected, $test_name);
is_deeply($got_complex_structure, $expected_complex_structure, $test_name);
SKIP: {
skip $why, $how_many unless $have_some_feature;
ok( foo(), $test_name );
is( foo(42), 23, $test_name );
};
TODO: {
local $TODO = $why;
ok( foo(), $test_name );
is( foo(42), 23, $test_name );
};
can_ok($module, @methods);
isa_ok($object, $class);
pass($test_name);
fail($test_name);
BAIL_OUT($why);
# UNIMPLEMENTED!!!
my @status = Test::More::status;
STOP! If youre just getting started writing tests, have a look at Test::Simple first. This is a drop in replacement for Test::Simple which you can switch to once you get the hang of basic testing.
The purpose of this module is to provide a wide range of testing utilities. Various ways to say "ok" with better diagnostics, facilities to skip tests, test future features and compare complicated data structures. While you can do almost anything with a simple ok() function, it doesnt provide good diagnostic output.
Download (0.076MB)
Added: 2007-05-04 License: Perl Artistic License Price:
540 downloads
Safe::World 0.14
Safe::World can create multiple virtual instances of a Perl interpreter that can be assembled together. more>>
Safe::World can create multiple virtual instances of a Perl interpreter that can be assembled together.
SYNOPSIS
See USE section for complexer example and the test.pl script.
use Safe::World ;
my $world = Safe::World->new(
stdout => $stdout , ## - redirect STDOUT to this scalar.
stderr => $stderr , ## - redirect STDERR to this scalar.
flush => 1 , ## - output is flushed, soo dont need to wait exit to
## have all the data inside $stdout.
) ;
## Evaluate some code:
$world->eval(q`
use Data::Dumper ;
print Dumper( {a => 1 , b => 2} ) ;
`);
$world->close ; ## ensure that everything is finished and flushed.
die($stderr) if $stderr ;
print $stdout ;
$world = undef ; ## Destroy the world. Here the compartment is cleanned.
Note that in this example, inside the World is loaded Data::Dumper, but Data::Dumper was loaded only inside of it, keeping the outside normal.
<<lessSYNOPSIS
See USE section for complexer example and the test.pl script.
use Safe::World ;
my $world = Safe::World->new(
stdout => $stdout , ## - redirect STDOUT to this scalar.
stderr => $stderr , ## - redirect STDERR to this scalar.
flush => 1 , ## - output is flushed, soo dont need to wait exit to
## have all the data inside $stdout.
) ;
## Evaluate some code:
$world->eval(q`
use Data::Dumper ;
print Dumper( {a => 1 , b => 2} ) ;
`);
$world->close ; ## ensure that everything is finished and flushed.
die($stderr) if $stderr ;
print $stdout ;
$world = undef ; ## Destroy the world. Here the compartment is cleanned.
Note that in this example, inside the World is loaded Data::Dumper, but Data::Dumper was loaded only inside of it, keeping the outside normal.
Download (0.034MB)
Added: 2007-08-15 License: Perl Artistic License Price:
802 downloads
Podcast::Publisher 0.50
Podcast::Publisher is a Perl module for creating and managing podcasts. more>>
Podcast::Publisher is a Perl module for creating and managing podcasts.
SYNOPSIS
use Podcast::Publisher;
my $podcast = Podcast::Publisher->new;
$podcast->set_logger( sub { my $msg = shift; print $msg; } );
$podcast->set_error_logger( sub { my $msg = shift; print STDERR $msg; } );
my $xml = "./podcast.xml";
$podcast->set_file( $xml );
$podcast->set_remote_root( "http://localhost.localdomain/podcast/publishing/" );
$podcast->set_db_connection( { driver => "mysql",
username => foo,
password => bar,
host => localhost,
database => podcast } );
# If we change podcast information, synchronize this information in the MP3 file itself
$podcast->set_synchronize( 1 );
$podcast->set_metadata( { title => "Chris Podcast",
description => "All About Chris",
"docs" => "http://localhost",
"editor" => "podcastmanager@localhost",
"webmaster" => "podcastmanager@localhost",
} );
# This adds an item to the database, and synchronizes the
# MP3 Tag information in the file with the database
$podcast->add_new_episode( { title => Some title,
author => Chris of course
category => Jazz
description => First in a series of many
mp3 => /home/foobar/mp3s/episode1.mp3 } );
$podcast->set_upload_settings( { host => localhost.localdomain,
username => someuser,
password => somepass,
path => podcast/publishing/,
remote_root => http://localhost.localdomain/podcast/publishing/ } );
$podcast->upload();
<<lessSYNOPSIS
use Podcast::Publisher;
my $podcast = Podcast::Publisher->new;
$podcast->set_logger( sub { my $msg = shift; print $msg; } );
$podcast->set_error_logger( sub { my $msg = shift; print STDERR $msg; } );
my $xml = "./podcast.xml";
$podcast->set_file( $xml );
$podcast->set_remote_root( "http://localhost.localdomain/podcast/publishing/" );
$podcast->set_db_connection( { driver => "mysql",
username => foo,
password => bar,
host => localhost,
database => podcast } );
# If we change podcast information, synchronize this information in the MP3 file itself
$podcast->set_synchronize( 1 );
$podcast->set_metadata( { title => "Chris Podcast",
description => "All About Chris",
"docs" => "http://localhost",
"editor" => "podcastmanager@localhost",
"webmaster" => "podcastmanager@localhost",
} );
# This adds an item to the database, and synchronizes the
# MP3 Tag information in the file with the database
$podcast->add_new_episode( { title => Some title,
author => Chris of course
category => Jazz
description => First in a series of many
mp3 => /home/foobar/mp3s/episode1.mp3 } );
$podcast->set_upload_settings( { host => localhost.localdomain,
username => someuser,
password => somepass,
path => podcast/publishing/,
remote_root => http://localhost.localdomain/podcast/publishing/ } );
$podcast->upload();
Download (0.012MB)
Added: 2006-11-09 License: GPL (GNU General Public License) Price:
1081 downloads
TrouSerS 0.2.9.1
TrouSerS is a Trusted Computing Group Software Stack (TCG TSS) implementation. more>>
TrouSerS is a Trusted Computing Group Software Stack in short TCG TSS implementation.
TrouSerS complies with the TCG Software Stack Specification Version 1.1.
Enhancements:
- Set stdout to be unbuffered when debug is on so that stderr and stdout are interleaved correctly.
- Fixed bugs in PcrExtend: 3 fields of the PCR event struct
- were not being set by trousers before sending the event to
- the TCS.
- Added error returns when setting attributes of an already
- created TPM key object.
- bugfix: spi_tpm.c, removed refs to the ID keys migration
- policy in CollateIdentityRequest.
- bugfix: clntside.c, line 175: sd is not always >= 0
- bugfix: spi_tpm.c, line 1951: uninitialized pubBlob
- bugfix: spi_tpm.c, line 2541: passing NULL to argument 2 of memcpy
- bugfix: tcspbg.c, line 1847: leaving function internal_TCSGetCap with a pointer to freed memory
- bugfix: tcskcm.c, line 939: uninitialized pubKey.key
- bugfix: biosem.c, line 210: uninitialized bytes_read
<<lessTrouSerS complies with the TCG Software Stack Specification Version 1.1.
Enhancements:
- Set stdout to be unbuffered when debug is on so that stderr and stdout are interleaved correctly.
- Fixed bugs in PcrExtend: 3 fields of the PCR event struct
- were not being set by trousers before sending the event to
- the TCS.
- Added error returns when setting attributes of an already
- created TPM key object.
- bugfix: spi_tpm.c, removed refs to the ID keys migration
- policy in CollateIdentityRequest.
- bugfix: clntside.c, line 175: sd is not always >= 0
- bugfix: spi_tpm.c, line 1951: uninitialized pubBlob
- bugfix: spi_tpm.c, line 2541: passing NULL to argument 2 of memcpy
- bugfix: tcspbg.c, line 1847: leaving function internal_TCSGetCap with a pointer to freed memory
- bugfix: tcskcm.c, line 939: uninitialized pubKey.key
- bugfix: biosem.c, line 210: uninitialized bytes_read
Download (1.3MB)
Added: 2007-07-20 License: Common Public License Price:
828 downloads
Test::Trap 0.0.23
Test::Trap is a Perl module with trap exit codes, exceptions, output, etc. more>>
Test::Trap is a Perl module with trap exit codes, exceptions, output, etc.
SYNOPSIS
use Test::More;
use Test::Trap qw( trap $trap );
my @r = trap { some_code(@some_parameters) };
is ( $trap->exit, 1, Expecting &some_code to exit with 1 );
is ( $trap->stdout, , Expecting no STDOUT );
like ( $trap->stderr, qr/^Bad parameters; exitingb/, Expecting warnings. );
Primarily (but not exclusively) for use in test scripts: A block eval on steroids, configurable and extensible, but by default trapping (Perl) STDOUT, STDERR, warnings, exceptions, would-be exit codes, and return values from boxed blocks of test code.
The values collected by the latest trap can then be queried or tested through a a special result object.
EXPORT
A function and a scalar may be exported by any name. The function (by default named trap) is an analogue to block eval(), and the scalar (by default named $trap) is the corresponding analogue to $@.
Optionally, you may specify the default layers for the exported trap. Layers may be specified by name, with a colon sigil. Multiple layers may be given in a list, or just stringed together like :flow:stderr:warn.
(For the advanced user, you may also specify anonymous layer implementations -- i.e. an appropriate subroutine.)
See below for a list of the built-in layers, all of which are enabled by default. Note, finally, that the ordering of the layers matter: The :raw layer is always on the bottom (anything underneath it is ignored), and any other "flow control" layers used should be right down there with it.
FUNCTION
trap BLOCK
This function may be exported by any name, but defaults to trap.
Traps exceptions like block eval, but (by default) also traps exits and exit codes, returns and return values, context, and (Perl) STDOUT, STDERR, and warnings, All information trapped can be queried by way of the status object, which is by default exported as $trap, but can be exported by any name.
<<lessSYNOPSIS
use Test::More;
use Test::Trap qw( trap $trap );
my @r = trap { some_code(@some_parameters) };
is ( $trap->exit, 1, Expecting &some_code to exit with 1 );
is ( $trap->stdout, , Expecting no STDOUT );
like ( $trap->stderr, qr/^Bad parameters; exitingb/, Expecting warnings. );
Primarily (but not exclusively) for use in test scripts: A block eval on steroids, configurable and extensible, but by default trapping (Perl) STDOUT, STDERR, warnings, exceptions, would-be exit codes, and return values from boxed blocks of test code.
The values collected by the latest trap can then be queried or tested through a a special result object.
EXPORT
A function and a scalar may be exported by any name. The function (by default named trap) is an analogue to block eval(), and the scalar (by default named $trap) is the corresponding analogue to $@.
Optionally, you may specify the default layers for the exported trap. Layers may be specified by name, with a colon sigil. Multiple layers may be given in a list, or just stringed together like :flow:stderr:warn.
(For the advanced user, you may also specify anonymous layer implementations -- i.e. an appropriate subroutine.)
See below for a list of the built-in layers, all of which are enabled by default. Note, finally, that the ordering of the layers matter: The :raw layer is always on the bottom (anything underneath it is ignored), and any other "flow control" layers used should be right down there with it.
FUNCTION
trap BLOCK
This function may be exported by any name, but defaults to trap.
Traps exceptions like block eval, but (by default) also traps exits and exit codes, returns and return values, context, and (Perl) STDOUT, STDERR, and warnings, All information trapped can be queried by way of the status object, which is by default exported as $trap, but can be exported by any name.
Download (0.028MB)
Added: 2007-08-06 License: Perl Artistic License Price:
810 downloads
Amigadepacker 0.02
Amigadepacker uncompresses various compression formats used on AmigaOS. more>>
Amigadepacker uncompresses various compression formats used on AmigaOS.
The supported formats are PowerPacker, XPK SQSH, and MMCMP. Amigadepacker can also decrypt PowerPacker encrypted data files.
Usage: amigadepacker [-c] [-h] [-p] [-v] FILE ...
-c Unpack to stdout.
-h Print this.
-p Do not depack anything, just pretend to. Useful for searching packed
files. Names of packed files will be printed to stderr. Pretend mode
always returns success if arguments are valid.
-v Print version information.
Example 1: Depack file:
amigadepacker foo
Example 2: Depack file from stdin to stdout:
amigadepacker -c < foo > outfile
Enhancements:
- StoneCracker 4.04 format support was added, and decompressing a file through stdin was fixed.
<<lessThe supported formats are PowerPacker, XPK SQSH, and MMCMP. Amigadepacker can also decrypt PowerPacker encrypted data files.
Usage: amigadepacker [-c] [-h] [-p] [-v] FILE ...
-c Unpack to stdout.
-h Print this.
-p Do not depack anything, just pretend to. Useful for searching packed
files. Names of packed files will be printed to stderr. Pretend mode
always returns success if arguments are valid.
-v Print version information.
Example 1: Depack file:
amigadepacker foo
Example 2: Depack file from stdin to stdout:
amigadepacker -c < foo > outfile
Enhancements:
- StoneCracker 4.04 format support was added, and decompressing a file through stdin was fixed.
Download (0.16MB)
Added: 2006-01-10 License: GPL (GNU General Public License) Price:
1384 downloads
Net::Server::POP3proxy 0.1
Net::Server::POP3proxy is a Perl module with POP3 Proxy class for working with virus scanners and anti-spam software. more>>
Net::Server::POP3proxy is a Perl module with POP3 Proxy class for working with virus scanners and anti-spam software.
SYNOPSIS
use Net::Server::POP3proxy;
# Constructors
$popproxy = new Net::Server::POP3proxy(
Action => sub { filterAction ($_[0]); },
Error => sub { die ($_[0]); },
Debug => sub { print STDERR ($_[0]); }
) or die ("Cannot init POP3 proxy server");
while ($popproxy->looper()) {
# noop
}
This module implements a POP3 proxy server to enable you to call user defined actions uppon fetching a mail from the POP3 Server.
The destination server is taken from the username, the client connects to the pop3 proxy in the way remoteuser%remote.host:port.
Multiple clients can connect to the POP proxy at a time.
<<lessSYNOPSIS
use Net::Server::POP3proxy;
# Constructors
$popproxy = new Net::Server::POP3proxy(
Action => sub { filterAction ($_[0]); },
Error => sub { die ($_[0]); },
Debug => sub { print STDERR ($_[0]); }
) or die ("Cannot init POP3 proxy server");
while ($popproxy->looper()) {
# noop
}
This module implements a POP3 proxy server to enable you to call user defined actions uppon fetching a mail from the POP3 Server.
The destination server is taken from the username, the client connects to the pop3 proxy in the way remoteuser%remote.host:port.
Multiple clients can connect to the POP proxy at a time.
Download (0.007MB)
Added: 2007-01-10 License: Perl Artistic License Price:
1022 downloads
shrewd 0.4
shrewd is a lightweight and simple Internet Gopher server. more>>
shrewd is a lightweight and simple Internet Gopher server.
The project supports IPv4/IPv6 and runs on Unix-like systems (Developed on OpenBSD/i386, tested on NetBSD, FreeBSD and Linux on i386).
The options are as follows:
-c Specify a custom configuration file location (default is
/etc/shrewd.conf).
-f Dont detach from the controlling terminal. Syslog messages are
copied to stderr.
CONFIGURATION
The shrewd configuration file has the syntax of "keyword value". You may specify one keyword/value-pair per line. Lines beginning with a # are comments. Possible keywords are:
accesslog_file
File name to use for the access log. If not specified,
no accesslog will be written.
chroot Chroot to the specified directory. Should be an abso-
lute path. If not specified, dont chroot. You proba-
bly need to have /etc/resolv.conf and /etc/hosts in
the chroot for clients to work properly.
document_root
The document root directory. Must be specified.
port An alternate port. Can be a numeric port or a service
name (listed in /etc/services). If not specified, the
default gopher port will be used.
user The name of the user to setuid() to. GID will be set
to this users gid. If not specified, run as the user
who invoked the daemon.
Enhancements:
- Small feature enhancements, bugfixes, and cleanup.
<<lessThe project supports IPv4/IPv6 and runs on Unix-like systems (Developed on OpenBSD/i386, tested on NetBSD, FreeBSD and Linux on i386).
The options are as follows:
-c Specify a custom configuration file location (default is
/etc/shrewd.conf).
-f Dont detach from the controlling terminal. Syslog messages are
copied to stderr.
CONFIGURATION
The shrewd configuration file has the syntax of "keyword value". You may specify one keyword/value-pair per line. Lines beginning with a # are comments. Possible keywords are:
accesslog_file
File name to use for the access log. If not specified,
no accesslog will be written.
chroot Chroot to the specified directory. Should be an abso-
lute path. If not specified, dont chroot. You proba-
bly need to have /etc/resolv.conf and /etc/hosts in
the chroot for clients to work properly.
document_root
The document root directory. Must be specified.
port An alternate port. Can be a numeric port or a service
name (listed in /etc/services). If not specified, the
default gopher port will be used.
user The name of the user to setuid() to. GID will be set
to this users gid. If not specified, run as the user
who invoked the daemon.
Enhancements:
- Small feature enhancements, bugfixes, and cleanup.
Download (0.007MB)
Added: 2007-06-13 License: Freely Distributable Price:
863 downloads
POE::Filter::ErrorProof 1.0
POE::Filter::ErrorProof is a POE::Filter wrapper around dangerous Filters. more>>
SYNOPSIS
use POE::Filter::ErrorProof;
my $wheel = POE::Wheel::ReadWrite->new(
Filter => POE::Filter::ErrorProof->new(POE::Filter::Something->new()),
);
This module is a wrapper around other POE::Filters. I made this module when I noticed POE::Filter::XML would die() when non-XML input was given to it. The author of the module wasnt there, so I had to bring up a solution. You can use this module if you use a POE::Filter that might die if something bad happens. This Filter does nothing more than giving through the input in eval blocks.
THE NEW METHOD
POE::Filter::ErrorProof->new(); # Create a POE::Filter::ErrorProof with a POE::Filter::Stream in it
POE::Filter::ErrorProof->new(POE::Filter::XML->new()); # Do the same but with a POE::Filter::XML
POE::Filter::ErrorProof->new(POE::Filter::XML->new(), 1); # Do the same, but output errors on STDERR
POE::Filter::ErrorProof->new(POE::Filter::XML->new(), $socket); # Do the same, but output errors on this socket
$wheel = POE::Wheel::ReadWrite->new( .... );
POE::Filter::ErrorProof->new(POE::Filter::XML->new(), $wheel); # Output errors to this wheel
Download (0.008MB)
Added: 2007-04-18 License: Perl Artistic License Price:
919 downloads
Gtk2::Ex::Carp 0.01
Gtk2::Ex::Carp is a GTK+ friendly die() and warn() functions. more>>
Gtk2::Ex::Carp is a GTK+ friendly die() and warn() functions.
SYNOPSIS
use Gtk2::Ex::Carp;
# these override the standard Perl functions:
warn(i told you not to push that button!);
die(an ignominious death);
# new functions for showing extended error information:
# like warn(), but shows a dialog with extra information
# in an expandable text entry:
worry($SHORT_MESSAGE, $EXTENDED_INFORMATION);
# like worry(), but fatal:
wail($SHORT_MESSAGE, $EXTENDED_INFORMATION);
This module exports four functions, of which two override the standard die() and warn() functions, and two which allow for extended error reporting. When called, these functions display a user-friendly message dialog window.
The die() function in this module actually replaces the core die() function, so any modules youve loaded may die will use former instead of the latter. die() will also print the error message to STDERR and will exit the program (with the appropriate exit code) when the dialog is dismissed.
The warn() function will also print a message to STDERR, but will allow the program to continue running when the dialog is dismissed.
EXTRA FUNCTIONS
The worry() and wail() functions behave just like warn() and die(), respectively, except that they allow you to provide additional information. A second argument, which can contain additional error information, is used to fill a text box inside an expander.
HANDLING GLIB EXCEPTIONS
This module also installs warn() as a Glib exception handler. Any unhandled exceptions will be presented to the user in a warning dialog.
PROGRAM FLOW
Note that all the functions in this module create dialogs and use the run() method, so that the standard Glib main loop is blocked until the user responds to the dialog.
<<lessSYNOPSIS
use Gtk2::Ex::Carp;
# these override the standard Perl functions:
warn(i told you not to push that button!);
die(an ignominious death);
# new functions for showing extended error information:
# like warn(), but shows a dialog with extra information
# in an expandable text entry:
worry($SHORT_MESSAGE, $EXTENDED_INFORMATION);
# like worry(), but fatal:
wail($SHORT_MESSAGE, $EXTENDED_INFORMATION);
This module exports four functions, of which two override the standard die() and warn() functions, and two which allow for extended error reporting. When called, these functions display a user-friendly message dialog window.
The die() function in this module actually replaces the core die() function, so any modules youve loaded may die will use former instead of the latter. die() will also print the error message to STDERR and will exit the program (with the appropriate exit code) when the dialog is dismissed.
The warn() function will also print a message to STDERR, but will allow the program to continue running when the dialog is dismissed.
EXTRA FUNCTIONS
The worry() and wail() functions behave just like warn() and die(), respectively, except that they allow you to provide additional information. A second argument, which can contain additional error information, is used to fill a text box inside an expander.
HANDLING GLIB EXCEPTIONS
This module also installs warn() as a Glib exception handler. Any unhandled exceptions will be presented to the user in a warning dialog.
PROGRAM FLOW
Note that all the functions in this module create dialogs and use the run() method, so that the standard Glib main loop is blocked until the user responds to the dialog.
Download (0.04MB)
Added: 2006-07-12 License: GPL (GNU General Public License) Price:
1199 downloads
Test::MultiFork 0.6
Test::MultiFork is a test suite that has support for multi-process programs. more>>
Test::MultiFork is a test suite that has support for multi-process programs.
SYNOPSIS
use Test::MultiFork;
($name, $letter, $number) = procname([new name])
lockcommon()
@oldvalues = getcommon()
setcommon(@newvalues)
unlockcommon()
use Test::MultiFork qw(groupwait setgroup dofork stderr bail_on_bad_plan)
groupwait([$tag])
$oldgroup = setgroup([$newgroup])
dofork(fork_specification)
This test module is to support creating test suites for programs and modules that run as multiple processes and do mostly blocking I/O.
Test::MultiFork handles the forking so that it can set up each child to coordinate the output. The output from each child fork is redirected to the parent. Each fork produces normal test output -- possibly using normal test modules like Test::Simple. The output is collected and rewritten by the parent process.
Each child fork has a letter and number designation. The forks are created by dofork(). Dofork takes a specifiction on the form: ([a-z](d*))+. That is to say, one or more lower-case letters, each optionally followd by a number. The number says how many children to fork for that letter (default one). The specifier ab2c3 means have one a child (numbered 1); two b children (numbered 1, 2); and three c children (numbered 1, 2, 3).
To aid in writing tests, Test::MultiFork will pass data between the child processes. The data is test-writer defined.
<<lessSYNOPSIS
use Test::MultiFork;
($name, $letter, $number) = procname([new name])
lockcommon()
@oldvalues = getcommon()
setcommon(@newvalues)
unlockcommon()
use Test::MultiFork qw(groupwait setgroup dofork stderr bail_on_bad_plan)
groupwait([$tag])
$oldgroup = setgroup([$newgroup])
dofork(fork_specification)
This test module is to support creating test suites for programs and modules that run as multiple processes and do mostly blocking I/O.
Test::MultiFork handles the forking so that it can set up each child to coordinate the output. The output from each child fork is redirected to the parent. Each fork produces normal test output -- possibly using normal test modules like Test::Simple. The output is collected and rewritten by the parent process.
Each child fork has a letter and number designation. The forks are created by dofork(). Dofork takes a specifiction on the form: ([a-z](d*))+. That is to say, one or more lower-case letters, each optionally followd by a number. The number says how many children to fork for that letter (default one). The specifier ab2c3 means have one a child (numbered 1); two b children (numbered 1, 2); and three c children (numbered 1, 2, 3).
To aid in writing tests, Test::MultiFork will pass data between the child processes. The data is test-writer defined.
Download (0.010MB)
Added: 2007-05-04 License: Perl Artistic License Price:
903 downloads
IO::Interactive 0.0.3
IO::Interactive is a Perl module with utilities for interactive I/O. more>>
IO::Interactive is a Perl module with utilities for interactive I/O.
SYNOPSIS
use IO::Interactive qw(is_interactive interactive busy);
if ( is_interactive() ) {
print "Running interactivelyn";
}
# or...
print {interactive} "Running interactivelyn";
$fh = busy {
do_noninteractive_stuff();
}
This module provides three utility subroutines that make it easier to develop interactive applications...
is_interactive()
This subroutine returns true if *ARGV and *STDOUT are connected to the terminal. The test is considerably more sophisticated than:
-t *ARGV && -t *STDOUT
as it takes into account the magic behaviour of *ARGV.
You can also pass is_interactive a writable filehandle, in which case it requires that filehandle be connected to a terminal (instead of *STDOUT). The usual suspect here is *STDERR:
if ( is_interactive(*STDERR) ) {
carp $warning;
}
interactive()
This subroutine returns *STDOUT if is_interactive is true. If is_interactive() is false, interactive returns a filehandle that does not print.
This makes it easy to create applications that print out only when the application is interactive:
print {interactive} "Please enter a value: ";
my $value = ;
You can also pass interactive a writable filehandle, in which case it writes to that filehandle if it is connected to a terminal (instead of writinbg to *STDOUT). Once again, the usual suspect is *STDERR:
print {interactive(*STDERR)} $warning;
busy {...}
This subroutine takes a block as its single argument and executes that block. Whilst the block is executed, *ARGV is temporarily replaced by a closed filehandle. That is, no input from *ARGV is possible in a busy block. Furthermore, any attempts to send input into the busy block through *ARGV is intercepted and a warning message is printed to *STDERR. The busy call returns a filehandle that contains the intercepted input.
A busy block is therefore useful to prevent attempts at input when the program is busy at some non-interactive task.
<<lessSYNOPSIS
use IO::Interactive qw(is_interactive interactive busy);
if ( is_interactive() ) {
print "Running interactivelyn";
}
# or...
print {interactive} "Running interactivelyn";
$fh = busy {
do_noninteractive_stuff();
}
This module provides three utility subroutines that make it easier to develop interactive applications...
is_interactive()
This subroutine returns true if *ARGV and *STDOUT are connected to the terminal. The test is considerably more sophisticated than:
-t *ARGV && -t *STDOUT
as it takes into account the magic behaviour of *ARGV.
You can also pass is_interactive a writable filehandle, in which case it requires that filehandle be connected to a terminal (instead of *STDOUT). The usual suspect here is *STDERR:
if ( is_interactive(*STDERR) ) {
carp $warning;
}
interactive()
This subroutine returns *STDOUT if is_interactive is true. If is_interactive() is false, interactive returns a filehandle that does not print.
This makes it easy to create applications that print out only when the application is interactive:
print {interactive} "Please enter a value: ";
my $value = ;
You can also pass interactive a writable filehandle, in which case it writes to that filehandle if it is connected to a terminal (instead of writinbg to *STDOUT). Once again, the usual suspect is *STDERR:
print {interactive(*STDERR)} $warning;
busy {...}
This subroutine takes a block as its single argument and executes that block. Whilst the block is executed, *ARGV is temporarily replaced by a closed filehandle. That is, no input from *ARGV is possible in a busy block. Furthermore, any attempts to send input into the busy block through *ARGV is intercepted and a warning message is printed to *STDERR. The busy call returns a filehandle that contains the intercepted input.
A busy block is therefore useful to prevent attempts at input when the program is busy at some non-interactive task.
Download (0.005MB)
Added: 2007-01-16 License: Perl Artistic License Price:
1011 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above stderr search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed