r76320 - in /branches/upstream/libauthen-dechpwd-perl/current: .cvsignore Build.PL Changes MANIFEST META.json META.yml Makefile.PL README SIGNATURE lib/Authen/DecHpwd.pm lib/Authen/DecHpwd.xs t/ad_ii.t t/ad_ii_pp.t t/setup_pp.pl

mxey-guest at users.alioth.debian.org mxey-guest at users.alioth.debian.org
Thu Jun 23 11:23:19 UTC 2011


Author: mxey-guest
Date: Thu Jun 23 11:23:17 2011
New Revision: 76320

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=76320
Log:
[svn-upgrade] new version libauthen-dechpwd-perl (2.006)

Added:
    branches/upstream/libauthen-dechpwd-perl/current/META.json
    branches/upstream/libauthen-dechpwd-perl/current/t/ad_ii.t
    branches/upstream/libauthen-dechpwd-perl/current/t/ad_ii_pp.t
Modified:
    branches/upstream/libauthen-dechpwd-perl/current/.cvsignore
    branches/upstream/libauthen-dechpwd-perl/current/Build.PL
    branches/upstream/libauthen-dechpwd-perl/current/Changes
    branches/upstream/libauthen-dechpwd-perl/current/MANIFEST
    branches/upstream/libauthen-dechpwd-perl/current/META.yml
    branches/upstream/libauthen-dechpwd-perl/current/Makefile.PL
    branches/upstream/libauthen-dechpwd-perl/current/README
    branches/upstream/libauthen-dechpwd-perl/current/SIGNATURE
    branches/upstream/libauthen-dechpwd-perl/current/lib/Authen/DecHpwd.pm
    branches/upstream/libauthen-dechpwd-perl/current/lib/Authen/DecHpwd.xs
    branches/upstream/libauthen-dechpwd-perl/current/t/setup_pp.pl

Modified: branches/upstream/libauthen-dechpwd-perl/current/.cvsignore
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libauthen-dechpwd-perl/current/.cvsignore?rev=76320&op=diff
==============================================================================
--- branches/upstream/libauthen-dechpwd-perl/current/.cvsignore (original)
+++ branches/upstream/libauthen-dechpwd-perl/current/.cvsignore Thu Jun 23 11:23:17 2011
@@ -1,4 +1,4 @@
 Build Makefile
 _build blib
-META.yml MYMETA.yml Makefile.PL SIGNATURE
+META.json META.yml MYMETA.json MYMETA.yml Makefile.PL SIGNATURE
 Authen-DecHpwd-*

