Using LWP::Simple to retrieve binary data

We have a Perl CGI script at work that acts as a proxy. It grabs a pkcs12 digital certificate file from an internal server and delivers it to a user through his or her web browser. The pkcs12 file is in binary format.

Everything worked fine until put the code on a new server. Suddenly, the files downloaded by the web users were corrupted. We also began seeing the following warning in the log files:
Wide character in print at download.cgi line 124.

Here is the code…

See more ...

Last Updated: Fri, 16 Apr 2010

Installing ODBC on Linux

At work, we use Microsoft SQL Server and IBM AS400 databases. Here’s how I set our Linux boxes to allow them to connect to the databases through ODBC. There are seperate instructions for the Debian and Ubuntu (9.10 Karmic Koala) and Red Hat Enterprise Linux (RHEL4 and RHEL5) distributions.

ODBC connections require several layers of software to work. The bottom layer consists of the individual ODBC drivers for each database system. Our top layer is the DBI/DBD interface for Perl. In between these layers is the ODBC driver manager, which keeps track of the DSN’s and their corresponding ODBC drivers.

Packages and Software to Install

Ubuntu Version (tested on 9.10 Karmic Koala)
Debian Version (“unstable” distribution)

We use unixODBC as our ODBC driver manager. First, install unixODBC:
NOTE: Perl’s DBD::ODBC module requires the developer’s version of unixODBC, so install that one.

  # apt-get install unixodbc-dev

See more ...

Last Updated: Tue, 09 Mar 2010

Things I always need to look up in Perl

Here are some random Perl things I always need to look up:

See more ...

Last Updated: Mon, 21 Dec 2009