Thanks to krimdomu and Rafael Kitover

Net::SSH2 (ssh client library based off libssh2) now has agent support, something that i've been wanting for a while and had just sat down to write. Very happy it had already been done! Thanks fellas!

Thanks Дамян Иванов!!

DBD::Firebird 0.9 has been released with a create_database method, using the isc_dsql_execute_immediate call. This means you can use DBD::Firebird to create a database without depending on the presence of a binary on the filesystem, which was the old way of doing things. Lots easier!

Thanks Popa Marius Adrian

DBD::Firebird now passes all its tests on Fedora 15 with a simple

perl Makefile.PL && make && ISC_PASSWORD=$password make test

Very cool and most appreciated!

Combining Syslog and DBI

Saw an interesting interaction today. The Sys::Syslog module makes use of fork to prevent a blocking write to the console. Unfortunately, this means that if you are connected to a database via DBI and try to log anything via syslog, you'll run the issue of the DBI handle being closed under you. Even the DBI property of InactiveDestroy cannot save you b/c of the fork being hidden in Sys::Syslog. Thanks to David E Wheeler for the DBI AutoInactiveDestroy attribute which saves the day!

Tainting traps

I ran into some trouble when combining tainting with the Encode module. Recently, I've been using the Encode module to decode from binary to text as soon as possible and encode back to binary as late as possible. Unfortunately, this completely kills the protection that -T grants, presumably b/c the Encode module uses a regular expression to do it's work.

#! /usr/bin/perl -T

use strict;
use warnings;
use Encode();

$ENV{'PATH'} = '/bin:/usr/bin';
delete @ENV{'IFS', 'CDPATH', 'ENV', 'BASH_ENV'};

my ($home) = Encode::encode('UTF-8', $ENV{'…

About David Dick

user-pic I'm based out of Melbourne, Australia. I attend the excellent melbourne.pm.org meetings whenever i get the chance, which is not often enough.