Index: /trunk/PS-IPP-PSFTP/lib/PS/IPP/PSFTP.pm
===================================================================
--- /trunk/PS-IPP-PSFTP/lib/PS/IPP/PSFTP.pm	(revision 5340)
+++ /trunk/PS-IPP-PSFTP/lib/PS/IPP/PSFTP.pm	(revision 5341)
@@ -1,5 +1,5 @@
 # Copyright (C) 2005  Joshua Hoblitt
 #
-# $Id: PSFTP.pm,v 1.9 2005-10-15 00:41:20 jhoblitt Exp $
+# $Id: PSFTP.pm,v 1.10 2005-10-15 00:57:32 jhoblitt Exp $
 
 package PS::IPP::PSFTP;
@@ -16,5 +16,5 @@
 use File::stat;
 use LWP::UserAgent;
-use Params::Validate qw( validate SCALAR );
+use Params::Validate qw( validate SCALAR UNDEF );
 use POSIX;
 use PS::IPP::PSFTP::Parser;
@@ -149,11 +149,21 @@
             },
             size        => {
-                type        => SCALAR,
-                regex       => qr/^$RE{num}{int}$/,
+                type        => SCALAR | UNDEF,
+                callbacks   => {
+                    'is int' => sub {
+                        return 1 unless defined $_[0];
+                        $_[0] =~ qr/^$RE{num}{int}$/;
+                     },
+                },
                 optional    => 1,
             },
             md5         => {
-                type        => SCALAR,
-                regex       => qr/^$RE{num}{real}{-base => 16}$/,
+                type        => SCALAR | UNDEF,
+                callbacks   => {
+                    'is hex' => sub {
+                        return 1 unless defined $_[0];
+                        $_[0] =~ qr/^$RE{num}{real}{-base => 16}$/;
+                     },
+                },
                 optional    => 1,
             },