Modified: branches/upstream/libauthen-dechpwd-perl/current/Build.PL
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libauthen-dechpwd-perl/current/Build.PL?rev=76320&op=diff
==============================================================================
--- branches/upstream/libauthen-dechpwd-perl/current/Build.PL (original)
+++ branches/upstream/libauthen-dechpwd-perl/current/Build.PL Thu Jun 23 11:23:17 2011
@@ -68,6 +68,7 @@
 	},
 	requires => {
 		"Data::Integer" => "0.003",
+		"Digest::CRC" => "0.14",
 		"Exporter" => 0,
 		"Scalar::String" => 0,
 		"constant" => 0,

Modified: branches/upstream/libauthen-dechpwd-perl/current/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libauthen-dechpwd-perl/current/Changes?rev=76320&op=diff
==============================================================================
--- branches/upstream/libauthen-dechpwd-perl/current/Changes (original)
+++ branches/upstream/libauthen-dechpwd-perl/current/Changes Thu Jun 23 11:23:17 2011
@@ -1,3 +1,26 @@
+version 2.006; 2011-05-07
+
+  * implement AUTODIN-II CRC hashing, delegating to Digest::CRC to
+    perform the actual CRC calculation
+
+  * in documentation, refer to the VMS function principally as
+    "SYS$HASH_PASWORD" (which seems to be its primary name) and only
+    secondarily as "LGI$HPWD"
+
+  * in XS, use save stack to clean up temporarily allocated memory
+
+  * in XS, declare "PROTOTYPES: DISABLE" to prevent automatic generation
+    of unintended prototypes
+
+  * in t/setup_pp.pl, avoid a warning that occurs if XSLoader::load()
+    is given no arguments, which is now a valid usage
+
+  * slightly reformat some C code to avoid exceeding 80 columns
+
+  * include META.json in distribution
+
+  * add MYMETA.json to .cvsignore
+
 version 2.005; 2010-07-30
 
   * in XS, use the correct "PREINIT:" instead of "INIT:" to introduce

Modified: branches/upstream/libauthen-dechpwd-perl/current/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libauthen-dechpwd-perl/current/MANIFEST?rev=76320&op=diff
==============================================================================
--- branches/upstream/libauthen-dechpwd-perl/current/MANIFEST (original)
+++ branches/upstream/libauthen-dechpwd-perl/current/MANIFEST Thu Jun 23 11:23:17 2011
@@ -2,12 +2,15 @@
 Build.PL
 Changes
 MANIFEST
+META.json
 META.yml
 Makefile.PL
 README
 lib/Authen/.cvsignore
 lib/Authen/DecHpwd.pm
 lib/Authen/DecHpwd.xs
+t/ad_ii.t
+t/ad_ii_pp.t
 t/error.t
 t/error_pp.t
 t/pod_cvg.t

Added: branches/upstream/libauthen-dechpwd-perl/current/META.json
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libauthen-dechpwd-perl/current/META.json?rev=76320&op=file
==============================================================================
--- branches/upstream/libauthen-dechpwd-perl/current/META.json (added)
+++ branches/upstream/libauthen-dechpwd-perl/current/META.json Thu Jun 23 11:23:17 2011
@@ -1,0 +1,72 @@
+{
+   "abstract" : "DEC VMS password hashing",
+   "author" : [
+      "Shawn Clifford",
+      "Davide Casale",
+      "Mario Ambrogetti",
+      "Terence Lee",
+      "Jean-loup Gailly",
+      "Solar Designer",
+      "Mike McCauley <mikem at open.com.au>",
+      "Andrew Main (Zefram) <zefram at fysh.org>"
+   ],
+   "dynamic_config" : 1,
+   "generated_by" : "Module::Build version 0.38, CPAN::Meta::Converter version 2.110580",
+   "license" : [
+      "gpl_1"
+   ],
+   "meta-spec" : {
+      "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
+      "version" : "2"
+   },
+   "name" : "Authen-DecHpwd",
+   "prereqs" : {
+      "build" : {
+         "requires" : {
+            "Module::Build" : 0,
+            "Scalar::String" : 0,
+            "Test::More" : 0,
+            "perl" : "5.006",
+            "strict" : 0,
+            "warnings" : 0
+         }
+      },
+      "configure" : {
+         "requires" : {
+            "Module::Build" : 0,
+            "perl" : "5.006",
+            "strict" : 0,
+            "warnings" : 0
+         }
+      },
+      "runtime" : {
+         "recommends" : {
+            "XSLoader" : 0
+         },
+         "requires" : {
+            "Data::Integer" : "0.003",
+            "Digest::CRC" : "0.14",
+            "Exporter" : 0,
+            "Scalar::String" : 0,
+            "constant" : 0,
+            "parent" : 0,
+            "perl" : "5.006",
+            "strict" : 0,
+            "warnings" : 0
+         }
+      }
+   },
+   "provides" : {
+      "Authen::DecHpwd" : {
+         "file" : "lib/Authen/DecHpwd.pm",
+         "version" : "2.006"
+      }
+   },
+   "release_status" : "stable",
+   "resources" : {
+      "license" : [
+         "http://www.gnu.org/licenses/old-licenses/gpl-1.0.txt"
+      ]
+   },
+   "version" : "2.006"
+}

Modified: branches/upstream/libauthen-dechpwd-perl/current/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libauthen-dechpwd-perl/current/META.yml?rev=76320&op=diff
==============================================================================
--- branches/upstream/libauthen-dechpwd-perl/current/META.yml (original)
+++ branches/upstream/libauthen-dechpwd-perl/current/META.yml Thu Jun 23 11:23:17 2011
@@ -21,9 +21,8 @@
   perl: 5.006
   strict: 0
   warnings: 0
-distribution_type: module
 dynamic_config: 1
-generated_by: 'Module::Build version 0.3607'
+generated_by: 'Module::Build version 0.38, CPAN::Meta::Converter version 2.110580'
 license: gpl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -32,11 +31,12 @@
 provides:
   Authen::DecHpwd:
     file: lib/Authen/DecHpwd.pm
-    version: 2.005
+    version: 2.006
 recommends:
   XSLoader: 0
 requires:
   Data::Integer: 0.003
+  Digest::CRC: 0.14
   Exporter: 0
   Scalar::String: 0
   constant: 0
@@ -46,4 +46,4 @@
   warnings: 0
 resources:
   license: http://www.gnu.org/licenses/old-licenses/gpl-1.0.txt
-version: 2.005
+version: 2.006

Modified: branches/upstream/libauthen-dechpwd-perl/current/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libauthen-dechpwd-perl/current/Makefile.PL?rev=76320&op=diff
==============================================================================
--- branches/upstream/libauthen-dechpwd-perl/current/Makefile.PL (original)
+++ branches/upstream/libauthen-dechpwd-perl/current/Makefile.PL Thu Jun 23 11:23:17 2011
@@ -1,4 +1,4 @@
-# Note: this file was auto-generated by Module::Build::Compat version 0.3607
+# Note: this file was auto-generated by Module::Build::Compat version 0.3800
 require 5.006;
 
     unless (eval "use Module::Build::Compat 0.02; 1" ) {

Modified: branches/upstream/libauthen-dechpwd-perl/current/README
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libauthen-dechpwd-perl/current/README?rev=76320&op=diff
==============================================================================
--- branches/upstream/libauthen-dechpwd-perl/current/README (original)
+++ branches/upstream/libauthen-dechpwd-perl/current/README Thu Jun 23 11:23:17 2011
@@ -4,8 +4,9 @@
 
 DESCRIPTION
 
-This module implements the LGI$HPWD password hashing function from VMS,
-and some associated VMS username and password handling functions.
+This module implements the SYS$HASH_PASSWORD password hashing function
+from VMS (also known as LGI$HPWD), and some associated VMS username and
+password handling functions.
 
 The password hashing function is implemented in XS, with a hideously
 slow pure Perl backup version for systems that can't handle XS.
@@ -38,7 +39,7 @@
 Based in part on code from John the Ripper, Copyright (C) 1996-2002
 Solar Designer
 
-Copyright (C) 2006, 2007, 2009, 2010
+Copyright (C) 2006, 2007, 2009, 2010, 2011
 Andrew Main (Zefram) <zefram at fysh.org>
 
 LICENSE

Modified: branches/upstream/libauthen-dechpwd-perl/current/SIGNATURE
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libauthen-dechpwd-perl/current/SIGNATURE?rev=76320&op=diff
==============================================================================
--- branches/upstream/libauthen-dechpwd-perl/current/SIGNATURE (original)
+++ branches/upstream/libauthen-dechpwd-perl/current/SIGNATURE Thu Jun 23 11:23:17 2011
@@ -1,5 +1,5 @@
 This file contains message digests of all files listed in MANIFEST,
-signed via the Module::Signature module, version 0.64.
+signed via the Module::Signature module, version 0.66.
 
 To verify the content in this distribution, first make sure you have
 Module::Signature installed, then type:
@@ -14,16 +14,19 @@
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA1
 
-SHA1 873f19a831c02dd739ff2992f8f2b270381d1fcd .cvsignore
-SHA1 1919de7a682ced6d66cd95df46148f077693a7b3 Build.PL
-SHA1 160cc300a625c71c09c87af5d7b92798355f53ef Changes
-SHA1 26e706b2c3adbcff83200d7db55665f68692d81a MANIFEST
-SHA1 b4a724dc860d56ea249a5b21d89fea6c00b15e07 META.yml
-SHA1 0f1b3b6269550b5135e10b3cae1b6b41d274b276 Makefile.PL
-SHA1 88888034f076b43f8c45f4e11b6753d4dd886b4c README
+SHA1 34c481cb2456e7c438729e5ffe47fa4ee48cac13 .cvsignore
+SHA1 36d9a1cc3dc972d4194c80bf2c278874615290a8 Build.PL
+SHA1 cc866d014b2776a03d4a0d28098198baa87121e6 Changes
+SHA1 c3cc5da825f8df10b51844de2c0f83e32bd9d750 MANIFEST
+SHA1 895ed53852c915640ec6aa2ccd54e97794000e31 META.json
+SHA1 1e98a31999bcee33232a02bad5200fc49046b83e META.yml
+SHA1 2157ae40589595d6cc1585fd7279b25bcf8f5852 Makefile.PL
+SHA1 33252596b5db378b8990528c2993509ab6c3c187 README
 SHA1 e6329de2cc61d37633dbeae6a76de2a6c0db4d1c lib/Authen/.cvsignore
-SHA1 805017e12229312f859974bfc39afe330f9305ee lib/Authen/DecHpwd.pm
-SHA1 4bb2e9ffbc8c3b40ff96f6692b9a86bf87187346 lib/Authen/DecHpwd.xs
+SHA1 3f1d891c4ead1e9f41b628b5d33c7463c9803469 lib/Authen/DecHpwd.pm
+SHA1 84b1bc108a7e96d074e8fe9e7a4d326f8ab2482a lib/Authen/DecHpwd.xs
+SHA1 ec9d474d408610cc407a7a6acd6a57290ca1ffde t/ad_ii.t
+SHA1 e35855e0647f540961d852bc08375a55f79c4c46 t/ad_ii_pp.t
 SHA1 0c878ae29b417db5507ba73cb8003a9fe7d872eb t/error.t
 SHA1 fc008cb61eb02798d6ec02df230ef4d59bcdca12 t/error_pp.t
 SHA1 904d9a4f76525e2303e4b0c168c68230f223c8de t/pod_cvg.t
@@ -35,13 +38,13 @@
 SHA1 f3481010321f8d330a916d7df959adca2b7667dd t/purdy_s_pp.t
 SHA1 c44b75ae3c2a2ded3d620e8d7a9cc240f0f870d5 t/purdy_v.t
 SHA1 b609e9e46fec79dd78108d71961d331ca2bfa0fd t/purdy_v_pp.t
-SHA1 13e0c865134cb43ba7608cb6e1f6ca29ac57c3f0 t/setup_pp.pl
+SHA1 39855833b066d96722c23f00b99b17ea750db360 t/setup_pp.pl
 SHA1 296fe58b26077980410206b30534093e302f90c5 t/vms_pass.t
 SHA1 5a5c9c0be3c3e92a91d1d655f93e4ab0e805b116 t/vms_user.t
 -----BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.9 (GNU/Linux)
+Version: GnuPG v1.4.10 (GNU/Linux)
 
-iEYEARECAAYFAkxTGsoACgkQOV9mt2VyAVElXACfd3ewfdG/PlCvUTXDsT6vbZUX
-+OMAn15JSdNf9iz+SjJdRDYzwNaRl1wR
-=8MPO
+iEYEARECAAYFAk3FhDMACgkQOV9mt2VyAVFdKQCfYYF/Z2FIBaxdcDR4DWIb2bb0
+fuMAoKh6Fz+rQLAAaVg5Ch828psQKyKX
+=mwGN
 -----END PGP SIGNATURE-----

Modified: branches/upstream/libauthen-dechpwd-perl/current/lib/Authen/DecHpwd.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libauthen-dechpwd-perl/current/lib/Authen/DecHpwd.pm?rev=76320&op=diff
==============================================================================
--- branches/upstream/libauthen-dechpwd-perl/current/lib/Authen/DecHpwd.pm (original)
+++ branches/upstream/libauthen-dechpwd-perl/current/lib/Authen/DecHpwd.pm Thu Jun 23 11:23:17 2011
@@ -18,8 +18,9 @@
 
 =head1 DESCRIPTION
 
-This module implements the C<LGI$HPWD> password hashing function from VMS,
-and some associated VMS username and password handling functions.
+This module implements the C<SYS$HASH_PASSWORD> password hashing function
+from VMS (also known as C<LGI$HPWD>), and some associated VMS username
+and password handling functions.
 
 The password hashing function is implemented in XS, with a hideously
 slow pure Perl backup version for systems that can't handle XS.
@@ -32,7 +33,9 @@
 use warnings;
 use strict;
 
-our $VERSION = "2.005";
+use Digest::CRC 0.14 qw(crc32);
+
+our $VERSION = "2.006";
 
 use parent "Exporter";
 our @EXPORT_OK = qw(
@@ -61,8 +64,9 @@
 These constants are used to identify the four password hashing algorithms
 used by VMS.  They are the C<UAI$C_> constants in VMS.
 
-C<UAI_C_AD_II> refers to an AUTODIN-II 32-bit CRC algorithm.  This is
-unimplemented by this module.
+C<UAI_C_AD_II> refers to a 32-bit CRC algorithm.  The CRC polynomial used
+is the IEEE CRC-32 polynomial, as used in Ethernet, and in this context
+is known as "AUTODIN-II".  The hash is merely the CRC of the password.
 
 C<UAI_C_PURDY>, C<UAI_C_PURDY_V>, and C<UAI_C_PURDY_S> refer to successive
 refinements of an algorithm based on Purdy polynomials.  All of these
@@ -88,13 +92,14 @@
 
 =item lgi_hpwd(USERNAME, PASSWORD, ALGORITHM, SALT)
 
-This is the C<LGI$HPWD> function from VMS (but with the parameters in a
-different order).  It hashes the PASSWORD string in a manner determined
-by the other parameters, and returns the hash as a string of bytes.
+This is the C<SYS$HASH_PASSWORD> function from VMS (also known as
+C<LGI$HPWD>), but with the parameters in a different order.  It hashes
+the PASSWORD string in a manner determined by the other parameters,
+and returns the hash as a string of bytes.
 
 ALGORITHM determines which hashing algorithm will be used.  It must
 be the value of one of the algorithm constants supplied by this module
-(see above).  The AUTODIN-II CRC algorithm is currently unimplemented.
+(see above).
 
 SALT must be an integer in the range [0, 2^16).  It modifies the hashing
 so that the same password does not always produce the same hash.
@@ -325,7 +330,6 @@
 
 sub lgi_hpwd($$$$) {
 	my($username, $password, $alg, $salt) = @_;
-	if($alg == UAI_C_AD_II) { die "UAI_C_AD_II is not implemented" }
 	if($alg > UAI_C_PURDY_S) {
 		die "algorithm value $alg is not recognised";
 	}
@@ -338,6 +342,9 @@
 	die "input must contain only octets"
 		unless sclstr_is_downgraded($username) &&
 			sclstr_is_downgraded($password);
+	if($alg == UAI_C_AD_II) {
+		return pack("VV", Digest::CRC::crc32($password)^0xffffffff, 0);
+	}
 	my $isPurdyS = $alg == UAI_C_PURDY_S;
 	my $output = pack("VV", 0, 0);
 	if($alg == UAI_C_PURDY) {
@@ -413,7 +420,7 @@
 Based in part on code from John the Ripper, Copyright (C) 1996-2002
 Solar Designer
 
-Copyright (C) 2006, 2007, 2009, 2010
+Copyright (C) 2006, 2007, 2009, 2010, 2011
 Andrew Main (Zefram) <zefram at fysh.org>
 
 =head1 LICENSE

Modified: branches/upstream/libauthen-dechpwd-perl/current/lib/Authen/DecHpwd.xs
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libauthen-dechpwd-perl/current/lib/Authen/DecHpwd.xs?rev=76320&op=diff
==============================================================================
--- branches/upstream/libauthen-dechpwd-perl/current/lib/Authen/DecHpwd.xs (original)
+++ branches/upstream/libauthen-dechpwd-perl/current/lib/Authen/DecHpwd.xs Thu Jun 23 11:23:17 2011
@@ -115,7 +115,7 @@
 # error not a recognised endianness
 #endif
 
-#define UAIC_AD_II   0  /* AUTODIN-II 32 bit crc code, not supported   */
+#define UAIC_AD_II   0  /* AUTODIN-II 32 bit crc code                  */
 #define UAIC_PURDY   1  /* Purdy polynomial over salted input          */
 #define UAIC_PURDY_V 2  /* Purdy polynomial + variable length username */
 #define UAIC_PURDY_S 3  /* PURDY_V + additional bit rotation           */
@@ -154,7 +154,8 @@
     }
 
 #if ARCH_LITTLE_ENDIAN
-#  define qwordConstant(low, high) { { (low), (high) } } /* qword in host format */
+#  define qwordConstant(low, high) { { (low), (high) } }
+					/* qword in host format */
 #  define normalizeQword(q) /* do not reverse order on little-endian systems */
 #else
 #  define qwordConstant(low, high) { { (high), (low) } }
@@ -408,8 +409,7 @@
 #endif /* asm */
 
 /* ============================================================================
-   Portable C version of the last 3 encryption methods for DEC's
-   password hashing algorithms.
+   Portable C version of DEC's Purdy password hashing algorithms.
            output = 8 byte output buffer in host format
 	 password = up to 32 characters, upper case, without spaces
 	  encrypt = determines algorithm to use
@@ -419,7 +419,7 @@
 	     salt = 2 byte random number
 	 username = up to 31 characters username, upper case.
 */
-static void VMS_lgihpwd(qword *output,
+static void lgihpwd_purdy(qword *output,
 	char *password, size_t password_len,
 	int encrypt, word salt,
 	char *username, size_t username_len)
@@ -441,7 +441,8 @@
 	username_len = PURDY_USERNAME_LENGTH;
     } else if (encrypt == UAIC_PURDY_S) {
 	/* Hickory algorithm; Purdy_V with rotation */
-	addUnalignedWord(((char *)output), password_len); /* Bytes 0-1 => length */
+	addUnalignedWord(((char *)output), password_len);
+	/* Bytes 0-1 => length */
     }
 
     /* Collapse the password to the output quadword: */
@@ -644,6 +645,8 @@
 
 MODULE = Authen::DecHpwd PACKAGE = Authen::DecHpwd
 
+PROTOTYPES: DISABLE
+
 SV *
 lgi_hpwd(SV *username_sv, SV *password_sv, unsigned alg, unsigned salt)
 PROTOTYPE: $$$$
@@ -653,26 +656,34 @@
 	bool is_utf8;
 	qword hash;
 CODE:
-	if(alg == UAIC_AD_II)
-		croak("UAI_C_AD_II is not implemented");
 	if(alg > UAIC_PURDY_S)
 		croak("algorithm value %u is not recognised", alg);
 	username_str = (U8*)SvPV(username_sv, username_len);
 	is_utf8 = !!SvUTF8(username_sv);
 	username_octs = bytes_from_utf8(username_str, &username_len, &is_utf8);
+	if(username_octs != username_str) SAVEFREEPV(username_octs);
 	if(is_utf8)
 		croak("input must contain only octets");
 	password_str = (U8*)SvPV(password_sv, password_len);
 	is_utf8 = !!SvUTF8(password_sv);
 	password_octs = bytes_from_utf8(password_str, &password_len, &is_utf8);
-	if(is_utf8) {
-		if(username_octs != username_str) Safefree(username_octs);
+	if(is_utf8)
 		croak("input must contain only octets");
+	if(password_octs != password_str) SAVEFREEPV(password_octs);
+	if(alg == UAIC_AD_II) {
+		PUSHMARK(SP);
+		XPUSHs(password_octs == password_str ? password_sv :
+			sv_2mortal(newSVpvn((char*)password_octs,
+						password_len)));
+		PUTBACK;
+		call_pv("Digest::CRC::crc32", G_SCALAR);
+		SPAGAIN;
+		hash.d_low = POPu ^ 0xffffffffUL;
+		hash.d_high = 0;
+	} else {
+		lgihpwd_purdy(&hash, (char *)password_octs, password_len, alg,
+			salt & 0xffff, (char *)username_octs, username_len);
 	}
-	VMS_lgihpwd(&hash, (char *)password_octs, password_len, alg,
-		salt & 0xffff, (char *)username_octs, username_len);
-	if(username_octs != username_str) Safefree(username_octs);
-	if(password_octs != password_str) Safefree(password_octs);
 	normalizeQword(&hash);
 	RETVAL = newSVpvn((char *)&hash, 8);
 OUTPUT:

Added: branches/upstream/libauthen-dechpwd-perl/current/t/ad_ii.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libauthen-dechpwd-perl/current/t/ad_ii.t?rev=76320&op=file
==============================================================================
--- branches/upstream/libauthen-dechpwd-perl/current/t/ad_ii.t (added)
+++ branches/upstream/libauthen-dechpwd-perl/current/t/ad_ii.t Thu Jun 23 11:23:17 2011
@@ -1,0 +1,224 @@
+use warnings;
+use strict;
+
+use Scalar::String qw(sclstr_downgraded sclstr_upgraded);
+use Test::More tests => 401;
+
+BEGIN { use_ok "Authen::DecHpwd", qw(lgi_hpwd UAI_C_AD_II); }
+
+while(<DATA>) {
+	my($salt, $username, $password, $hash) = split;
+	$username = pack("H*", $username) if $username =~ s/\A\*//;
+	$password = pack("H*", $password) if $password =~ s/\A\*//;
+	$hash = pack("H*", $hash);
+	is lgi_hpwd(sclstr_downgraded($username), sclstr_downgraded($password),
+			UAI_C_AD_II, $salt),
+		$hash;
+	is lgi_hpwd(sclstr_upgraded($username), sclstr_upgraded($password),
+			UAI_C_AD_II, $salt),
+		$hash;
+}
+
+1;
+
+__DATA__
+50917 unclasping eviscerate 28f63c9b00000000
+50482 jams daylight 653ea86200000000
+32451 regurgitation Portsmouth 84e9b80500000000
+37825 Sukarno orthodoxes 14b3be0f00000000
+23197 cartridge spliced e98a19b600000000
+59499 solubles assassinate a2ce40ed00000000
+58414 upsurge Phoenix 666cd31a00000000
+59512 Casablanca emasculating 57d533e800000000
+26962 Yenisei growing e4c44ce800000000
+3755 Avicenna demolishing f4cfffab00000000
+10311 instantaneous prized 9e8f108b00000000
+41216 dreamer punchy 5ce1b86100000000
+40670 Barber dowelled c3371f9600000000
+6353 unlearned eloping 9f8ed8db00000000
+54771 farm disturbingly 253f7f0c00000000
+43455 philosophizes paperback e76bdd8e00000000
+58091 caesareans Banjarmasin 8fe5623000000000
+41077 plaints conceited f0146b3600000000
+47365 debris drown 0b9ea61d00000000
+10135 huffier uniforms a23a02b100000000
+23234 replying repatriate c51cbd1300000000
+11450 minimum exampled 7dd7fc0700000000
+28980 subtitle Edinburgh f3b8317400000000
+10298 sailboats prying 594d94bf00000000
+48333 heterosexuals librettists f7c20da800000000
+54741 esters Annette d21798bd00000000
+34699 catechism cable 2b3b16db00000000
+12678 celebrities patientest 7fe7101000000000
+2480 autistics blockade b2fb4efa00000000
+14234 Azazel uncorrelated 4fba259000000000
+8583 pretender grows 0288003900000000
+32132 Cinderellas Everest 7292592400000000
+43566 traded spectacles 8756c45e00000000
+27717 elate spry 2d9510c700000000
+33771 declined contumely d1381a6800000000
+45449 bewildered refed 4d3138a800000000
+48546 orchestra snitch 1441e6fd00000000
+65349 unashamed terror e75a714500000000
+10783 squadding perspicacious b66d3c4700000000
+23600 croaks righteous d824d47a00000000
+24897 sunning budding 9b120d9200000000
+11302 fazing pinpricks d845f23600000000
+59473 confluent enfolded cea4eb7000000000
+5081 branches speechless e1adfd6500000000
+43679 limpid redwood f668363000000000
+43103 legislation Acheson 3bf5edb500000000
+57810 candelabra certainest ec51165700000000
+25919 xenon tonsillitis ec282e1900000000
+49158 subpoenaed Yellowstone 80568d2900000000
+15030 fleeter reconnoiters f7c5fed900000000
+12828 cerebellums payoffs 8b12256c00000000
+30462 independents archers 522ba1b300000000
+50444 nationalities telltale 73ae651100000000
+37992 magnetized camper 29b5335f00000000
+5249 Piedmont naiads 30f9371f00000000
+29915 airways Mexicans 2d916cd000000000
+4014 compelling snorkeled 847f2fdf00000000
+7080 swindlers corporals 5505039600000000
+61910 build outriders 73252e9a00000000
+49483 shanties tryouts 572bbc7b00000000
+48962 presets firestorms 89763cab00000000
+24032 clack Theresa 0882f1b100000000
+49908 Afghans speckles 9808adae00000000
+8309 Gila functional d4adf81800000000
+16585 localing innovative 6250768300000000
+53946 reapportioned spaniel 057b12d000000000
+29849 sequined corporations 38c8c49000000000
+36043 misquote anniversaries f844cad300000000
+58509 studded emulating 36812baa00000000
+18025 unclasps Minolta ab9bd81d00000000
+46623 upheld binging 34671cbe00000000
+62399 decompose sonatas 1eb43b0500000000
+61285 packet wan 814eec8700000000
+16030 heartaches maturation 2ce3b2ec00000000
+26741 banquets razed 0efc663200000000
+38398 caulked unassigned 90900cf600000000
+53377 demagogs branding a871a44d00000000
+32981 hydraulics fleshier 7c0b113900000000
+18206 tourists anyhow f6ad60d700000000
+52705 trickiness Poe e2eabfb300000000
+63160 rig lactate 8b687ce800000000
+4129 portability Kayla 66d7b93d00000000
+62274 laze dolloped 105297f500000000
+1222 palimony Nanchang 861848f800000000
+35741 chatters traumatizing a82bab8800000000
+48874 rugging Trujillo 993d8dab00000000
+56315 detoxing contour 2f24f84c00000000
+65215 stridently swamping a2d5563700000000
+51574 sensor tributes 072ba6db00000000
+59724 insurgences swaddled 813d0b9900000000
+25998 notations skillets 20b739ff00000000
+37111 rain Bridget 116af1d500000000
+54267 burdening Salerno f7143a9200000000
+16499 Cerf revived cdfcc87300000000
+24056 stuffy bourgeois 3b73408300000000
+4479 stars creak 9586e3ce00000000
+3410 mushes westerners 873027be00000000
+59737 Chappaquiddick repudiated e25a4d6f00000000
+29704 ids clomped 6924717300000000
+365 mullah drivel 45be961400000000
+1309 *7c5d15969f7568e89c49c58e00c342da43a7ab883b247051a1a3aa91 *39d833548294a077f4656d93b2206eb4 8e05bbce00000000
+2644 *a5ce954374c4e698d92d5a493adca9835da2a166ef484050119dda22ff00456ee74b1c8f27d4bb *f418127f4870a887c9106fc6782287a8f863c75b83117d5b7802c9e54aef0606f8492eb7312c ae7b6bc700000000
+63778 *52ec0f82328a66318e25 *b917c57e46455827e5264061e6 bb46ed7600000000
+64825 *1f84af8a3310e3fbefef9c *677d4531d1483ff8d697e04b27c46b691dbd1cc5db4e25a920da541d27831b265d5704 36c26ee300000000
+4008 *6f56e9f3e10351c24c0b83ce9a9d37696d68fffff1d1dda0630172b7727b9ead324c48 *4866ee9492fe0eacb57f21b6e0e75263679441751874c8c9019af9f010c59f1c056fe6fd923ede 8d4a708b00000000
+23588 *015cfcf26535 *92 1ae2fc3300000000
+19274 *8a39cbd8349fac1e9b712d221c73845d33b983e290bd0a6d8d648409cd45070b16ffb54f *c8f4eb9a92a28443b9dacda925f1b7 4179262d00000000
+14053 *9a3376f4bdb7b7e4ed7a2d2d7ac9cc70d9aed15dee6be59cdd *743a23c3beb32a8aefb417a42469300f85e809a5041bcf20ba478712bfdf3e09e1 15493ffc00000000
+2283 *8e7f2ee57118ebbb17583c6474da939f *8744dd2418200045101ab6f91f8bed7216310124388ad1 a24163ef00000000
+7490 *24351ed636f9eaed6ea6a726ce6501f44e1a5cafd092e25a0efe97 *d78488f97628ae748441 75bb8b6700000000
+1693 *8e *99c1435884e19ba407c1ae1f2947a91d76 918bea6d00000000
+61321 *7ad867e760f8d001b7877dce54bc8a99666d73fd11991d09ac5fcb313fcdaedf *5ef0f75f375950e566f6d757e622b19443741db8f72bf7e986e42babc2175b465d134d1493 6429604700000000
+44456 *fb *a2817784c806e7006677078e0a48dd989cc0 d91549ea00000000
+39270 *945b7e9a34810c8bdb401dce909fb608f92f34af2ac9 *dd61d728b60730134e08dedf1ec6959fd207af840b 6be4ee5500000000
+25617 *30c4bfd6a992 *887d62e9fd7b8ff6f7afa2c747b71ac521057e3beced0ce29fce7f13f134fa7e0394c3 8ec1fff500000000
+25362 *87ef1991e36468e84798b9c086adc681813cd46a *39 7a98f87200000000
+41450 *1f90ac5ca0d77ef58964c543e8 *f7f4ea3fcd802c8df66bb1ea42b4807c 714ebdbb00000000
+62262 *a7fc2db715ff2104dedf89ee * ffffffff00000000
+5735 *f64881709c999604d3ea15fd69d98e8cfa5e72f3d1d1 *c7d86e 60a5b57700000000
+28320 *b7a559b2033a3d097c1025bd92880e6459a2411323 *72c5844ef656 61a6f3f100000000
+24597 *edf57a35717fab9421 *36c8cba0a0bda1b7ff1890156e3c3c6a2f7ce0d78f93b1a9e4e7d332 f5c5eec000000000
+50069 *861af199434770e4 *ab2c86ea5e18 6929c46200000000
+17152 *02633a819035813235df214b90e84794047a9544c75fad0b2f4e2ffbfea82ff02243930b927bcc *cca6a8b77a36a98867630dcfdd1df2bcbe54110b4a2f96a0dbc93813405f9d6162a10ca5f531b8 053daa4e00000000
+27302 *8dd87c81e273ade84eb9f596448172b8900a3c12e8df402e421d9d466a7b262337e18f *c201da658943837370519fb8ecdac311df98e2083eb9efb24562e3b03fa5f0590fb20f95dc121a d7324d8500000000
+18241 *7574dc952049108be4a9f68c4c7269797d *33374b2bccb44f01a0c0807ca3c39430e7a9be182d133c0af30d478f80063c672f0a8efbc356d5 9c0ff46900000000
+54687 *b743e02b25bb1e69690968b7f0dd211c6a80cd0eebc058ff9e7f3f362aa4a8c39e66 *dd132868486576706e2c6f95429f162abe2eb0d83bd7478c870444522a4c1ffb16 1240aa6900000000
+27356 *2d509445f251f3408c1af500b7567d8a19d806c1 *a16e513770a3ba9337085e2f33afcc7d94576106a9aeef50ac190e16 47c3d52600000000
+23623 *539c7aa99a3c63c41b423a02e3da617dd3672a98250bc71627fd7d *d26eb59a1370a55a369df40f62c1499f177ef38df2d2ff387d736b3a95f7156664 911a5bbd00000000
+40851 *cb3fd90c0bc545d776af70eac7bd96 *8883c4e7eb 238ae6f700000000
+566 *c2729de86ca2b2c77d0c48e51f60e79d394b70ec5ea94aaa7796a10985402eb5 *a9e0678237db62bfb6920a6cd8adcc620a9c6a67858aa540a1 1253501b00000000
+63818 *9a32036bf4afff24fcd600661f817485c2 * ffffffff00000000
+49387 *68be012990bb2c0229478eace809f64417c462c0d752cefda5 *af89831b6dfc1679af 4d835db300000000
+13315 *c9f785ea92f01d424ed69cb03648699cab6c21dac680 *b525c1faf2dbb8719d1b3516f1d6c2cc98ab69541a258649 fcfb3cb100000000
+30206 *39 *49cd11d5fc6a2bdc68d3584a0e92cb78315bbe562a3cbab2 f3cd842b00000000
+45942 *23 *5c51e2d3 7ec68c4100000000
+22736 *ccc7d845466d61be9a5971e0a55de0b5b16e87ba121c6f44 *906bdcf51b6112dc1c05d5e6bb 29a174a400000000
+62601 *33ddeda859 *3c68d76cb96b1738a948d8d60da98769f426b6d50f86ec 2460976200000000
+37938 *7e2d0b94b312ce476bd61331f810f5956bab1baeed13ac0d069ab8b56406e3 *bad377af15de12127d 2741c2aa00000000
+16581 *ac312bee0d3fd8814be16489a4931313be *05aa3f9fe0c399e14470f1f64887b51fa38f9f 7e51874800000000
+15653 *0ce145500eae256a2c20ecbdbdf52b2a6b80e5737a670bb3d0839650910f9f1d20 *4c3ee52ebf1cd46848f77888f368b36c54b58742003b1047dd39656f07b42b680b1284b09dfa cb78e19100000000
+6277 *c6893f277f8f0ca84913a1d4c3b8a63993c472ead14e73c093b2 *aad25c24c5fc679cf33ffaa1fbff3915bda977ecf0b3a76f28195f d95c562a00000000
+7054 *407c804963b77c73f95fffc3a8062b56d923be0dd076a8667aebee294794d7 *715bda23f39964359bc0 c917544c00000000
+32870 *01f8df4d727b639bf4907cf0f1 *027d1ca4daf80d35461799f00972563b19b3689e1166a0121a9f0e0743bd0462 b0e6046c00000000
+56693 *842eaa9d85c6 *2d212d440015d1b9d95b7a8a153262dd5d80efcc 322e546700000000
+59726 *5e222dfa41 *91d25df8b529b0eefc2fd0f018dfed8589daba765b6f1f7d49e586c5b6c64719c1 a22eff9300000000
+38241 *e824d32fc615838ef51c4bc1aab3e325c649 *1c48cc9f476bd4874c229b110918bf939cd12bdf8da839a5d739b9e94b665badc8c8f0fabf1b a55bb29900000000
+18013 *5e *59522949fd17ef13aff50af1532f946a134deb919c 07c6b5dd00000000
+44143 *891ce9077a607e28ac9adca4993b8c23ff5be604258ee674201bd6a498796ed3 *7cfa0088 d3c262a400000000
+12822 *5ef8f765865e31a533b41670743fc83aabfa27f1e6159c23 *06d4d7161bff2d6fc498a9efbe5ce08b1e6c89470384d8bddfee 87f0e9fd00000000
+46758 *2dfcc3407bb658781dfcae9cbad6d89aa722c2 *0cdf55318582c20eef938ed223b0ba5c6e41 17c2786f00000000
+10214 *04d03a53ef7cffff48 *f842595d 518cd49000000000
+28171 *5028f20bfbb87c *bf9606cea79b8e3df637b35d7f12e9e3 88d6214400000000
+15346 *5f97f438c482cd73c50845e132ced839f46f6c2bc10619fe660fe5f8e612e59112163d07 *4ec58241e1ca3e80af25b65486e3746e8811acb3820f89958cb12c59f14e1dd02881b057c43e 6315032500000000
+53284 *39831a78c784063dd836b76ba5008f41 *e6cb8a2354674c53caef1a7afaca2c 8442677c00000000
+15557 *38dd2066f930eb5d9de73a7e3a1ccfe2266eeabdfb46df74c248e240a7469d26 *7722c0bfde0a4b899062b0 03d4743b00000000
+26467 *6640456d6682921d20edafd0959f69 *703856c1e2cf746cdbf324df 2e36fdbf00000000
+18831 *5c6cc0f0595b0936da9eae *de0c27052f7fceaa2ce94b5be3953370d6b3922c3d69bc98a4dba58b dc9fc1c200000000
+17507 *08a87475a5d017645a8d8e5d6f5c71ef1524ef05c508d953bf9433b97ef2 *1e663a22b77d8d3a1afaf2fe7c7f3c603befe445fa0136be65543a161a69a4dfe0483b26 98e4093f00000000
+9052 *0f11784ed432ff6133f146 *76a8125c0f011f78af6a1253d9179fc37942bbb7024f10543dcadbdd77a5ad40f5cd1a8f7b ec046d2f00000000
+14899 *24ec2cb26dee05334b1ae7299487f3abd6f0a06e26fc679845ebf9e9276102624dff7ed6d929a5 *e36834b238c392a1a40f780df3fa0e7ad1888f7a9d651829f5d3f3dcc08b872bd3b3fa1023 621357a000000000
+60053 * *a3023b5e194a59fd738651cc7d0d6ec0dfa6226da7 d42137f100000000
+22976 *3ca18b18899b494cb435adeb59627fe5a3877cce4b61860512d9c9067c73a42d2d3c7ae5 *fa898d4b150018579aa0ad7d 7314750600000000
+54496 *7de90322ef4eb737b35866c11aa1838c963ec143f607 *294b f3ea6e1b00000000
+52965 *25ffe151457ef83a7ce8f7118fa8b3ad2ccdb1ac *7e37d5fa79ca678951e54f1d30384cc2b954f50bd37c11 3ce3f05700000000
+33116 *0f2492016ce746fb299fb026edbc *36c67ec91ce160605a2f0ecb859479d13adea777a46b3c31 91e0411e00000000
+52698 *8eed6a1c5b1677767ba5a05e369e6794af6487c5a1ac67269bc3 *6fe97359fe6a0da4bcea8d 7fd98f4300000000
+34485 *4b745f538b *0dd33c806f0059a0c99b12016712855fe74b2535cf9c96e693ee 1b97719100000000
+18911 *b002322c7428088dacf4b2b5429c74f2dcbbb476532c1c4b3ff2 *684363a440ffa019ba4f07574edcf3 9532190d00000000
+62230 *18df730441280bfa37d5cb00d6b584822849f7fc76ac16e10d4aca571f *981495f01747dc76b242962cb67de72b5b680613f21c25897642f91e7b08de87ff6084 7882d19600000000
+7776 *69d695a0e1b2df4e022204 *302a916653e763b4e9cd08 09af45ac00000000
+10162 *e5228563fc247919 * ffffffff00000000
+27782 *2651fa304fbd8a3d1d7d51d2cbe16a *d46040ed2bdedebfc16b0e66f5c29f7c8ac6e90d1a5ae5fc4210b80e917ef1aa34 418a1d8f00000000
+58763 *81b580 *f79a6c07760f2e231a30a4a0b61263b461e35d91666f3a544da3ec62f2845d1c08 ed7e842c00000000
+19530 *add4d92f2beaa0319d437d06c19784904adcb6adccfe97def2c11ca80d1f6ade5989d78b *114768d7144cf59fb6 12bf011500000000
+56592 *e8bbb3bd29c387ff2337bbeec8705715b6f3 *f6aa600e77fe99b846dd977eef6a0bf1172deb5b76c6 59109efd00000000
+43466 *81191387b4da8895 *63196f0c3dad77f9ae0bf92a5410ee258df74c1e3203d5829adc01c4db085f1d01db0a 02f96ad800000000
+1553 *f99f7bb19eab125574b7c525 *a1623c4a5368fb1a922057 f436076900000000
+23802 *86e5994768b64d557faee7f9e5271316225367074ebb04a9ab07 *4f2057e6d90cb73453381e80b6c13ac579609e725bc351 fd0d1b2200000000
+19605 *8acb008de1d5fbf4250a15337d0914fae5d1b898 *f150b5f67972880c5f1acc365056474da8f2151bd9c928b9092e03e87e2390e856d2eb 9a15c2a000000000
+23265 *c3c5dfd37c72545f099c518bc9a3936288a586fecc17449861ec2dcc5b19 *886f9dd491628ca77e56e0e2d31106a4745a284eef63346f13205f16667dbdb86d1887 d7c2d17d00000000
+12048 *3b2dcfdac267dca916aaccab4f67b2929547a4cca9c81dac927485f3059001b6a63dbfbe5e *49d7298fd23847 325efab400000000
+55316 *4f3217a4 *949bebdf86945c541f36f8d213d8ecb7aa4c178eeee5d570 53679d4e00000000
+45626 *4c6778fd9519cce964c143d3 *85ae11168d33005c1e646e6db5a69392d76f03bdaa b3fc126e00000000
+27480 *5faac851a5a98807b5245d148a9a0b3ca9cef083f0 *538e81521f243409a220d6fab162c6451572a1157a289d78 f4d7b05100000000
+55366 *973b36254412ee469ec646fbca091cf1fd9daf0ca281923f55e39a *2e875b62b13509526e1d32cacd49b81296dc237fb6 97a7e88000000000
+43807 *bfab37ce52940dc483069b1ec45a0d1254df4a595c2df133ad0b00229f *c6658d06ccec 8d7f130d00000000
+51967 *ff233a3f6b3cb585999733788c4f31942b *7a4de9865f1af6facfaf7830107a0446e83b8c66af1cc104d2ad0e26c3dc5b 7b25b9c700000000
+57373 *39ba99dffb70bbc93e12522f6a2d5b42 * ffffffff00000000
+31665 *7bba2c155ac59470fe39d02ad88ef611c9c32ced62f64c9e2d90 *830925e2f3e9 3be9c40000000000
+30781 *43afdf60d4f7a31f03489d29a69f58517bf2914eaa1081d20a4efc4bc4bbb89272419507 *6bd448a0bec921cee8f171a796d1bcee1694296534253020cc3f4d835220 5750f66200000000
+50480 *bbb941b0a35c9c29f0ed6ee24d2efb28a4e8b58b3f6c6dcccb558a1c07 *cf4a131ac0cc4acb063088f2c891961d3b0882b647e5436e741317de 7cb6837b00000000
+32392 *556d187a7a698585de9a300151fd28df2d6c7fee3c421c43ea *da38f662c3798863aa5952a0bde5bdb412054e422eb9170d08240cda3d40013f8bcba414291fd6 d82f75d800000000
+44001 *f12efacf73213f9615155f *0542418b3e21c0495de8339aa0807490b83d63d8d01d3d2e78e71eaf85192a94633b579188 7631902000000000
+20767 *c09f94082dfa82592499c354051f02a0aa2157783169ce61a7c95cbfc4ce9595eeea92451577 *d4e8b12e7784b3a32ef2498a53f9854d 4118f9a200000000
+45816 *8b9b255a04a950a58c23 *e003f14b5aae14161c271d1368c2b7e9c10c0ce65872f5 a9856bbc00000000
+40573 *36ec723856946821242e33f0 *4db844e97166 a4acfcfd00000000
+62064 *b7e7ebbe01d95dc144b94aa186ef1f89efcb19f7184e7210cf4f94f6144133b6c73e1138a9f6f8 *7fbd7e67a04131ab0e75f00c56c4c5570f132096402498f300dfd12f85b2 ee1f988600000000
+19479 *3945dd7c00f94db5d75ebb1d94e45cd0da *3ce7d5ce8134f1949da3e51a0ca55435550c 5450f97000000000
+56282 *99f450ef73aa38fb49ad74e49f0476b8566ac561e6664d2906528a64 *413422ea581df62334f0a2e8558c0c74fc887698a6dacb 41bcfc1f00000000
+6822 *cd9615d919ce8dd5 *9686bce6cc80 62a898cb00000000

Added: branches/upstream/libauthen-dechpwd-perl/current/t/ad_ii_pp.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libauthen-dechpwd-perl/current/t/ad_ii_pp.t?rev=76320&op=file
==============================================================================
--- branches/upstream/libauthen-dechpwd-perl/current/t/ad_ii_pp.t (added)
+++ branches/upstream/libauthen-dechpwd-perl/current/t/ad_ii_pp.t Thu Jun 23 11:23:17 2011
@@ -1,0 +1,7 @@
+use warnings;
+use strict;
+
+do "t/setup_pp.pl" or die $@ || $!;
+do "t/ad_ii.t" or die $@ || $!;
+
+1;

Modified: branches/upstream/libauthen-dechpwd-perl/current/t/setup_pp.pl
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libauthen-dechpwd-perl/current/t/setup_pp.pl?rev=76320&op=diff
==============================================================================
--- branches/upstream/libauthen-dechpwd-perl/current/t/setup_pp.pl (original)
+++ branches/upstream/libauthen-dechpwd-perl/current/t/setup_pp.pl Thu Jun 23 11:23:17 2011
@@ -4,7 +4,7 @@
 no warnings "redefine";
 *XSLoader::load = sub {
 	die "XS loading disabled for Authen::DecHpwd"
-		if $_[0] eq "Authen::DecHpwd";
+		if ($_[0] || "") eq "Authen::DecHpwd";
 	goto &$orig_load;
 };
 




More information about the Pkg-perl-cvs-commits mailing list