Hello community, here is the log from the commit of package perl-pcsc for openSUSE:Factory checked in at 2014-12-05 21:04:31 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-pcsc (Old) and /work/SRC/openSUSE:Factory/.perl-pcsc.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-pcsc" Changes: -------- --- /work/SRC/openSUSE:Factory/perl-pcsc/perl-pcsc.changes 2011-09-23 12:39:38.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.perl-pcsc.new/perl-pcsc.changes 2014-12-05 21:04:23.000000000 +0100 @@ -1,0 +2,24 @@ +Wed Dec 3 21:21:44 UTC 2014 - [email protected] + +- update to version 1.4.13 +- corrected Source URL +- ran spec-cleaner +- removed patch: pcsc-perl-noSCardSetTimeout.patch (included in upstream since 1.4.11) + +- Changes since 1.4.10: + * PCSC.pm: Support Perl 5.16 + + Remove the warning: + defined(@array) is deprecated at /usr/lib/perl/5.16.3/Chipcard/PCSC.pm line 69. + (Maybe you should just omit the defined()?) + + Thanks to Viliam Pucik for the bug report + + * PCSC.xs: Also check for SVt_PVIV and not just SVt_IV. + * PCSC.xs, PCSC.pm, test.pl: Use lines of less than 80 columns + * PCSCperl.h: SCardCancelTransaction() is no more present in pcsc-lite + * PCSC.pm, PCSC.pod, PCSC.xs, PCSCperl.h: + SCardSetTimout is no more present in pcsc-lite > 1.6.4 + It was a pcsc-lite specific and deprecated function + +------------------------------------------------------------------- Old: ---- pcsc-perl-1.4.10.tar.bz2 pcsc-perl-noSCardSetTimeout.patch New: ---- pcsc-perl-1.4.13.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-pcsc.spec ++++++ --- /var/tmp/diff_new_pack.CIF5ca/_old 2014-12-05 21:04:24.000000000 +0100 +++ /var/tmp/diff_new_pack.CIF5ca/_new 2014-12-05 21:04:24.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package perl-pcsc # -# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -15,30 +15,26 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # -# norootforbuild - -Name: perl-pcsc %define cpan_name pcsc-perl +Name: perl-pcsc +Version: 1.4.13 +Release: 0 Summary: Perl interface to Smart Card Reader -Version: 1.4.10 -Release: 1 License: GPL-2.0+ Group: Development/Libraries/Perl -Url: http://search.cpan.org/dist/pcsc-perl/ -Source: %{cpan_name}-%{version}.tar.bz2 -# PATCH-FIX-OPENSUSE pcsc-perl-noSCardSetTimeout.patch [email protected] -- Fix for the latest pcsc-lite. -Patch: pcsc-perl-noSCardSetTimeout.patch -BuildRoot: %{_tmppath}/%{name}-%{version}-build +Url: http://ludovic.rousseau.free.fr/softwares/pcsc-perl/ +Source: http://ludovic.rousseau.free.fr/softwares/pcsc-perl/%{cpan_name}-%{version}.tar.bz2 BuildRequires: perl +BuildRequires: pkg-config +BuildRequires: pkgconfig(libpcsclite) +BuildRoot: %{_tmppath}/%{name}-%{version}-build %if 0%{?suse_version} > 1130 -%{perl_requires} BuildRequires: perl-macros +%{perl_requires} %else Requires: perl = %{perl_version} %endif -BuildRequires: pcsc-lite-devel pkg-config -Requires: libpcsclite1 %description PC/SC represents an abstraction layer to smart card readers. It @@ -47,15 +43,14 @@ %prep %setup -q -n %{cpan_name}-%{version} -%patch -p1 %build -%{__perl} Makefile.PL INSTALLDIRS=vendor OPTIMIZE="$RPM_OPT_FLAGS" -%{__make} %{?_smp_mflags} +perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}" +make %{?_smp_mflags} %check # No daemon and no card in the sysroot => no test. -#%{__make} test +#make %{?_smp_mflags} test %install %perl_make_install @@ -66,9 +61,6 @@ touch %{name}.files %endif -%clean -%{__rm} -rf $RPM_BUILD_ROOT - %files -f %{name}.files %defattr(-,root,root,-) %doc Changelog LICENCE README @@ -76,7 +68,7 @@ %{perl_vendorarch}/Chipcard %{perl_vendorarch}/auto/Chipcard %doc %{_mandir}/man3/* -/var/adm/perl-modules/%{name} +%{_localstatedir}/adm/perl-modules/%{name} %endif %changelog ++++++ pcsc-perl-1.4.10.tar.bz2 -> pcsc-perl-1.4.13.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pcsc-perl-1.4.10/Card/t/test.t new/pcsc-perl-1.4.13/Card/t/test.t --- old/pcsc-perl-1.4.10/Card/t/test.t 2006-12-09 14:05:02.000000000 +0100 +++ new/pcsc-perl-1.4.13/Card/t/test.t 2013-04-01 12:20:38.000000000 +0200 @@ -18,7 +18,7 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# $Id: test.t,v 1.1 2006-12-09 13:05:02 rousseau Exp $ +# $Id: test.t,v 1.1 2006/12/09 13:05:02 rousseau Exp $ use Test::More; use Chipcard::PCSC; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pcsc-perl-1.4.10/Changelog new/pcsc-perl-1.4.13/Changelog --- old/pcsc-perl-1.4.10/Changelog 2010-08-18 23:26:19.000000000 +0200 +++ new/pcsc-perl-1.4.13/Changelog 2013-04-01 12:31:44.000000000 +0200 @@ -1,4 +1,39 @@ -2010-08-18 Ludovic Rousseau <rousseau@debian> +2013-04-01 author <author@debian> + + * create_distrib.sh: + rcs2log has been moved in /usr/share/cvs/contrib/rcs2log + + * PCSC.pm: Support Perl 5.16 + + Remove the warning: + defined(@array) is deprecated at /usr/lib/perl/5.16.3/Chipcard/PCSC.pm line 69. + (Maybe you should just omit the defined()?) + + Thanks to Viliam Pucik for the bug report + +2011-03-06 author <author@debian> + + * README: release 1.4.12 + + * PCSC.xs: Also check for SVt_PVIV and not just SVt_IV. + + Fixes Debian bug #613722 "libpcsc-perl: GetStatusChange error after print" + + * PCSC.xs, PCSC.pm, test.pl: Use lines of less than 80 columns + +2010-10-27 author <author@debian> + + * create_distrib.sh: compress using bzip2 instead of gzip + + * README: release 1.4.11 + + * PCSCperl.h: SCardCancelTransaction() is no more present in pcsc-lite + + * PCSC.pm, PCSC.pod, PCSC.xs, PCSCperl.h: + SCardSetTimout is no more present in pcsc-lite > 1.6.4 + It was a pcsc-lite specific and deprecated function + +2010-08-18 author <author@debian> * PCSCperl.h: use SCARD_READERSTATE * instead of LPSCARD_READERSTATE since is not @@ -14,7 +49,7 @@ Use LPSCARD_READERSTATE instead of LPSCARD_READERSTATE_A since it is no more defined in pcsc-lite >= 1.6.2 -2010-06-30 Ludovic Rousseau <rousseau@debian> +2010-06-30 author <author@debian> * README: release 1.4.9 @@ -28,26 +63,26 @@ SCARD_W_INSERTED_CARD is no more defined in pcsc-lite 1.6.0 and then pcsc-perl failed to build. It was an error code specific to pcsc-lite. -2010-01-03 Ludovic Rousseau <rousseau@debian> +2010-01-03 author <author@debian> * Card/Card.pod: fix spelling error -2009-09-23 Ludovic Rousseau <rousseau@debian> +2009-09-23 author <author@debian> * README: release 1.4.8 * Card/Card.pod: Correct 3 bugs signaled by podchecker -2009-09-06 Ludovic Rousseau <rousseau@debian> +2009-09-06 author <author@debian> * PCSC.xs: PCSC.xs:853: warning: format ‘%d’ expects type ‘int’, but argument 2 has type ‘long unsigned int’ -2008-09-28 Ludovic Rousseau <rousseau@debian> +2008-09-28 author <author@debian> * PCSC.pod: example code for GetStatusChange() -2008-03-26 Ludovic Rousseau <rousseau@debian> +2008-03-26 author <author@debian> * Card/Card.pm: type: prefered -> preferred @@ -59,7 +94,7 @@ * README: release 1.4.7 -2008-03-12 Ludovic Rousseau <rousseau@debian> +2008-03-12 author <author@debian> * MANIFEST: remove removed files (merged) @@ -81,7 +116,7 @@ * PCSCperl.h: reorder the .h inclusion to have a default for Unix system -2007-03-07 Ludovic Rousseau <rousseau@debian> +2007-03-07 author <author@debian> * README: release 1.4.6 @@ -89,7 +124,7 @@ Thanks to Cyril Brulebois for the patch (Debian bug #413618) -2007-03-02 Ludovic Rousseau <rousseau@debian> +2007-03-02 author <author@debian> * README: release 1.4.5 @@ -104,11 +139,11 @@ #define LPTSTR LPSTR to avoid using deprecated types -2007-02-05 Ludovic Rousseau <rousseau@debian> +2007-02-05 author <author@debian> * PCSC.xs: remove some pcsc-lite specific constants -2006-12-09 Ludovic Rousseau <rousseau@debian> +2006-12-09 author <author@debian> * t/test.t: remove Chipcard::PCSC::Card tests since they are now done by Card/t/test.t @@ -117,33 +152,33 @@ * t/test.t, test.pl: use Test::More instead of ExtUtils::testlib -2006-10-10 Ludovic Rousseau <rousseau@debian> +2006-10-10 author <author@debian> * PCSC.pm: remove a debug print command -2006-10-08 Ludovic Rousseau <rousseau@debian> +2006-10-08 author <author@debian> * PCSC.pm: version 0.04 * PCSC.pm: ascii_to_array(): check that an hex number is exactly two characters -2006-08-12 Ludovic Rousseau <rousseau@debian> +2006-08-12 author <author@debian> * README: release 1.4.4 * Card/Card.pm, examples/gsm_directory.pl, examples/test_iso_error.pl, test/multiple_readers.pl, test/single_reader.pl, PCSC.pm, README.Unix, README.Windows, create_distrib.sh, test.pl: new $Id$ format -2006-05-30 Ludovic Rousseau <rousseau@debian> +2006-05-30 author <author@debian> * PCSC.xs, PCSCperl.h: add support of extended APDU -2006-05-16 Ludovic Rousseau <rousseau@debian> +2006-05-16 author <author@debian> * README: release 1.4.3 -2006-05-04 Ludovic Rousseau <rousseau@debian> +2006-05-04 author <author@debian> * PCSC.xs: use unsigned char for pbAtr[] to have "3B FA ..." instead of "3B FFFFFFFA ..." @@ -158,7 +193,7 @@ * PCSCperl.h: add some #include <> for Mac OS X -2004-08-06 Ludovic Rousseau <rousseau@debian> +2004-08-06 author <author@debian> * README: release 1.4.2 @@ -167,7 +202,7 @@ * Card/Card.pm: typo: informatin -> information -2004-07-04 Ludovic Rousseau <rousseau@debian> +2004-07-04 author <author@debian> * README: release 1.4.1 @@ -178,7 +213,7 @@ back to use pcsclite.h instead of PCSC/pcsclite.h for __linux__ but now use `pkg-config --cflags libpcsclite` at compilation -2004-06-29 Ludovic Rousseau <rousseau@debian> +2004-06-29 author <author@debian> * Card/Card.pm: ISO7816Error(): return an error if given $sw if not 5 chars long "xx xx" @@ -188,14 +223,14 @@ if you change a T=0 card with a T=1 (or vice versa) and try to exchange an APDU without disconnecting first. -2004-06-25 Ludovic Rousseau <rousseau@debian> +2004-06-25 author <author@debian> * Card/Card.pod: add en empty line * PCSCperl.h: - use PCSC/pcsclite.h - replace LPCSTR by LPCTSTR -2004-05-30 Ludovic Rousseau <rousseau@debian> +2004-05-30 author <author@debian> * README: release 1.4.0 @@ -207,7 +242,7 @@ * Card/Card.pm, Card/Card.pod, PCSC.xs, test.pl, test/single_reader.pl: add support of new SCardControl() API -2004-04-02 Ludovic Rousseau <rousseau@debian> +2004-04-02 author <author@debian> * README: release 1.3.1 @@ -218,7 +253,7 @@ * PCSC.xs, PCSCperl.h: use dynamic table and avoid using the deprecated PCSCLITE_MAX_CHANNELS -2004-01-18 Ludovic Rousseau <rousseau@debian> +2004-01-18 author <author@debian> * Card/Card.pm, Card/Card.pod: Use regular expression "90 [10]0" instead of "90 [1,0]0" @@ -226,7 +261,7 @@ * Card/Card.pm: allow commands to be in the form "00A40100020100" instead of "00 A4 01 00 02 01 00" -2003-12-13 Ludovic Rousseau <rousseau@debian> +2003-12-13 author <author@debian> * README: release 1.3.0 @@ -242,7 +277,7 @@ Comment out the tests for Control since the result is any thing depending on the reader and driver. -2003-12-11 Ludovic Rousseau <rousseau@debian> +2003-12-11 author <author@debian> * PCSC.xs: Windows PCSC has a different behavior and ATR and ReaderName buffers @@ -253,13 +288,13 @@ * Card/Card.pm, PCSC.xs, PCSCperl.h, test.pl, test/single_reader.pl: Add support for SCardControl with $out = $hContext->Control (\@in); -2003-12-10 Ludovic Rousseau <rousseau@debian> +2003-12-10 author <author@debian> * Card/Card.pod: some repaging. * Card/Card.pod: correct a typo -2003-12-09 Ludovic Rousseau <rousseau@debian> +2003-12-09 author <author@debian> * Card/Card.pm, Card/Card.pod: by default use T=0 | T=1 protocols instead of just T=0 @@ -271,7 +306,7 @@ * Makefile_win.PL: new file to support Windows platforms -2003-05-27 Ludovic Rousseau <rousseau@debian> +2003-05-27 author <author@debian> * README: release 1.2.2 @@ -285,7 +320,7 @@ * Makefile.PL: add PL_FILES line to avoid problem with Makefile_OSX.PL -2003-05-25 Ludovic Rousseau <rousseau@debian> +2003-05-25 author <author@debian> * README.OSX: addapted comment to the updated Makefile_OSX.PL @@ -297,7 +332,7 @@ * PCSC.pm: add constant definition (thanks to Ville Skytt� for report and patch) -2003-05-24 Ludovic Rousseau <rousseau@debian> +2003-05-24 author <author@debian> * README: release 1.2.1 @@ -319,11 +354,11 @@ * Card/Card.pm: Chipcard::PCSC::Utils.pm no longer exists -2003-05-10 Ludovic Rousseau <rousseau@debian> +2003-05-10 author <author@debian> * MANIFEST, Card/Card.pm, Card/Utils.pm: Utils.pm merged into Card.pm -2003-05-09 Ludovic Rousseau <rousseau@debian> +2003-05-09 author <author@debian> * Card/Card.pod: example are now in typewriter text @@ -360,28 +395,28 @@ * Card/Card.pm: some reformating -2003-05-06 Ludovic Rousseau <rousseau@debian> +2003-05-06 author <author@debian> * examples/gsm_directory.pl, t/test.t, test/multiple_readers.pl, test/single_reader.pl, Card/Card.pm, Card/Card.pod, MANIFEST, Makefile.PL, PCSC.pm, PCSC.pod, PCSC.xs, PCSCperl.h, test.pl: naming scheme migration from PCSC to Chipcard::PCSC -2002-11-07 Ludovic Rousseau <rousseau@debian> +2002-11-07 author <author@debian> * README: release 1.1.3 -2002-08-29 Ludovic Rousseau <rousseau@debian> +2002-08-29 author <author@debian> * PCSC.xs: add a pTHX_ cast to make it work with Perl 5.8 * PCSC.pm: add prototypes and contants definitions -2002-08-28 Ludovic Rousseau <rousseau@debian> +2002-08-28 author <author@debian> * README: release 1.1.2 * PCSCperl.h: link against libpcsclite.so.0 instead of libpcsclite.so -2002-05-16 lvictor <lvictor@debian> +2002-05-16 author <author@debian> * PCSC.xs: Modified error handling to use warn() instead of the more destructive @@ -392,14 +427,14 @@ * PCSC.pm: Added support for GetStatusChange and Cancel -2002-03-07 Ludovic Rousseau <rousseau@debian> +2002-03-07 author <author@debian> * README: release 1.1.1 * Card/Card.pm, Card/Card.pod, PCSC.pod, PCSC.xs: use bold for commands changed -> into -E<gt> (reverse patch :-) -2002-03-06 Ludovic Rousseau <rousseau@debian> +2002-03-06 author <author@debian> * PCSCperl.h: comment unused variable declarations @@ -415,7 +450,7 @@ * PCSC.xs: correct line wrap in licence text -2002-03-05 Ludovic Rousseau <rousseau@debian> +2002-03-05 author <author@debian> * README.Unix: Release 1.0.9 @@ -423,7 +458,7 @@ * Card/Card.pm: the minium APDU length is 4 bytes and not 5 -2001-10-18 Ludovic Rousseau <rousseau@debian> +2001-10-18 author <author@debian> * MANIFEST: added LICENCE @@ -445,12 +480,12 @@ compare the files in the directory with MANIFEST to check all the files will be included in the archive -2001-10-17 Ludovic Rousseau <rousseau@debian> +2001-10-17 author <author@debian> * create_distrib.sh: Added checks: directory name format, directory existance -2001-10-16 Ludovic Rousseau <rousseau@debian> +2001-10-16 author <author@debian> * MANIFEST: removed scriptor and gscriptor scripts (moved to pcsc-tools) @@ -469,28 +504,26 @@ * create_distrib.sh: create a nice package without Debian specific stuff and CVS directories -2001-10-10 lvictor <lvictor@debian> +2001-10-10 author <author@debian> * t/test.t: Initial check in * PCSC.pm: Added fake variable declarations/initialization to work with make test -2001-09-07 lvictor <lvictor@debian> +2001-09-07 author <author@debian> * examples/gsm_directory.pl: cosmetic chage in the header comment -2001-09-06 Ludovic Rousseau <rousseau@debian> +2001-09-06 author <author@debian> * examples/gsm_directory.pl: added CVS Id and Log fields * examples/gsm_directory.pl: typos in comments -2001-09-06 lvictor <lvictor@debian> - * examples/gsm_directory.pl: Added a license -2001-09-05 lvictor <lvictor@debian> +2001-09-05 author <author@debian> * examples/gsm.script, examples/gsm_directory.pl: Added some GSM11.11 demo scripts to gscriptor/scriptor as well as a @@ -501,8 +534,6 @@ Do not warn anymore when P3(len) is not related to the number of bytes to be transmitted after the APDU -2001-09-05 Ludovic Rousseau <rousseau@debian> - * test/single_reader.pl: Added -w flag to #!/usr/bin/perl and corrected some warnings @@ -521,7 +552,7 @@ * test.pl: Added CVS Log and Id fields Added GPL licence -2001-09-04 lvictor <lvictor@debian> +2001-09-04 author <author@debian> * test/multiple_readers.pl, test/single_reader.pl: Now using the real double typed magical scalar $PCSC::errno to report @@ -552,7 +583,7 @@ array_to_ascii() and ascii_to_array(). Thanks to this contributor for his help and time -2001-07-02 lvictor <lvictor@debian> +2001-07-02 author <author@debian> * PCSC.pod, test.pl: Made minor modifications (corrected some misspelled words in the doc and @@ -560,7 +591,7 @@ * examples/readfile.script: Initial checkin -2001-06-12 giraud <giraud@debian> +2001-06-12 author <author@debian> * README.OSX: Small README about the OS X install. @@ -572,12 +603,10 @@ * PCSCperl.h: Added support for MacOS X -2001-05-31 Ludovic Rousseau <rousseau@debian> +2001-05-31 author <author@debian> * Card/Card.pm, PCSC.pm: added hash-bang -2001-05-31 lvictor <lvictor@debian> - * Card/Card.pm, Card/Card.pod, Makefile.PL, PCSC.pm, PCSC.pod, PCSC.xs, PCSCperl.h, remarks.txt, test.pl, test/multiple_readers.pl, test/single_reader.pl, typemap: Initial import diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pcsc-perl-1.4.10/PCSC.pm new/pcsc-perl-1.4.13/PCSC.pm --- old/pcsc-perl-1.4.10/PCSC.pm 2010-08-18 23:05:41.000000000 +0200 +++ new/pcsc-perl-1.4.13/PCSC.pm 2013-04-01 12:23:33.000000000 +0200 @@ -1,4 +1,4 @@ -############################################################################### +########################################################################### # Authors : Lionel VICTOR <[email protected]> # <[email protected]> # Ludovic ROUSSEAU <[email protected]> @@ -24,9 +24,9 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -############################################################################### +########################################################################### -# $Id: PCSC.pm,v 1.22 2010-08-18 21:05:41 rousseau Exp $ +# $Id: PCSC.pm,v 1.25 2013/04/01 10:23:33 rousseau Exp $ package Chipcard::PCSC; @@ -66,7 +66,7 @@ confess ('usage Chipcard::PCSC::array_to_ascii($string)') unless defined $byte_array_ref; # return an empty string for an empty list - return "" if (! defined @{$byte_array_ref}); + return "" if (! @{$byte_array_ref}); my $return_string; my $tmpVal; @@ -156,18 +156,6 @@ return _Cancel ($self->{hContext}); } -sub SetTimeout($) -{ - my $self = shift; - confess ("wrong type") unless ref $self; - - my $timeout = shift; - # Defult time out is 30 seconds - $timeout = 30 unless (defined $timeout); - - return _SetTimeout ($self->{hContext}, $timeout); -} - sub DESTROY($) { my $self = shift; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pcsc-perl-1.4.10/PCSC.pod new/pcsc-perl-1.4.13/PCSC.pod --- old/pcsc-perl-1.4.10/PCSC.pod 2010-06-30 14:52:09.000000000 +0200 +++ new/pcsc-perl-1.4.13/PCSC.pod 2010-10-27 09:42:53.000000000 +0200 @@ -8,8 +8,6 @@ @ReadersList = $hContext->ListReaders (); - $hContext->SetTimeout($timeout); - $hContext->GetStatusChange(\@readers_states, $timeout); $apdu = Chipcard::PCSC::array_to_ascii(@apdu); @@ -177,23 +175,6 @@ $RecvData = $hCard->Transmit($SendData); print Chipcard::PCSC::array_to_ascii($RecvData); -=item * - B<$hContext-E<gt>SetTimeout( $timeout );> - -This method sets the working time that RPC uses when waiting for a -server. - -It returns true upon successful execution or false otherwise. - -C<$timeout> contains the new timeout value in seconds. - -=item * - B<$hContext-E<gt>SetTimeout();> - -This function is equivalent to: - - $hContext->SetTimeout(5); - =back =head1 ERROR HANDLING diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pcsc-perl-1.4.10/PCSC.xs new/pcsc-perl-1.4.13/PCSC.xs --- old/pcsc-perl-1.4.10/PCSC.xs 2010-08-18 23:05:41.000000000 +0200 +++ new/pcsc-perl-1.4.13/PCSC.xs 2011-03-06 18:17:04.000000000 +0100 @@ -1,4 +1,4 @@ -/******************************************************************************* +/************************************************************************** * Authors : Lionel VICTOR <[email protected]> * <[email protected]> * Ludovic ROUSSEAU <[email protected]> @@ -25,9 +25,9 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA * 02111-1307 USA * - ******************************************************************************/ + **************************************************************************/ - /* $Id: PCSC.xs,v 1.25 2010-08-18 21:05:41 rousseau Exp $ */ + /* $Id: PCSC.xs,v 1.28 2011-03-06 17:17:04 rousseau Exp $ */ #ifdef __cplusplus extern "C" { @@ -282,9 +282,9 @@ }; } -/*****************************************************************************/ -/***************** Double Typed Magical variable PCSC::errno *****************/ -/*****************************************************************************/ +/*************************************************************************/ +/*************** Double Typed Magical variable PCSC::errno ***************/ +/*************************************************************************/ /* This is an accessor to our internal double-typed magical variable */ I32 gnLastError_get (pTHX_ IV nID, SV *sv) { @@ -335,7 +335,7 @@ MODULE = Chipcard::PCSC PACKAGE = Chipcard::PCSC PROTOTYPES: ENABLE -#/////////////////////////////////////////////////////////////////////////////// +#/////////////////////////////////////////////////////////////////////////// bool _LoadPCSCLibrary () @@ -369,13 +369,8 @@ hConnect = (TSCardConnect) GET_FCT (ghDll, "SCardConnect"); hStatus = (TSCardStatus) GET_FCT (ghDll, "SCardStatus"); hGetStatusChange = (TSCardGetStatusChange) GET_FCT (ghDll, "SCardGetStatusChange"); - /* SetTimeout is not part of the original PCSC yet it is still important */ - hSetTimeout = (TSCardSetTimeout) GET_FCT (ghDll, "SCardSetTimeout"); #endif if ( -#ifndef WIN32 - !hSetTimeout || -#endif !hEstablishContext || !hReleaseContext || !hListReaders || !hConnect || !hReconnect || ! hDisconnect || !hBeginTransaction || !hEndTransaction || !hTransmit || !hStatus || !hGetStatusChange || !hCancel || !hControl) @@ -393,7 +388,7 @@ OUTPUT: RETVAL -#/////////////////////////////////////////////////////////////////////////////// +#/////////////////////////////////////////////////////////////////////////// #// EstablishContext () #// #// INPUT : @@ -424,7 +419,7 @@ sv_setiv (ST(0), hContext); } -#/////////////////////////////////////////////////////////////////////////////// +#/////////////////////////////////////////////////////////////////////////// #// ReleaseContext () #// #// INPUT : @@ -448,7 +443,7 @@ OUTPUT: RETVAL -#/////////////////////////////////////////////////////////////////////////////// +#/////////////////////////////////////////////////////////////////////////// #// ListReaders () #// #// INPUT : @@ -543,7 +538,7 @@ XSRETURN_UNDEF; } -#/////////////////////////////////////////////////////////////////////////////// +#/////////////////////////////////////////////////////////////////////////// #// Connect () #// #// INPUT : @@ -576,7 +571,7 @@ XPUSHs (sv_2mortal(newSViv(hCard))); XPUSHs (sv_2mortal(newSViv(dwActiveProtocol))); -#/////////////////////////////////////////////////////////////////////////////// +#/////////////////////////////////////////////////////////////////////////// #// Reconnect () #// #// INPUT : @@ -607,7 +602,7 @@ else ST(0) = &PL_sv_undef; -#/////////////////////////////////////////////////////////////////////////////// +#/////////////////////////////////////////////////////////////////////////// #// Disconnect () #// #// INPUT : @@ -632,7 +627,7 @@ OUTPUT: RETVAL -#/////////////////////////////////////////////////////////////////////////////// +#/////////////////////////////////////////////////////////////////////////// #// Status () #// #// INPUT : @@ -772,7 +767,7 @@ Safefree (szReaderName); Safefree (pbAtr); -#/////////////////////////////////////////////////////////////////////////////// +#/////////////////////////////////////////////////////////////////////////// #// Transmit () #// #// INPUT : @@ -892,7 +887,7 @@ /* Do not forget to free the dynamically allocated buffer */ Safefree (pbSendBuffer); -#/////////////////////////////////////////////////////////////////////////////// +#/////////////////////////////////////////////////////////////////////////// #// Control () #// #// INPUT : @@ -986,7 +981,7 @@ Safefree (pbSendBuffer); -#/////////////////////////////////////////////////////////////////////////////// +#/////////////////////////////////////////////////////////////////////////// #// BeginTransaction () #// #// INPUT : @@ -1009,7 +1004,7 @@ OUTPUT: RETVAL -#/////////////////////////////////////////////////////////////////////////////// +#/////////////////////////////////////////////////////////////////////////// #// EndTransaction () #// #// INPUT : @@ -1034,7 +1029,7 @@ OUTPUT: RETVAL -#/////////////////////////////////////////////////////////////////////////////// +#/////////////////////////////////////////////////////////////////////////// #// GetStatusChange () #// #// This @@ -1134,7 +1129,8 @@ /* Copy the current status into the struct */ if (psvCurrentState != NULL) { - if (SvTYPE(*psvCurrentState) == SVt_IV) { + if (SvTYPE(*psvCurrentState) == SVt_IV + || SvTYPE(*psvCurrentState) == SVt_PVIV) { // printf ("We got a current_state\n"); rgReaderStates_t[nCount].dwCurrentState = SvIV (*psvCurrentState); // printf ("which is : 0x%lX\n", rgReaderStates_t[nCount].dwCurrentState); @@ -1156,7 +1152,8 @@ /* Copy the event status into the struct */ if (psvEventState != NULL) { - if (SvTYPE(*psvEventState) == SVt_IV) { + if (SvTYPE(*psvEventState) == SVt_IV + || SvTYPE(*psvEventState) == SVt_PVIV) { rgReaderStates_t[nCount].dwEventState = SvIV (*psvEventState); } else { gnLastError = SCARD_E_INVALID_PARAMETER; @@ -1302,7 +1299,7 @@ -#/////////////////////////////////////////////////////////////////////////////// +#/////////////////////////////////////////////////////////////////////////// #// Cancel () #// #// This function cancels pending blocking requests from _GetStatusChange () @@ -1326,51 +1323,4 @@ OUTPUT: RETVAL -#/////////////////////////////////////////////////////////////////////////////// -#// SetTimeout () -#// -#// This function is only defined for PCSClite that is why we build a -#// stub after the #else processing command -#// -#// INPUT : -#// - $hContext -> -#// - $dwTimeout -> new timeout value in seconds -#// OUTPUT : -#// returns either true or false depending on successful completion - -#ifndef WIN32 - -unsigned long -_SetTimeout (hContext, dwTimeout) - unsigned long hContext; - unsigned long dwTimeout; - CODE: - - - gnLastError = hSetTimeout (hContext, dwTimeout); - - /* Then we check for an error */ - if (gnLastError != SCARD_S_SUCCESS) - RETVAL = FALSE; - else - RETVAL = TRUE; - OUTPUT: - RETVAL - -#else - -#// Win32 does not implement SetTimeout therefore we simply define -#// a stub. - -unsigned long -_SetTimeout (hContext, dwTimeout) - unsigned long hContext; - unsigned long dwTimeout; - CODE: - RETVAL = TRUE; - OUTPUT: - RETVAL - -#endif - # End of File # diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pcsc-perl-1.4.10/PCSCperl.h new/pcsc-perl-1.4.13/PCSCperl.h --- old/pcsc-perl-1.4.10/PCSCperl.h 2010-08-18 23:25:52.000000000 +0200 +++ new/pcsc-perl-1.4.13/PCSCperl.h 2010-10-27 10:04:20.000000000 +0200 @@ -26,7 +26,7 @@ * ******************************************************************************/ - /* $Id: PCSCperl.h,v 1.20 2010-08-18 21:25:52 rousseau Exp $ */ + /* $Id: PCSCperl.h,v 1.22 2010-10-27 08:04:20 rousseau Exp $ */ /****************************************************************************** * Contains basic definitions for a Perl wrapper to PCSC-lite. The code @@ -153,11 +153,9 @@ typedef LONG (WINAPI *TSCardStatus) ( SCARDHANDLE, LPTSTR, LPDWORD, LPDWORD, LPDWORD, LPBYTE, LPDWORD ); typedef LONG (WINAPI *TSCardGetStatusChange) ( SCARDHANDLE, DWORD, SCARD_READERSTATE *, DWORD ); typedef LONG (WINAPI *TSCardCancel) ( SCARDCONTEXT ); -typedef LONG (*TSCardSetTimeout) ( SCARDCONTEXT, DWORD ); /* these functions are not used */ /* -LONG SCardCancelTransaction( SCARDHANDLE ); LONG SCardListReaderGroups( SCARDCONTEXT, LPSTR, LPDWORD ); */ @@ -180,7 +178,6 @@ static TSCardStatus hStatus = NULL; static TSCardGetStatusChange hGetStatusChange = NULL; static TSCardCancel hCancel = NULL; -static TSCardSetTimeout hSetTimeout = NULL; /* Also declares some static variables */ static DLL_HANDLE ghDll = NULL; @@ -188,7 +185,6 @@ /* these functions are not used */ /* -TSCardCancelTransaction hCancelTransaction = NULL; TSCardListReaderGroups hListReaderGroups = NULL; */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pcsc-perl-1.4.10/README new/pcsc-perl-1.4.13/README --- old/pcsc-perl-1.4.10/README 2010-08-18 23:07:02.000000000 +0200 +++ new/pcsc-perl-1.4.13/README 2013-04-01 12:27:20.000000000 +0200 @@ -68,6 +68,17 @@ History: ======== +1.4.13 - 1 April 2013, Ludovic ROUSSEAU + - Fix a warning with Perl 5.16 + +1.4.12 - 6 March 2011, Ludovic ROUSSEAU + - Also check for SVt_PVIV and not just SVt_IV. + Fixes Debian bug #613722 "libpcsc-perl: GetStatusChange error after print" + +1.4.11 - 27 October 2010, Ludovic ROUSSEAU + - Do not use SCardSetTimout() since it is no more present in + pcsc-lite > 1.6.4 + 1.4.10 - 18 August 2010, Ludovic ROUSSEAU - Use LPSCARD_READERSTATE instead of LPSCARD_READERSTATE_A since it is no more defined in pcsc-lite >= 1.6.2 @@ -174,5 +185,5 @@ 1.0.8 - 18 Oct 2001, Ludovic ROUSSEAU -$Id: README,v 1.23 2010-08-18 21:07:02 rousseau Exp $ +$Id: README,v 1.25 2011/03/06 19:17:42 rousseau Exp $ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pcsc-perl-1.4.10/test.pl new/pcsc-perl-1.4.13/test.pl --- old/pcsc-perl-1.4.10/test.pl 2006-12-09 14:04:26.000000000 +0100 +++ new/pcsc-perl-1.4.13/test.pl 2013-04-01 12:21:04.000000000 +0200 @@ -17,7 +17,7 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# $Id: test.pl,v 1.14 2006-12-09 13:04:26 rousseau Exp $ +# $Id: test.pl,v 1.15 2011/03/06 15:51:42 rousseau Exp $ use Test::More; use Chipcard::PCSC; @@ -38,13 +38,13 @@ my $RecvData; my $sw; -#------------------------------------------------------------------------------- +#-------------------------------------------------------------------------- diag("Getting context:"); $hContext = new Chipcard::PCSC(); die ("Can't create the pcsc object: $Chipcard::PCSC::errno\n") unless (defined $hContext); ok(defined $hContext, "new Chipcard::PCSC()"); -#------------------------------------------------------------------------------- +#-------------------------------------------------------------------------- diag("Retrieving readers'list:"); @ReadersList = $hContext->ListReaders (); die ("Can't get readers' list: $Chipcard::PCSC::errno\n") unless (defined($ReadersList[0])); @@ -53,7 +53,7 @@ ok(defined($ReadersList[0]), "\$hContext->ListReaders ()"); diag(@ReadersList); -#------------------------------------------------------------------------------- +#-------------------------------------------------------------------------- diag("Getting status change:"); my (@readers_states, $reader_state, $timeout, $event_state); # create the list or readers to watch @@ -88,7 +88,7 @@ @StatusResult = $hContext->GetStatusChange(\@readers_states, $timeout); } -#------------------------------------------------------------------------------- +#-------------------------------------------------------------------------- diag("Connecting to the card:"); $hCard = new Chipcard::PCSC::Card ($hContext); die ("Can't create the reader object: $Chipcard::PCSC::errno\n") unless (defined($hCard)); @@ -105,7 +105,7 @@ $hCard->{dwProtocol}==$Chipcard::PCSC::SCARD_PROTOCOL_RAW, "Can understand the current protocol: $hCard->{dwProtocol}"); -#------------------------------------------------------------------------------- +#-------------------------------------------------------------------------- diag("Getting status:"); @StatusResult = $hCard->Status(); die ("Can't get status: $Chipcard::PCSC::errno\n") unless ($StatusResult[0]); @@ -114,12 +114,12 @@ diag("Current protocol: $StatusResult[2]"); diag("ATR: " . Chipcard::PCSC::array_to_ascii ($StatusResult[3])); -#------------------------------------------------------------------------------- +#-------------------------------------------------------------------------- diag("Initiating transaction:"); die ("Can't initiate transaction: $Chipcard::PCSC::errno\n") unless ($hCard->BeginTransaction()); diag($hCard->BeginTransaction(), "\$hCard->BeginTransaction()"); -#------------------------------------------------------------------------------- +#-------------------------------------------------------------------------- diag("Exchanging data:"); $SendData = Chipcard::PCSC::ascii_to_array ("00 A4 01 00 02 01 00"); $RecvData = $hCard->Transmit($SendData); @@ -128,7 +128,7 @@ diag(" Send -> " . Chipcard::PCSC::array_to_ascii ($SendData)); diag(" Recv <- " . Chipcard::PCSC::array_to_ascii ($RecvData)); -#------------------------------------------------------------------------------- +#-------------------------------------------------------------------------- diag("TransmitWithCheck:"); $SendData = "00 A4 00 00 02 3F 00"; # select DF 3F 00 # wait for ".. .." since we the SW will depend on the inserted card @@ -139,11 +139,11 @@ diag(" Send -> $SendData"); diag(" Recv <- $RecvData (SW: $sw)"); -#------------------------------------------------------------------------------- +#-------------------------------------------------------------------------- diag("ISO7816Error:"); diag("$sw: " . &Chipcard::PCSC::Card::ISO7816Error($sw)); -#------------------------------------------------------------------------------- +#-------------------------------------------------------------------------- # This test is commented since it is reader/driver specific and may do bad # things for another reader. Reader your reader and driver # specifications to know what data to use. @@ -156,23 +156,23 @@ #diag(" Send -> " . Chipcard::PCSC::array_to_ascii ($SendData)); #diag(" Recv <- " . Chipcard::PCSC::array_to_ascii ($RecvData)); -#------------------------------------------------------------------------------- +#-------------------------------------------------------------------------- diag("Ending transaction:"); die ("Can't terminate transaction: $Chipcard::PCSC::errno\n") unless ($hCard->EndTransaction($Chipcard::PCSC::SCARD_LEAVE_CARD)); ok($hCard->EndTransaction($Chipcard::PCSC::SCARD_LEAVE_CARD), "\$hCard->EndTransaction($Chipcard::PCSC::SCARD_LEAVE_CARD)"); -#------------------------------------------------------------------------------- +#-------------------------------------------------------------------------- diag("Disconnecting the card:"); $tmpVal = $hCard->Disconnect($Chipcard::PCSC::SCARD_LEAVE_CARD); die ("Can't disconnect the Chipcard::PCSC object: $Chipcard::PCSC::errno\n") unless $tmpVal; ok($tmpVal, "\$hCard->Disconnect"); -#------------------------------------------------------------------------------- +#-------------------------------------------------------------------------- diag("Closing card object:"); $hCard = undef; -#------------------------------------------------------------------------------- +#-------------------------------------------------------------------------- diag("Closing context:"); $hContext = undef; -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
