Index: trunk/PS-IPP-Config/lib/PS/IPP/Config.pm
===================================================================
--- trunk/PS-IPP-Config/lib/PS/IPP/Config.pm	(revision 28900)
+++ trunk/PS-IPP-Config/lib/PS/IPP/Config.pm	(revision 29748)
@@ -39,4 +39,5 @@
                     metadataLookupMD
                     metadataLookupBool
+                    metadataLookupS32
                     caturi
                     file_scheme
@@ -353,5 +354,5 @@
     my $dbuser = metadataLookupStr($self->{_siteConfig}, "DBUSER");
     my $dbpassword = metadataLookupStr($self->{_siteConfig}, "DBPASSWORD");
-    my $dbport = metadataLookupStr($self->{_siteConfig}, "DBPORT");
+    my $dbport = metadataLookupS32($self->{_siteConfig}, "DBPORT");
     my $admindb = "ippadmin";
 
@@ -1371,5 +1372,15 @@
     return undef if not defined $item;
     my $name = shift;                # Name of item
-    carp "$name within metadata is not of type STR.\n" unless $item->{type} eq "STR";
+    carp "$name within metadata is type $item->{type} not STR.\n" unless $item->{type} eq "STR";
+    return $item->{value};
+}
+
+# Lookup the metadata, checking the type is S32
+sub metadataLookupS32
+{
+    my $item = metadataLookup(@_);
+    return undef if not defined $item;
+    my $name = shift;                # Name of item
+    carp "$name within metadata is type $item->{type} not S32.\n" unless $item->{type} eq "S32";
     return $item->{value};
 }
@@ -1391,5 +1402,5 @@
     return undef if not defined $item;
     my $name = shift;                # Name of item
-    carp "$name within metadata is not of type BOOL.\n" unless $item->{type} eq "BOOL";
+    carp "$name within metadata is type $item->{type} not BOOL.\n" unless $item->{type} eq "BOOL";
     return $item->{value};
 }
