AFS

 view release on metacpan or  search on metacpan

CHANGES  view on Meta::CPAN

Version 2.6.3 (released 25 Oct 2012, revision 1142)
http://www.mpa-garching.mpg.de/~nog/perl/AFS-2.6.3.tar.gz

 NOTICE:
 * This release does not support AFS system libraries version 3.4 or
   version 3.5
 * This release does not support any features and interfaces from
   AFSPerl "version 1"

 User-visible changes:
 * added patch for OpenAFS to create "PIC" type system libraries on
   64-bit platforms
 * compiles with OpenAFS system libraries version 1.4.X on 32-bit and
   on 64-bit platforms
 * added installation description for 64-bit platforms
 * released the BOS methods
   - addhost
   - removehost
   - adduser
   - removeuser
   - setrestart
 * updated POD documentation of AFS::VLDB
   updated argument description for VOLUME in several
   methods: "(volume name or volume ID number)"
 * fixed method AFS::VOS->create
 * extended method AFS::VOS->dump: added "omitdir" option
 * added new method AFS::ACL->is_clean
 * modified AFS::ACL->cleanacl: uses method "is_clean" to check if
   there is anything to do
 * method AFS::VOS->listvolume provides also the values "copyDate",
   "backupDate", and "accessDate"
 * patched example for AFS::KTC_TOKEN->SetToken to handle several
   tokens
 * updated example scripts for all AFS modules


 Developer-visible changes:
 * rewrite of method AFS::VOS->backupsys
 * concatenate compiler flags in Makefile.PL
 * cleaned up compiler warnings
 * cleaned up memory allocation for the AFS::PTS, AFS::VOS, AFS::VLDB,
   and AFS::BOS modules
 * closed memory leaks because of multiple calls to "rx_Init" in the
   AFS::PTS, AFS::VOS, AFS::VLDB, and AFS::BOS modules
 * converted "integer" checks to "Scalar::Util(looks_like_number)"
   utility for all AFS::VOS methods and all AFS::VOS examples



Version 2.6.2 (released 31 Mar 2010, revision 961)
http://www.mpa-garching.mpg.de/~nog/perl/AFS-2.6.2.tar.gz

 NOTICE:
 * This release does not support AFS system libraries version 3.4 or
   version 3.5
 * Two of the hash key names returned by the VLDB method "listaddrs" have
   changed in version 2.4.1 (see POD doku AFS::VLDB)
 * This release does not support any features and interfaces from
   AFSPerl "version 1"

 User-visible changes:
 * compiles with OpenAFS system libraries version 1.4.12
 * fixed method AFS::VLDB->listvldb: fixed segmentation error
 * improved Makefile.PL script for Perl 5.10.0 and "threaded PIC" libraries
 * updated example scripts for the modules AFS::VLDB and AFS::VOS
 * improved test drivers for the modules AFS::VLDB and AFS::VOS;


 Developer-visible changes:
 * convertet all VERSION variables to "dotted decimal version" with leading "v"
 * changed argument type from "int" to "string" for method AFS::VLDB->removeaddr



Version 2.6.1 (released 17 Nov 2008, revision 906)
http://www.mpa-garching.mpg.de/~nog/perl/AFS-2.6.1.tar.gz

 NOTICE:
 * This release does not support AFS system libraries version 3.4 or
   version 3.5
 * Two of the hash key names returned by the VLDB method "listaddrs" have
   changed in version 2.4.1 (see POD doku AFS::VLDB)
 * This release does not support any features and interfaces from
   AFSPerl "version 1"

 User-visible changes:
 * fixed method AFS::KAS->getentry: fixed return value for passwd_reuse
 * fixed method AFS::VLDB->listvldb: fixed segmentation error
 * updated example scripts for the modules AFS::KAS
 * fixed Makefile.PL to recognize Transarc/IBM system libraries


 Developer-visible changes:
 * cleaned up Makefile.PL



Version 2.6.0 (released 27 Oct 2008, revision 888)
http://www.mpa-garching.mpg.de/~nog/perl/AFS-2.6.0.tar.gz

 NOTICE:
 * This release does not support AFS system libraries version 3.4 or
   version 3.5
 * Two of the hash key names returned by the VLDB method "listaddrs" have
   changed in version 2.4.1 (see POD doku AFS::VLDB)
 * This release does not support any features and interfaces from
   AFSPerl "version 1"

 User-visible changes:
 * compiles now with Perl 5.10.0
 * HTML documentation updated in order to include cross-references


 Developer-visible changes:
 * runs some tests only for module author
 * recognizes "automated tests" from CPAN testers



Version 2.4.1 (released 23 Oct 2008, revision 836/863)
http://www.mpa-garching.mpg.de/~nog/perl/AFS-2.4.1.tar.gz

 NOTICE:
 * This release does not support AFS system libraries version 3.4 or
   version 3.5
 * Two of the hash key names returned by the VLDB method "listaddrs" have
   changed (see POD doku AFS::VLDB)

 User-visible changes:
 * improved several test drivers;
 * updated example scripts for the modules AFS:VOS, AFS::VLDB,
   AFS::Cell, AFS::CM, AFS::FS, AFS::BOS, and AFS::KTC_EKEY
 * improved POD documentation for AFS::FS and AFS
 * POD documentation gets installed automatically
 * fixed method AFS::VLDB->listaddrs: lists now all servers
 * fixed method AFS::VOS->listvol: returns correct name and volid when
   volume is busy
 * fixed method AFS::VOS->listvldb: returns proper "release" strings
 * improved error messages when OpenAFS configuration files are missing
 * compiles now with OpenAFS system libraries newer than 1.4.4
 * improved Makefile.PL script to avoid interactive queries


 Developer-visible changes:
 * modified initialization of the "cell" variable for "fs" functions
 * cleaned up source code and error handling for "vos" functions, "vldb"
   functions, and "bos" functions



Version 2.4.0 (released 20 Feb 2006, revision 777)

 NOTICE:
 * This release does not support AFS system libraries version 3.4 or
   version 3.5

 User-visible changes:
 * implementation of most commands of the BOS command suite
 * POD documentation for the module AFS::BOS
 * compiles now with OpenAFS 1.4 system libraries
 * improved several test drivers;
 * fixed method AFS::VOS->listvolume: returns volume name when
   volume id number is given
 * patched function fs_getquota
 * improved POD documentation for AFS::VOS


 Developer-visible changes:
 * all unit test drivers are now using Test::More
 * modified the computing of the VERSION numbers
 * added dummy function "GetUInt32"
 * modified internal function set_code



Version 2.2.3 (released 17 Feb 2005, revision 679)

 NOTICE:
 * This release does not support AFS system libraries version 3.4 or
   version 3.5

 User-visible changes:
 * now supports Perl "threaded" version on several platforms
 * fixed method AFS::VOS->backupsys: fixed segmentation error and
   added some error handling
 * fixed method AFS::VLDB->delentry: added some error handling


 Developer-visible changes:
 * modified AFS.xs functions "SendFile", "ReceiveFile",
   and "DoSalvage" to handle "threaded" and "unthreaded" case
 * modified AFS.xs: added dummy functions for "threaded" case
 * redesigned the computing of the VERSION numbers



Version 2.2.2 (released 07 May 2004, revision 627)

 NOTICE:
 * This release does not support AFS system libraries version 3.4 or
   version 3.5
 * This release does ONLY work with Perl "unthreaded" versions (this
   is true for all versions 2.2.X)

 User-visible changes:
 * improved most test drivers;
 * included checks for Perl "unthreaded" version;


 Developer-visible changes:
 * modified AFS.xs function "isafs": patched error handling




Version 2.2.1 (released 09 March 2004, revision 594)

 NOTICE: This release does not support AFS system libraries
         version 3.4 or version 3.5

 User-visible changes:
 * fixed method DESTROY for the modules AFS::KAS, AFS::PTS,
   AFS::VLDB, and AFS::VOS; under certain circumstances they caused
   segmentation faults;


 Developer-visible changes:
 * none




Version 2.2.0 (released 03 February 2004, revision 571)

 NOTICE: This release does not support AFS system libraries
         version 3.4 or version 3.5

 User-visible changes:
 * implementation of the VOS command suite
 * POD documentation for the modules AFS::VLDB and AFS::VOS
 * changed VERSION numbering schema.  Beginning with version 2.2.0,
   the version number convention has been changed to a "dotted
   integer" scheme that is more commonly found in open source
   projects.  Maintenance versions of v2.2.0 will be released as
   v2.2.1, v2,2.2 etc.  The next development series following v2.2.0
   will be numbered v2.3.x, beginning with v2.3.0, and the next major
   production release following v2.2.0 will be v2.4.0.
 * improved Makefile.PL script
 * improved several test drivers by generalizing test cases.
 * extended POD documentation for AFS::CM; now enumerates the hash key
   names for the C structure "VolumeStatus".
 * support for the CM function 'getvolstats'
 * fixed kas->getentry method because the returned values for the
   packed variable were wrong


 Developer-visible changes:
 * rewrite of the DESTROY function for KAS and PTS
 * changed memcpy and bcopy to Copy for most XS functions
 * modified AFS.xs functions "myDisplayFormat", "myXDisplayFormat",
   and "myEnumerateEntry": patched several hash key names
 * patched pts->DESTROY method
 * new modules AFS::VLDB and AFS::VOS
 * changed VERSION numbering schema



Version 2.04 (never released, revision 297)

 User-visible changes:
 * fixed function "constant"


 Developer-visible changes:
 * switched test drivers to Test::More
 * rewrite of several test drivers
   ACL.t, CM.t, Cell.t, FS.t, Utils.t
 * VERSION variable now under SVN control
 * fixed function AUTOLOAD



Version 2.03 (released 15 October 2002, revision 230)

 User-visible changes:
 * Makefile.PL
   now we can recognize 'Devel' versions too


 Developer-visible changes:
 *closed memory leak because of wrong ref-counter in
  fs_getvolstats
  fs_getacl
  pts_listentry
  pts_PR_ListEntry
  pts_dumpentry
  pts_PR_DumpEntry
  kas_KAM_GetEntry
  kas_KAM_Debug
  kas_KAM_GetStats



Version 2.02 (released 12 July 2002, revision 221)

 User-visible changes:
 * fixed bug in method AFS::KAS->setfields resp. AFS::KAS->KAM_SetFields
   introduced in version 2.01


 Developer-visible changes:
 * modified 'typemap' file: added type 'uint32'



Version 2.01 (released 8 July 2002, revision 211)

 User-visible changes:
 * improved Makefile.PL script
 * new method '-AFS::KTC_TOKEN->FromString'


 Developer-visible changes:
 * removed perl-5.6 features from several modules for backward
   compatibility



Version 2.0 (released 2 July 2002, revision 184)

 User-visible changes:
 * compiles now with IBM AFS 3.6 and OpenAFS system libraries.  This
   module bundle compiles now with the AFS system libraries for IBM
   AFS version 3.4.x, 3.5.x, 3.6.x and with the AFS system libraries
   for all OpenAFS versions.
 * number of available platforms have increased. Since OpenAFS is
   running on an increasingly number of platforms so does the AFS Perl
   module.  Everywhere you can compile OpenAFS and Perl you should be
   able to install the ASF Perl module.
 * corrected Constructor Methods for all AFS classes.  The constructor
   methods for all AFS classes have been corrected to conform with the
   Perl OO conventions.
 * module structure has been changed.  In order to have clean Perl
   interfaces the AFS Perl code has been separated into several
   logical modules.  All modules have been implemented as OO classes.
 * compatibility mode for version 1.X.  All old variables and
   functions from version 1 are still available for compatibility, but
   are deprecated.  These cases have been marked in the documentation.
 * numerous example scripts for version 2.0
 * new functions 'XSVERSION', 'get_syslib_version', 'get_server_version',
   'getcrypt' and 'setcrypt'
 * new set of POD documentations for version 2.0



 Developer-visible changes:
 * compiles with OpenAFS
 * constructor methods for all AFS classes have been corrected to
   conform with the Perl OO conventions.
 * modified 'typemap' file: renamed following types
   AFS::PTS_SERVER         AFS::PTS
   AFS::KA_AUTHSERVER      AFS::KAS
   AFS::KTC_ENCRYPTIONKEY  AFS::KTC_EKEY




Version 1.11 (released 6 December 2001, revision 80)

 User-visible changes:
 * major rewrite of the Make.PL script
 * patched functions lsmount, rmmount (the values of an input argument
   got corrupted)
 * improved test driver for module AFS.pm
 * updated README

 Developer-visible changes:
 * ACL->length, ACL->nlength, ACL->keys, ACL->nkeys:
   keyword "keys" changed to CORE::keys


Version 1.10 (released 24 July 2001, revision 71)

 User-visible changes:
 * updated and corrected README


 Developer-visible changes:
 * VERSION variable now under CVS control



Version 1.09 (released 27 October 2000, revision 60)

 User-visible changes:
 * none


 Developer-visible changes:
 * applied Patches from Perl Pollution Portability V1.0007



Version 1.08 beta (released 16 June 1999, revision 57)

 User-visible changes:
 * added example for function ka_setfields


 Developer-visible changes:
 * none



Version 1.08 alpha (released 3 May 1999, revision 55)

 User-visible changes:
 * updated and corrected README


 Developer-visible changes:
 * none



Version 1.08 (released 27 April 1999, revision 54)

 User-visible changes:
 * patched function fs_setquota
 * added function flushcb


 Developer-visible changes:
 * none



Version 1.07 (released 8 April 1999, revision 44)

 User-visible changes:
 * added support for AIX machines
 * patched function fs_setquota


 Developer-visible changes:
 * none



Version 1.06 (released 6 April 1999, revision 40)

 User-visible changes:
 * renamed function 'access' to 'cm_access'
 * introduced variable AFS::VERSION
 * fixed bug in kas_KAM_SetFields


 Developer-visible changes:
 * fixed problems in internal_pts_new and in pts_name



Version 1.05 (dated 2 November 1996, revision 21)

 * oldest available version, extracted from the original tar 
   package, compiled by Roland Schemers

INSTALL  view on Meta::CPAN


This is the INSTALL file for the Perl extension module AFS (Version v2.6.3)
for the OpenAFS 32-bit version

README
    Read the README file first.


AVAILABILITY
    The latest version of the AFS module bundle is currently available at

        http://www.MPA-Garching.MPG.de/~nog/perl/AFS-<version>.tar.gz
        http://www.cpan.org/authors/id/N/NO/NOG/AFS-<version>.tar.gz


RECOMMENDATIONS
    It is highly recommended to place the installation directory in
    the AFS file system.  Otherwise most of the test cases
    ('make test') are skipped.


REQUIREMENTS
    Before you can build the AFS module bundle you need to have the
    following installed on your system:

        * Perl v5.10.0 or newer
        * C compiler
        * OpenAFS system libraries 32-bit version


BUILDING & INSTALLING
    Building the modules is straightforward. The AFS module bundle is
    distributed as a single gzipped tar archive file:

            AFS-<version>.tar.gz

    Unpack the archive to create an AFS installation directory:

        gunzip AFS-<version>.tar.gz
        tar xvf AFS-<version>.tar

    'cd' into that directory, make, test and install the modules.

    You have to specify the location of the AFS system
    libraries. While running the 'perl Makefile.PL' step you will be
    prompted for the location of the AFS system libraries.  If you
    want to avoid that query, you should specify the environment
    variable 'AFSPATH' before you start [1].

    If your AFS system type is not yet known by the make file because
    you can't run the "fs sysname" command, you can specify the
    environment variable 'AFS_SYSNAME' before you start [2].

    This is the sequence of commands to build the modules:

        cd AFS-<version>

        [1] this step is optional
        setenv AFSPATH 'path_to_the_AFS_system_libraries' # tcsh-shell
        export AFSPATH='path_to_the_AFS_system_libraries' # sh-shell

        [2] this step is optional
        setenv AFS_SYSNAME 'AFS_system_type'              # tcsh-shell
        export AFS_SYSNAME 'AFS_system_type'              # sh-shell

        perl Makefile.PL
             ---->  Which AFS system libraries should be used? [/usr/afsws]
        make
        make test
        make install
        make html   ;#(if you want to get the HTML documentation, see also next section)


PLATFORMS
    In the meantime I have only access to Linux machines. Therefore I
    have tested this version of the AFS module bundle only on the Linux
    platform with the following combinations

        OS             @sys         compiler    OpenAFS    Perl   (threaded/non-threaded)
        ---------------------------------------------------------------------------------
        Linux 32-bit   i386_linux26   gcc       1.4.10     5.10.0  non-threaded
                       i386_linux26   gcc       1.4.12     5.10.0  non-threaded
                       i386_linux26   gcc       1.4.14     5.10.0  non-threaded

                       i386_linux26   gcc       1.4.10     5.12.4  non-threaded
                       i386_linux26   gcc       1.4.12     5.12.4  non-threaded
                       i386_linux26   gcc       1.4.14     5.12.4  non-threaded

                       i386_linux26   gcc       1.4.10     5.14.2  non-threaded
                       i386_linux26   gcc       1.4.12     5.14.2  non-threaded
                       i386_linux26   gcc       1.4.14     5.14.2  non-threaded


                       i386_linux26   gcc       1.4.10     5.10.0  threaded
                       i386_linux26   gcc       1.4.12     5.10.0  threaded
                       i386_linux26   gcc       1.4.14     5.10.0  threaded

                       i386_linux26   gcc       1.4.10     5.12.4  threaded
                       i386_linux26   gcc       1.4.12     5.12.4  threaded
                       i386_linux26   gcc       1.4.14     5.12.4  threaded

                       i386_linux26   gcc       1.4.10     5.14.2  threaded
                       i386_linux26   gcc       1.4.12     5.14.2  threaded
                       i386_linux26   gcc       1.4.14     5.14.2  threaded


FEEDBACK
    If you are building the modules on another architecture I would
    appreciate a note to tell me how you got on. Although I am
    particularly interested to hear about any problems you encounter
    when building the system, I would still like to hear from you even
    if you don't.

    Things I particularly would like to know

       * The Operating system name and version, e.g. SunOS 4.1.3
       * Architecture, e.g. Solaris
       * C compiler, e.g. gcc
       * Where there any warnings/errors printed by the C compiler? If so
         please send the exact output if possible.
       * The Perl version
       * The version of the AFS system libraries


KNOWN PROBLEMS
    Under SunOS, several people have encountered problems while compiling
    and installing the AFS module bundle.


CURRENT AUTHOR
    Norbert E. Gruener <nog@MPA-Garching.MPG.de>


AUTHOR EMERITUS
    Roland Schemers <schemers@stanford.edu>


COPYRIGHT AND DISCLAIMER
    © 2001-2012 Norbert E. Gruener <nog@MPA-Garching.MPG.de>.
    All rights reserved.

    © 1994 Board of Trustees, Leland Stanford Jr. University.
    All rights reserved.

    This library is free software; you can redistribute it and/or modify
    it under the same terms as Perl itself.

    You should have received a copy of the Perl license along with
    Perl; see the file 'README' in Perl distribution.

    You should have received a copy of the GNU General Public License
    along with Perl; see the file 'COPYING'.  If not, write to the Free
    Software Foundation, 59 Temple Place - Suite 330, Boston, MA
    02111-1307, USA.

    You should have received a copy of the Artistic License
    along with Perl; see the file 'Artistic'.

    The original module is covered by the following copyright:
       Copyright (c) 1994 Board of Trustees, Leland Stanford Jr. University

       Redistribution and use in source and binary forms are permitted
       provided that the above copyright notice and this paragraph are
       duplicated in all such forms and that any documentation,
       advertising materials, and other materials related to such
       distribution and use acknowledge that the software was developed
       by Stanford University.  The name of the University may not be
       used to endorse or promote products derived from this software
       without specific prior written permission.  THIS SOFTWARE IS
       PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES,
       INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
       MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

INSTALL_64  view on Meta::CPAN


This is the INSTALL file for the Perl extension module AFS (Version v2.6.3)
for the OpenAFS 64-bit version

README
    Read the README file first.


AVAILABILITY
    The latest version of the AFS module bundle is currently available at

        http://www.MPA-Garching.MPG.de/~nog/perl/AFS-<version>.tar.gz
        http://www.cpan.org/authors/id/N/NO/NOG/AFS-<version>.tar.gz


RECOMMENDATIONS
    It is highly recommended to place the installation directory in
    the AFS file system.  Otherwise most of the test cases
    ('make test') are skipped.


REQUIREMENTS
    Before you can build the AFS module bundle you need to have the
    following installed on your system:

        * Perl v5.10.0 or newer
        * C compiler
        * OpenAFS system libraries 64-bit version (PIC type or standard)


WHAT TYPE OF OpenAFS SYSTEM LIBRARIES ARE NEEDED
    Depending on the installed Perl version you have to use the proper
    type of OpenAFS system libraries. If you have a "threaded" version
    of Perl, you have to link the AFS modules against the PIC type
    system libraries, for a "non-threaded" Perl you have to use the
    standard libraries.

    To find out what type of Perl you are using, just run the command:

       perl ./test_ptype

    If it says
                'Your Perl is 'Non-Threaded Perl'
    then you need the standard system libraries and you can skip to
    the next section (BUILDING & INSTALLING).

    If it says
                Your Perl is 'Threaded Perl'
    then you need the PIC type system libraries.  Unfortunately the
    PIC type system libraries are not created for OpenAFS 1.4.X by
    default.  Therefore you have to patch your OpenAFS installation.

    This is the sequence of commands to build the PIC type system libraries:

        gunzip AFS-<version>.tar.gz
        tar xvf AFS-<version>.tar
        cd openafs-1.4.X
        patch < AFS-<version>/openafs-pic.patch
        make clean
        make
        make install

    Now you have created the additional PIC type system libraries for
    OpenAFS 1.4.X and you can start building the AFS modules.


BUILDING & INSTALLING
    Building the modules is straightforward. The AFS module bundle is
    distributed as a single gzipped tar archive file:

            AFS-<version>.tar.gz

    Unpack the archive to create an AFS installation directory:

        gunzip AFS-<version>.tar.gz
        tar xvf AFS-<version>.tar

    'cd' into that directory, make, test and install the modules.

    You have to specify the location of the AFS system
    libraries. While running the 'perl Makefile.PL' step you will be
    prompted for the location of the AFS system libraries.  If you
    want to avoid that query, you should specify the environment
    variable 'AFSPATH' before you start [1].

    If your AFS system type is not yet known by the make file because
    you can't run the "fs sysname" command, you can specify the
    environment variable 'AFS_SYSNAME' before you start [2].

    This is the sequence of commands to build the modules:

        cd AFS-<version>

        [1] this step is optional
        setenv AFSPATH 'path_to_the_AFS_system_libraries' # tcsh-shell
        export AFSPATH='path_to_the_AFS_system_libraries' # sh-shell

        [2] this step is optional
        setenv AFS_SYSNAME 'AFS_system_type'              # tcsh-shell
        export AFS_SYSNAME 'AFS_system_type'              # sh-shell

        perl Makefile.PL
             ---->  Which AFS system libraries should be used? [/usr/afsws]
        make
        make test
        make install
        make html   ;#(if you want to get the HTML documentation, see also next section)


PLATFORMS
    In the meantime I have only access to Linux machines.  Therefore I
    have tested this version of the AFS module bundle only on the
    Linux platform with the following combinations

        OS             @sys         compiler    OpenAFS    Perl   (threaded/non-threaded)
        ---------------------------------------------------------------------------------
        Linux 64-bit   amd64_linux26  gcc       1.4.11     5.10.0  non-threaded
                       amd64_linux26  gcc       1.4.12     5.10.0  non-threaded

                       amd64_linux26  gcc       1.4.12(*)  5.10.0  threaded
                                                (*) => modified libraries libafsrpc.a
                                                       and libafsauthent.a


FEEDBACK
    If you are building the modules on another architecture I would
    appreciate a note to tell me how you got on. Although I am
    particularly interested to hear about any problems you encounter
    when building the system, I would still like to hear from you even
    if you don't.

    Things I particularly would like to know

       * The Operating system name and version, e.g. SunOS 4.1.3
       * Architecture, e.g. Solaris
       * C compiler, e.g. gcc
       * Where there any warnings/errors printed by the C compiler? If so
         please send the exact output if possible.
       * The Perl version
       * The version of the AFS system libraries


KNOWN PROBLEMS
    Under SunOS, several people have encountered problems while compiling
    and installing the AFS module bundle.


CURRENT AUTHOR
    Norbert E. Gruener <nog@MPA-Garching.MPG.de>


AUTHOR EMERITUS
    Roland Schemers <schemers@stanford.edu>


COPYRIGHT AND DISCLAIMER
    © 2001-2012 Norbert E. Gruener <nog@MPA-Garching.MPG.de>.
    All rights reserved.

    © 1994 Board of Trustees, Leland Stanford Jr. University.
    All rights reserved.

    This library is free software; you can redistribute it and/or modify
    it under the same terms as Perl itself.

    You should have received a copy of the Perl license along with
    Perl; see the file 'README' in Perl distribution.

    You should have received a copy of the GNU General Public License
    along with Perl; see the file 'COPYING'.  If not, write to the Free
    Software Foundation, 59 Temple Place - Suite 330, Boston, MA
    02111-1307, USA.

    You should have received a copy of the Artistic License
    along with Perl; see the file 'Artistic'.

    The original module is covered by the following copyright:
       Copyright (c) 1994 Board of Trustees, Leland Stanford Jr. University

       Redistribution and use in source and binary forms are permitted
       provided that the above copyright notice and this paragraph are
       duplicated in all such forms and that any documentation,
       advertising materials, and other materials related to such
       distribution and use acknowledge that the software was developed
       by Stanford University.  The name of the University may not be
       used to endorse or promote products derived from this software
       without specific prior written permission.  THIS SOFTWARE IS
       PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES,
       INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
       MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

LICENCES/Artistic  view on Meta::CPAN





			 The "Artistic License"

				Preamble

The intent of this document is to state the conditions under which a
Package may be copied, such that the Copyright Holder maintains some
semblance of artistic control over the development of the package,
while giving the users of the package the right to use and distribute
the Package in a more-or-less customary fashion, plus the right to make
reasonable modifications.

Definitions:

	"Package" refers to the collection of files distributed by the
	Copyright Holder, and derivatives of that collection of files
	created through textual modification.

	"Standard Version" refers to such a Package if it has not been
	modified, or has been modified in accordance with the wishes
	of the Copyright Holder as specified below.

	"Copyright Holder" is whoever is named in the copyright or
	copyrights for the package.

	"You" is you, if you're thinking about copying or distributing
	this Package.

	"Reasonable copying fee" is whatever you can justify on the
	basis of media cost, duplication charges, time of people involved,
	and so on.  (You will not be required to justify it to the
	Copyright Holder, but only to the computing community at large
	as a market that must bear the fee.)

	"Freely Available" means that no fee is charged for the item
	itself, though there may be fees involved in handling the item.
	It also means that recipients of the item may redistribute it
	under the same conditions they received it.

1. You may make and give away verbatim copies of the source form of the
Standard Version of this Package without restriction, provided that you
duplicate all of the original copyright notices and associated disclaimers.

2. You may apply bug fixes, portability fixes and other modifications
derived from the Public Domain or from the Copyright Holder.  A Package
modified in such a way shall still be considered the Standard Version.

3. You may otherwise modify your copy of this Package in any way, provided
that you insert a prominent notice in each changed file stating how and
when you changed that file, and provided that you do at least ONE of the
following:

    a) place your modifications in the Public Domain or otherwise make them
    Freely Available, such as by posting said modifications to Usenet or
    an equivalent medium, or placing the modifications on a major archive
    site such as uunet.uu.net, or by allowing the Copyright Holder to include
    your modifications in the Standard Version of the Package.

    b) use the modified Package only within your corporation or organization.

    c) rename any non-standard executables so the names do not conflict
    with standard executables, which must also be provided, and provide
    a separate manual page for each non-standard executable that clearly
    documents how it differs from the Standard Version.

    d) make other distribution arrangements with the Copyright Holder.

4. You may distribute the programs of this Package in object code or
executable form, provided that you do at least ONE of the following:

    a) distribute a Standard Version of the executables and library files,
    together with instructions (in the manual page or equivalent) on where
    to get the Standard Version.

    b) accompany the distribution with the machine-readable source of
    the Package with your modifications.

    c) give non-standard executables non-standard names, and clearly
    document the differences in manual pages (or equivalent), together
    with instructions on where to get the Standard Version.

    d) make other distribution arrangements with the Copyright Holder.

5. You may charge a reasonable copying fee for any distribution of this
Package.  You may charge any fee you choose for support of this
Package.  You may not charge a fee for this Package itself.  However,
you may distribute this Package in aggregate with other (possibly
commercial) programs as part of a larger (possibly commercial) software
distribution provided that you do not advertise this Package as a
product of your own.  You may embed this Package's interpreter within
an executable of yours (by linking); this shall be construed as a mere
form of aggregation, provided that the complete Standard Version of the
interpreter is so embedded.

6. The scripts and library files supplied as input to or produced as
output from the programs of this Package do not automatically fall
under the copyright of this Package, but belong to whoever generated
them, and may be sold commercially, and may be aggregated with this
Package.  If such scripts or library files are aggregated with this
Package via the so-called "undump" or "unexec" methods of producing a
binary executable image, then distribution of such an image shall
neither be construed as a distribution of this Package nor shall it
fall under the restrictions of Paragraphs 3 and 4, provided that you do
not represent such an executable image as a Standard Version of this
Package.

7. C subroutines (or comparably compiled subroutines in other
languages) supplied by you and linked into this Package in order to
emulate subroutines and variables of the language defined by this
Package shall not be considered part of this Package, but are the
equivalent of input as in Paragraph 6, provided these subroutines do
not change the language in any way that would cause it to fail the
regression tests for the language.

8. Aggregation of this Package with a commercial distribution is always
permitted provided that the use of this Package is embedded; that is,
when no overt attempt is made to make this Package's interfaces visible
to the end user of the commercial distribution.  Such use shall not be
construed as a distribution of this Package.

9. The name of the Copyright Holder may not be used to endorse or promote
products derived from this software without specific prior written permission.

10. THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.

				The End

LICENCES/COPYING  view on Meta::CPAN

		    GNU GENERAL PUBLIC LICENSE
		       Version 2, June 1991

 Copyright (C) 1989, 1991 Free Software Foundation, Inc.
                          59 Temple Place - Suite 330, Boston, MA
                          02111-1307, USA.
 Everyone is permitted to copy and distribute verbatim copies
 of this license document, but changing it is not allowed.

			    Preamble

  The licenses for most software are designed to take away your
freedom to share and change it.  By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users.  This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it.  (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.)  You can apply it to
your programs, too.

  When we speak of free software, we are referring to freedom, not
price.  Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.

  To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.

  For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have.  You must make sure that they, too, receive or can get the
source code.  And you must show them these terms so they know their
rights.

  We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.

  Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software.  If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.

  Finally, any free program is threatened constantly by software
patents.  We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary.  To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.

  The precise terms and conditions for copying, distribution and
modification follow.

		    GNU GENERAL PUBLIC LICENSE
   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

  0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License.  The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language.  (Hereinafter, translation is included without limitation in
the term "modification".)  Each licensee is addressed as "you".

Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope.  The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.

  1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.

You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.

  2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:

    a) You must cause the modified files to carry prominent notices
    stating that you changed the files and the date of any change.

    b) You must cause any work that you distribute or publish, that in
    whole or in part contains or is derived from the Program or any
    part thereof, to be licensed as a whole at no charge to all third
    parties under the terms of this License.

    c) If the modified program normally reads commands interactively
    when run, you must cause it, when started running for such
    interactive use in the most ordinary way, to print or display an
    announcement including an appropriate copyright notice and a
    notice that there is no warranty (or else, saying that you provide
    a warranty) and that users may redistribute the program under
    these conditions, and telling the user how to view a copy of this
    License.  (Exception: if the Program itself is interactive but
    does not normally print such an announcement, your work based on
    the Program is not required to print an announcement.)

These requirements apply to the modified work as a whole.  If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works.  But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.

Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.

In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.

  3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:

    a) Accompany it with the complete corresponding machine-readable
    source code, which must be distributed under the terms of Sections
    1 and 2 above on a medium customarily used for software interchange; or,

    b) Accompany it with a written offer, valid for at least three
    years, to give any third party, for a charge no more than your
    cost of physically performing source distribution, a complete
    machine-readable copy of the corresponding source code, to be
    distributed under the terms of Sections 1 and 2 above on a medium
    customarily used for software interchange; or,

    c) Accompany it with the information you received as to the offer
    to distribute corresponding source code.  (This alternative is
    allowed only for noncommercial distribution and only if you
    received the program in object code or executable form with such
    an offer, in accord with Subsection b above.)

The source code for a work means the preferred form of the work for
making modifications to it.  For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable.  However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.

If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.

  4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License.  Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.

  5. You are not required to accept this License, since you have not
signed it.  However, nothing else grants you permission to modify or
distribute the Program or its derivative works.  These actions are
prohibited by law if you do not accept this License.  Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.

  6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions.  You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.

  7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License.  If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all.  For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.

If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.

It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices.  Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.

This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.

  8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded.  In such case, this License incorporates
the limitation as if written in the body of this License.

  9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time.  Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.

Each version is given a distinguishing version number.  If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation.  If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.

  10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission.  For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this.  Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.

			    NO WARRANTY

  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.

  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.

		     END OF TERMS AND CONDITIONS

	Appendix: How to Apply These Terms to Your New Programs

  If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.

  To do so, attach the following notices to the program.  It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.

    <one line to give the program's name and a brief idea of what it does.>
    Copyright (C) 19yy  <name of author>

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

Also add information on how to contact you by electronic and paper mail.

If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:

    Gnomovision version 69, Copyright (C) 19yy name of author
    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
    This is free software, and you are welcome to redistribute it
    under certain conditions; type `show c' for details.

The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License.  Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.

You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary.  Here is a sample; alter the names:

  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
  `Gnomovision' (which makes passes at compilers) written by James Hacker.

  <signature of Ty Coon>, 1 April 1989
  Ty Coon, President of Vice

This General Public License does not permit incorporating your program into
proprietary programs.  If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library.  If this is what you want to do, use the GNU Library General
Public License instead of this License.

LICENCES/IBM-LICENCE  view on Meta::CPAN

   IBM Public License Version 1.0
   
   THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS IBM
   PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF
   THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
   
   1. DEFINITIONS
   
   "Contribution" means:
   a) in the case of International Business Machines Corporation ("IBM"),
       the Original Program, and
       
   b) in the case of each Contributor,
       
   i) changes to the Program, and
       
   ii) additions to the Program;
       
   where such changes and/or additions to the Program originate from and
       are distributed by that particular Contributor. A Contribution
       'originates' from a Contributor if it was added to the Program by
       such Contributor itself or anyone acting on such Contributor's
       behalf. Contributions do not include additions to the Program
       which: (i) are separate modules of software distributed in
       conjunction with the Program under their own license agreement,
       and (ii) are not derivative works of the Program.
       
   "Contributor" means IBM and any other entity that distributes the
   Program.
   
   "Licensed Patents " mean patent claims licensable by a Contributor
   which are necessarily infringed by the use or sale of its Contribution
   alone or when combined with the Program.
   
   "Original Program" means the original version of the software
   accompanying this Agreement as released by IBM, including source code,
   object code and documentation, if any.
   
   "Program" means the Original Program and Contributions.
   
   "Recipient" means anyone who receives the Program under this
   Agreement, including all Contributors.
   
   2. GRANT OF RIGHTS
   a) Subject to the terms of this Agreement, each Contributor hereby
       grants Recipient a non-exclusive, worldwide, royalty-free
       copyright license to reproduce, prepare derivative works of,
       publicly display, publicly perform, distribute and sublicense the
       Contribution of such Contributor, if any, and such derivative
       works, in source code and object code form.
       
   b) Subject to the terms of this Agreement, each Contributor hereby
       grants Recipient a non-exclusive, worldwide, royalty-free patent
       license under Licensed Patents to make, use, sell, offer to sell,
       import and otherwise transfer the Contribution of such
       Contributor, if any, in source code and object code form. This
       patent license shall apply to the combination of the Contribution
       and the Program if, at the time the Contribution is added by the
       Contributor, such addition of the Contribution causes such
       combination to be covered by the Licensed Patents. The patent
       license shall not apply to any other combinations which include
       the Contribution. No hardware per se is licensed hereunder.
       
   c) Recipient understands that although each Contributor grants the
       licenses to its Contributions set forth herein, no assurances are
       provided by any Contributor that the Program does not infringe the
       patent or other intellectual property rights of any other entity.
       Each Contributor disclaims any liability to Recipient for claims
       brought by any other entity based on infringement of intellectual
       property rights or otherwise. As a condition to exercising the
       rights and licenses granted hereunder, each Recipient hereby
       assumes sole responsibility to secure any other intellectual
       property rights needed, if any. For example, if a third party
       patent license is required to allow Recipient to distribute the
       Program, it is Recipient's responsibility to acquire that license
       before distributing the Program.
       
   d) Each Contributor represents that to its knowledge it has sufficient
       copyright rights in its Contribution, if any, to grant the
       copyright license set forth in this Agreement.
       
   3. REQUIREMENTS
   
   A Contributor may choose to distribute the Program in object code form
   under its own license agreement, provided that:
   a) it complies with the terms and conditions of this Agreement; and
       
   b) its license agreement:
       
   i) effectively disclaims on behalf of all Contributors all warranties
       and conditions, express and implied, including warranties or
       conditions of title and non-infringement, and implied warranties
       or conditions of merchantability and fitness for a particular
       purpose;
       
   ii) effectively excludes on behalf of all Contributors all liability
       for damages, including direct, indirect, special, incidental and
       consequential damages, such as lost profits;
       
   iii) states that any provisions which differ from this Agreement are
       offered by that Contributor alone and not by any other party; and
       
   iv) states that source code for the Program is available from such
       Contributor, and informs licensees how to obtain it in a
       reasonable manner on or through a medium customarily used for
       software exchange.
       
   When the Program is made available in source code form:
   a) it must be made available under this Agreement; and
       
   b) a copy of this Agreement must be included with each copy of the
       Program.
       
   Each Contributor must include the following in a conspicuous location
   in the Program:
   
   Copyright © {date here}, International Business Machines Corporation
       and others. All Rights Reserved.
       
   In addition, each Contributor must identify itself as the originator
   of its Contribution, if any, in a manner that reasonably allows
   subsequent Recipients to identify the originator of the Contribution.
   
   4. COMMERCIAL DISTRIBUTION
   
   Commercial distributors of software may accept certain
   responsibilities with respect to end users, business partners and the
   like. While this license is intended to facilitate the commercial use
   of the Program, the Contributor who includes the Program in a
   commercial product offering should do so in a manner which does not
   create potential liability for other Contributors. Therefore, if a
   Contributor includes the Program in a commercial product offering,
   such Contributor ("Commercial Contributor") hereby agrees to defend
   and indemnify every other Contributor ("Indemnified Contributor")
   against any losses, damages and costs (collectively "Losses") arising
   from claims, lawsuits and other legal actions brought by a third party
   against the Indemnified Contributor to the extent caused by the acts
   or omissions of such Commercial Contributor in connection with its
   distribution of the Program in a commercial product offering. The
   obligations in this section do not apply to any claims or Losses
   relating to any actual or alleged intellectual property infringement.
   In order to qualify, an Indemnified Contributor must: a) promptly
   notify the Commercial Contributor in writing of such claim, and b)
   allow the Commercial Contributor to control, and cooperate with the
   Commercial Contributor in, the defense and any related settlement
   negotiations. The Indemnified Contributor may participate in any such
   claim at its own expense.
   
   For example, a Contributor might include the Program in a commercial
   product offering, Product X. That Contributor is then a Commercial
   Contributor. If that Commercial Contributor then makes performance
   claims, or offers warranties related to Product X, those performance
   claims and warranties are such Commercial Contributor's responsibility
   alone. Under this section, the Commercial Contributor would have to
   defend claims against the other Contributors related to those
   performance claims and warranties, and if a court requires any other
   Contributor to pay any damages as a result, the Commercial Contributor
   must pay those damages.
   
   5. NO WARRANTY
   
   EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
   PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
   KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY
   WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
   OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
   responsible for determining the appropriateness of using and
   distributing the Program and assumes all risks associated with its
   exercise of rights under this Agreement, including but not limited to
   the risks and costs of program errors, compliance with applicable
   laws, damage to or loss of data, programs or equipment, and
   unavailability or interruption of operations.
   
   6. DISCLAIMER OF LIABILITY
   
   EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR
   ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
   INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
   WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
   DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
   HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
   
   7. GENERAL
   
   If any provision of this Agreement is invalid or unenforceable under
   applicable law, it shall not affect the validity or enforceability of
   the remainder of the terms of this Agreement, and without further
   action by the parties hereto, such provision shall be reformed to the
   minimum extent necessary to make such provision valid and enforceable.
   
   If Recipient institutes patent litigation against a Contributor with
   respect to a patent applicable to software (including a cross-claim or
   counterclaim in a lawsuit), then any patent licenses granted by that
   Contributor to such Recipient under this Agreement shall terminate as
   of the date such litigation is filed. In addition, If Recipient
   institutes patent litigation against any entity (including a
   cross-claim or counterclaim in a lawsuit) alleging that the Program
   itself (excluding combinations of the Program with other software or
   hardware) infringes such Recipient's patent(s), then such Recipient's
   rights granted under Section 2(b) shall terminate as of the date such
   litigation is filed.
   
   All Recipient's rights under this Agreement shall terminate if it
   fails to comply with any of the material terms or conditions of this
   Agreement and does not cure such failure in a reasonable period of
   time after becoming aware of such noncompliance. If all Recipient's
   rights under this Agreement terminate, Recipient agrees to cease use
   and distribution of the Program as soon as reasonably practicable.
   However, Recipient's obligations under this Agreement and any licenses
   granted by Recipient relating to the Program shall continue and
   survive.
   
   IBM may publish new versions (including revisions) of this Agreement
   from time to time. Each new version of the Agreement will be given a
   distinguishing version number. The Program (including Contributions)
   may always be distributed subject to the version of the Agreement
   under which it was received. In addition, after a new version of the
   Agreement is published, Contributor may elect to distribute the
   Program (including its Contributions) under the new version. No one
   other than IBM has the right to modify this Agreement. Except as
   expressly stated in Sections 2(a) and 2(b) above, Recipient receives
   no rights or licenses to the intellectual property of any Contributor
   under this Agreement, whether expressly, by implication, estoppel or
   otherwise. All rights in the Program not expressly granted under this
   Agreement are reserved.
   
   This Agreement is governed by the laws of the State of New York and
   the intellectual property laws of the United States of America. No
   party to this Agreement will bring a legal action under this Agreement
   more than one year after the cause of action arose. Each party waives
   its rights to a jury trial in any resulting litigation.

LICENCES/Stanford-LICENCE  view on Meta::CPAN

   Copyright (c) 1994 Board of Trustees, Leland Stanford Jr. University
  
   Redistribution and use in source and binary forms are permitted
   provided that the above copyright notice and this paragraph are
   duplicated in all such forms and that any documentation,
   advertising materials, and other materials related to such
   distribution and use acknowledge that the software was developed
   by Stanford University.  The name of the University may not be used 
   to endorse or promote products derived from this software without 
   specific prior written permission.
   THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   

MANIFEST  view on Meta::CPAN

CHANGES
examples/README
examples/v2/acl/apply
examples/v2/acl/ascii2rights
examples/v2/acl/cleanacl
examples/v2/acl/copyacl
examples/v2/acl/crights
examples/v2/acl/is_clean
examples/v2/acl/modifyacl
examples/v2/acl/retrieve
examples/v2/acl/rights2ascii
examples/v2/base/constant
examples/v2/base/error_test
examples/v2/bos/addhost
examples/v2/bos/addkey
examples/v2/bos/adduser
examples/v2/bos/blockscanner
examples/v2/bos/constructor
examples/v2/bos/create
examples/v2/bos/delete
examples/v2/bos/exec
examples/v2/bos/getlog
examples/v2/bos/getrestart
examples/v2/bos/getrestricted
examples/v2/bos/listhosts
examples/v2/bos/listkeys
examples/v2/bos/listusers
examples/v2/bos/prune
examples/v2/bos/removehost
examples/v2/bos/removekey
examples/v2/bos/removeuser
examples/v2/bos/restart
examples/v2/bos/salvage
examples/v2/bos/setauth
examples/v2/bos/setcellname
examples/v2/bos/setrestart
examples/v2/bos/setrestricted
examples/v2/bos/shutdown
examples/v2/bos/start
examples/v2/bos/startup
examples/v2/bos/status
examples/v2/bos/stop
examples/v2/cell/configdir
examples/v2/cell/expandcell
examples/v2/cell/getcellinfo
examples/v2/cell/localcell
examples/v2/cell/whichcell
examples/v2/cell/wscell
examples/v2/cm/checkconn
examples/v2/cm/checkvolumes
examples/v2/cm/cm_access
examples/v2/cm/flush
examples/v2/cm/flushcb
examples/v2/cm/flushvolume
examples/v2/cm/getcacheparms
examples/v2/cm/getcellstatus
examples/v2/cm/getcrypt
examples/v2/cm/getfid
examples/v2/cm/getvolstats
examples/v2/cm/pioctl
examples/v2/cm/setcachesize
examples/v2/cm/setcellstatus
examples/v2/cm/setcrypt
examples/v2/fs/examine
examples/v2/fs/getquota
examples/v2/fs/isafs
examples/v2/fs/lsmount
examples/v2/fs/mkmount
examples/v2/fs/rmmount
examples/v2/fs/setquota
examples/v2/fs/whereis
examples/v2/kas/Authenticate
examples/v2/kas/AuthServerConn
examples/v2/kas/ChangePassword
examples/v2/kas/constructor
examples/v2/kas/create
examples/v2/kas/debug
examples/v2/kas/delete
examples/v2/kas/examine
examples/v2/kas/getentry
examples/v2/kas/getstats
examples/v2/kas/GetToken
examples/v2/kas/listentry
examples/v2/kas/randomkey
examples/v2/kas/setfields
examples/v2/kas/setpassword
examples/v2/kas/SingleServerConn
examples/v2/ktck/des_string_to_key
examples/v2/ktck/ReadPassword
examples/v2/ktck/StringToKey
examples/v2/ktck/UserReadPassword
examples/v2/ktcp/constructor
examples/v2/ktcp/ListTokens
examples/v2/ktcp/ParseLoginName
examples/v2/ktct/ForgetAllTokens
examples/v2/ktct/FromString
examples/v2/ktct/GetAdminToken
examples/v2/ktct/GetAuthToken
examples/v2/ktct/GetServerToken
examples/v2/ktct/GetToken
examples/v2/ktct/SetToken
examples/v2/ktct/tokens
examples/v2/ktct/UserAuthenticateGeneral
examples/v2/pts/adduser
examples/v2/pts/ascii2ptsaccess
examples/v2/pts/chid
examples/v2/pts/chown
examples/v2/pts/constructor
examples/v2/pts/creategroup
examples/v2/pts/createuser
examples/v2/pts/delete
examples/v2/pts/dumpentry
examples/v2/pts/getcps
examples/v2/pts/id
examples/v2/pts/ismember
examples/v2/pts/listentry
examples/v2/pts/listmax
examples/v2/pts/members
examples/v2/pts/name
examples/v2/pts/owned
examples/v2/pts/PR_AddToGroup
examples/v2/pts/PR_ChangeEntry
examples/v2/pts/PR_Delete
examples/v2/pts/PR_DumpEntry
examples/v2/pts/PR_GetCPS
examples/v2/pts/PR_IDToName
examples/v2/pts/PR_INewEntry
examples/v2/pts/PR_IsAMemberOf
examples/v2/pts/PR_ListElements
examples/v2/pts/PR_ListEntry
examples/v2/pts/PR_ListMax
examples/v2/pts/PR_ListOwned
examples/v2/pts/PR_NameToID
examples/v2/pts/PR_NewEntry
examples/v2/pts/PR_RemoveFromGroup
examples/v2/pts/PR_WhereIsIt
examples/v2/pts/ptsaccess2ascii
examples/v2/pts/removeuser
examples/v2/pts/rename
examples/v2/pts/setaccess
examples/v2/pts/setgroupquota
examples/v2/pts/setmax
examples/v2/pts/whereisit
examples/v2/utils/get_server_version
examples/v2/utils/get_syslib_version
examples/v2/utils/setpag
examples/v2/utils/sysname
examples/v2/utils/unlog
examples/v2/utils/XSVERSION
examples/v2/vldb/addsite
examples/v2/vldb/changeloc
examples/v2/vldb/constructor
examples/v2/vldb/delentry
examples/v2/vldb/delgroups
examples/v2/vldb/listaddrs
examples/v2/vldb/listvldb
examples/v2/vldb/listvldbentry
examples/v2/vldb/lock
examples/v2/vldb/removeaddr
examples/v2/vldb/remsite
examples/v2/vldb/syncserv
examples/v2/vldb/syncvldb
examples/v2/vldb/syncvldbentry
examples/v2/vldb/unlock
examples/v2/vldb/unlockvldb
examples/v2/vos/backup
examples/v2/vos/backupsys
examples/v2/vos/constructor
examples/v2/vos/create
examples/v2/vos/dump
examples/v2/vos/examine
examples/v2/vos/listpart
examples/v2/vos/listvol
examples/v2/vos/listvolume
examples/v2/vos/move
examples/v2/vos/offline
examples/v2/vos/online
examples/v2/vos/partinfo
examples/v2/vos/release
examples/v2/vos/remove
examples/v2/vos/rename
examples/v2/vos/restore
examples/v2/vos/setquota
examples/v2/vos/status
examples/v2/vos/zap
INSTALL
INSTALL_64
LICENCES/Artistic
LICENCES/COPYING
LICENCES/IBM-LICENCE
LICENCES/Stanford-LICENCE
Makefile.PL
MANIFEST			This list of files
openafs-pic.patch
pod/v2/afsperl.pod
pod/v2/afsperlacl.pod
pod/v2/afsperlbase.pod
pod/v2/afsperlbos.pod
pod/v2/afsperlcell.pod
pod/v2/afsperlcm.pod
pod/v2/afsperlfs.pod
pod/v2/afsperlkas.pod
pod/v2/afsperlktck.pod
pod/v2/afsperlktcp.pod
pod/v2/afsperlktct.pod
pod/v2/afsperlpts.pod
pod/v2/afsperlutils.pod
pod/v2/afsperlvldb.pod
pod/v2/afsperlvos.pod
pod/v2/Makefile.inp
pod/v2/README
pod/v2/zpod2html
README
src/ACL/ACL.pm
src/ACL/Makefile.PL
src/ACL/t/ACL.t
src/AFS.pm
src/AFS.xs
src/afs_prototypes.h
src/BOS/BOS.pm
src/BOS/Makefile.PL
src/BOS/t/BOS.t
src/Cell/Cell.pm
src/Cell/Makefile.PL
src/Cell/t/Cell.t
src/CM/CM.pm
src/CM/Makefile.PL
src/CM/t/CM.t
src/com_err.h
src/FS/FS.pm
src/FS/Makefile.PL
src/FS/t/FS.t
src/inc/Test/Builder.pm
src/inc/Test/More.pm
src/inc/version.pm
src/inc/version/vpp.pm
src/KAS/KAS.pm
src/KAS/Makefile.PL
src/KAS/t/KAS.t
src/KTC_EKEY/KTC_EKEY.pm
src/KTC_EKEY/Makefile.PL
src/KTC_EKEY/t/KTC_EKEY.t
src/KTC_PRINCIPAL/KTC_PRINCIPAL.pm
src/KTC_PRINCIPAL/Makefile.PL
src/KTC_PRINCIPAL/t/KTC_PRINCIPAL.t
src/KTC_TOKEN/KTC_TOKEN.pm
src/KTC_TOKEN/Makefile.PL
src/KTC_TOKEN/t/KTC_TOKEN.t
src/Makefile.PL
src/ppport.h
src/PTS/Makefile.PL
src/PTS/PTS.pm
src/PTS/t/PTS.t
src/t/AFS.t
src/t/pod.t
src/typemap
src/Utils/Makefile.PL
src/Utils/t/Utils.t
src/Utils/Utils.pm
src/VLDB/Makefile.PL
src/VLDB/t/VLDB.t
src/VLDB/VLDB.pm
src/VOS/Makefile.PL
src/VOS/t/VOS.t
src/VOS/VOS.pm
test_ptype
TODO
META.yml                                 Module YAML meta-data (added by MakeMaker)
META.json                                Module JSON meta-data (added by MakeMaker)

META.json  view on Meta::CPAN

{
   "abstract" : "Perl interface to AFS programming APIs",
   "author" : [
      "Norbert E Gruener <nog@MPA-Garching.MPG.de>"
   ],
   "dynamic_config" : 1,
   "generated_by" : "ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.142690",
   "license" : [
      "unknown"
   ],
   "meta-spec" : {
      "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
      "version" : "2"
   },
   "name" : "AFS",
   "no_index" : {
      "directory" : [
         "t",
         "inc"
      ]
   },
   "prereqs" : {
      "build" : {
         "requires" : {
            "ExtUtils::MakeMaker" : "0"
         }
      },
      "configure" : {
         "requires" : {
            "ExtUtils::MakeMaker" : "0"
         }
      },
      "runtime" : {
         "requires" : {}
      }
   },
   "release_status" : "stable",
   "version" : "v2.6.4"
}

META.yml  view on Meta::CPAN

---
abstract: 'Perl interface to AFS programming APIs'
author:
  - 'Norbert E Gruener <nog@MPA-Garching.MPG.de>'
build_requires:
  ExtUtils::MakeMaker: '0'
configure_requires:
  ExtUtils::MakeMaker: '0'
dynamic_config: 1
generated_by: 'ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.142690'
license: unknown
meta-spec:
  url: http://module-build.sourceforge.net/META-spec-v1.4.html
  version: '1.4'
name: AFS
no_index:
  directory:
    - t
    - inc
requires: {}
version: v2.6.4

Makefile.PL  view on Meta::CPAN

use ExtUtils::MakeMaker;
# See lib/ExtUtils/MakeMaker.pm for details of how to influence
# the contents of the Makefile that is written.

use lib qw(./src/inc);

# provide the POD documentation
mkdir('./lib');
mkdir('./lib/AFS');
system("cp ./pod/v2/afsperl.pod lib/AFS.pod");
system("cp ./pod/v2/afsperlacl.pod lib/AFS/ACL.pod");
system("cp ./pod/v2/afsperlbase.pod lib/AFS/Base.pod");
system("cp ./pod/v2/afsperlbos.pod lib/AFS/BOS.pod");
system("cp ./pod/v2/afsperlcell.pod lib/AFS/Cell.pod");
system("cp ./pod/v2/afsperlcm.pod lib/AFS/CM.pod");
system("cp ./pod/v2/afsperlfs.pod lib/AFS/FS.pod");
system("cp ./pod/v2/afsperlkas.pod lib/AFS/KAS.pod");
system("cp ./pod/v2/afsperlktck.pod lib/AFS/KTC_EKEY.pod");
system("cp ./pod/v2/afsperlktcp.pod lib/AFS/KTC_PRINCIPAL.pod");
system("cp ./pod/v2/afsperlktct.pod lib/AFS/KTC_TOKEN.pod");
system("cp ./pod/v2/afsperlpts.pod lib/AFS/PTS.pod");
system("cp ./pod/v2/afsperlutils.pod lib/AFS/Utils.pod");
system("cp ./pod/v2/afsperlvldb.pod lib/AFS/VLDB.pod");
system("cp ./pod/v2/afsperlvos.pod lib/AFS/VOS.pod");

my $VERSION = '2.6.4';
WriteMakefile(
              'NAME'         => 'AFS',
              'VERSION'      => $VERSION,
              ($] >= 5.005 ?
                   ('AUTHOR'   => 'Norbert E Gruener <nog@MPA-Garching.MPG.de>',
                    'ABSTRACT' => 'Perl interface to AFS programming APIs',
                   ) : () ),
              'realclean'  => {FILES => "Makefile.bak lib" },
             );

sub MY::postamble {
        '
html:
	cp ./pod/v2/Makefile.inp lib/Makefile
	cp ./pod/v2/zpod2html lib/
	cd lib && $(MAKE) html

';
}

README  view on Meta::CPAN


This is the README file for the Perl extension module bundle AFS (Version v2.6.4)


DESCRIPTION
    The AFS module bundle is a dynamically loadable extension to Perl.
    It gives the AFS user and AFS administrator access to many of the
    AFS programming APIs, allowing them to make these calls directly from
    Perl, rather than processing the output of a command.


WHAT'S NEW?
    Version v2.6.4 is just a bug fixing release.
    For more details, please see the file named 'CHANGES' which should
    have been included in the AFS module distribution.


RESTRICTIONS
    This release
        * does not support Transarc/IBM AFS system libraries version
          3.4 or version 3.5 !!!
        * does not support features and styles from Perl AFS module
          "major version 1"


DEPRECATION
    The module AFS::KAS is deprecated and will be removed in version v2.8.0


INSTALLATION
    If you want to install the AFS module bundle on a 32-bit platform
    read the 'INSTALL' file. For installation on a 64-bit platform read
    the 'INSTALL_64' file.


DOCUMENTATION
    The POD documentation is automatically installed to the system wide
    Perl documentation.  It is readable with the 'perldoc' utility.

    For information about HTML documentation, please check the file
    'pod/v2/README'.


EXAMPLES
    The 'examples' directory contains some simple examples how to use
    the AFS modules.  However I do not guarantee these scripts to
    work.


COMPATIBILITY
    This release does NOT support any features and interfaces from Perl
    AFS modules major version 1.


CAVEATS
    A few methods from the AFS command suite BOS are not yet
    released.  For details, please see 'AFS::BOS.pod'.


BUGS
    Development questions, bug reports, and patches should be sent to
    Norbert E Gruener <nog@MPA-Garching.MPG.de>.

    Bug reports are also welcome at
    <http://rt.cpan.org/NoAuth/Bugs.html?Dist=AFS>.

    When reporting bugs/problems please include information about
    operating system version, perl version, AFS version, AFS module
    version. Comments and suggestions are always welcome.


CURRENT AUTHOR
    Norbert E. Gruener <nog@MPA-Garching.MPG.de>


AUTHOR EMERITUS
    Roland Schemers <schemers@stanford.edu>


CREDITS
    See 'AFS.pod' for details.


COPYRIGHT AND DISCLAIMER
    © 2001-2014 Norbert E. Gruener <nog@MPA-Garching.MPG.de>.
    All rights reserved.

    © 1994 Board of Trustees, Leland Stanford Jr. University.
    All rights reserved.

    This library is free software; you can redistribute it and/or modify
    it under the same terms as Perl itself.

    You should have received a copy of the Perl license along with
    Perl; see the file 'README' in Perl distribution.

    You should have received a copy of the GNU General Public License
    along with Perl; see the file 'COPYING'.  If not, write to the Free
    Software Foundation, 59 Temple Place - Suite 330, Boston, MA
    02111-1307, USA.

    You should have received a copy of the Artistic License
    along with Perl; see the file 'Artistic'.

    The original module is covered by the following copyright:
       Copyright (c) 1994 Board of Trustees, Leland Stanford Jr. University

       Redistribution and use in source and binary forms are permitted
       provided that the above copyright notice and this paragraph are
       duplicated in all such forms and that any documentation,
       advertising materials, and other materials related to such
       distribution and use acknowledge that the software was developed
       by Stanford University.  The name of the University may not be
       used to endorse or promote products derived from this software
       without specific prior written permission.  THIS SOFTWARE IS
       PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES,
       INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
       MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.


Share and Enjoy!

Norbert

TODO  view on Meta::CPAN


 TO DO
 =====

 List of outstandings bugs, features and ideas for the AFS module.
 Please note that the thoughts expressed here do not necessarily imply
 any guaranteed future functionality of the AFS module.  Please contact the
 maintainer if you wish to help implement anything here.  All help is welcome,
 but do check first to make sure someone isn't already tackling the item
 in question.  Any other suggestions, ideas, patches gratefully received.

 Written by Norbert E Gruener <nog@MPA-Garching.MPG.DE>


 SHORT TERM
 ----------
 * improve the test suites


 MID TERM
 --------
 * remove the module AFS::KAS
 * upgrade AFS::KTC_TOKEN


 LONG TERM
 ---------
 * verify whether all OpenAFS constants are included in the 'constant'
   function
 * develop sufficient test suites

examples/README  view on Meta::CPAN


          This is the README file for the AFS Perl examples.
                      AFS Perl (Version 2.6.4)


WHERE ARE THE EXAMPLES?
    A collection of examples demonstrating various functions and
    methods are stored in the directory "v2".  All scripts in "v2"
    conform with the interface version 2.  For more details read the
    appropriate POD documentations.



HOW TO USE THE EXAMPLES
    All scripts in "v2" are designed that you can run them without
    prior installation of the AFS module bundle.  After you have
    performed the steps "perl Makefile.pl", "make", and eventually
    "make test" you can run these test scripts.  Just step into the
    different subdirectories and run the available examples, e.g:
    
        cd AFS-2.6.4/examples/v2/base
        ./error_test


examples/v2/acl/apply  view on Meta::CPAN

#!/usr/local/bin/perl

use blib;
use strict;
use warnings;

use AFS::ACL;

die "Usage: $0 dir \n" if $#ARGV != 0;
my $dir = shift;

my $acl = AFS::ACL->new({ 'guest', AFS::ACL->crights('read')});
$AFS::CODE and print "AFS::CODE = $AFS::CODE\n";

my $ok = $acl->apply($dir);
if ($AFS::CODE) { print "AFS::CODE = $AFS::CODE\n"; }
else            { print "ok = $ok\n"; }

examples/v2/acl/ascii2rights  view on Meta::CPAN

#!/usr/local/bin/perl

use blib;
use strict;
use warnings;

use AFS::ACL;

die "Usage: $0 rights \n" if $#ARGV != 0;

my $rights = shift;
print "Flag($rights) = ", AFS::ACL->ascii2rights($rights), "\n";
$AFS::CODE and print "AFS::CODE = $AFS::CODE\n";

examples/v2/acl/cleanacl  view on Meta::CPAN

#!/usr/local/bin/perl

use blib;
use strict;
use warnings;

use AFS::ACL;

die "Usage: $0 path\n" if ($#ARGV==-1);

my $path = shift;

my $ok = AFS::ACL->cleanacl($path);
if ($AFS::CODE) { print "AFS::CODE = $AFS::CODE\n"; }
else            { print "OK = $ok \n"; }

examples/v2/acl/copyacl  view on Meta::CPAN

#!/usr/local/bin/perl

use blib;
use strict;
use warnings;

use AFS::ACL;

die "Usage: $0 from to\n" if ($#ARGV==-1);

my $from = shift;
my $to = shift;

my $ok = AFS::ACL->copyacl($from, $to);
if ($AFS::CODE) { print "AFS::CODE = $AFS::CODE\n"; }
else            { print "OK = $ok \n"; }

exit;

examples/v2/acl/crights  view on Meta::CPAN

#!/usr/local/bin/perl

use blib;
use strict;
use warnings;

use AFS::ACL;

die "Usage: $0 rights\n" if $#ARGV != 0;

my $rights = shift;
print "Rights($rights) = ", AFS::ACL->crights($rights), "\n";
$AFS::CODE and print "AFS::CODE = $AFS::CODE\n";

examples/v2/acl/is_clean  view on Meta::CPAN

#!/usr/local/bin/perl

use blib;
use strict;
use warnings;

use AFS::ACL;

die "Usage: $0 path\n" if ($#ARGV==-1);

my $path = shift;

my $acl = AFS::ACL->retrieve($path);
if ($AFS::CODE) { print "AFS::CODE = $AFS::CODE\n"; }
else {
    my $ok  = $acl->is_clean($path);
    if ($AFS::CODE) { print "AFS::CODE = $AFS::CODE\n"; }
    else            { print "$path = ", $ok == 1 ? "clean\n" : "unclean\n"; }
}

examples/v2/acl/modifyacl  view on Meta::CPAN

#!/usr/local/bin/perl

use blib;
use strict;
use warnings;

use AFS::ACL;

die "Usage: $0 dir \n" if $#ARGV != 0;
my $dir = shift;

system "fs la $dir";

my $new_acl = AFS::ACL->new({ 'guest', AFS::ACL->crights('all')});
$AFS::CODE and print "AFS::CODE = $AFS::CODE\n";

my $ok = $new_acl->modifyacl($dir);
if ($AFS::CODE) { print "AFS::CODE = $AFS::CODE\n"; }
else            { print "OK = $ok \n"; }

system "fs la $dir";

$new_acl->set('guest', 'none');

$ok = $new_acl->modifyacl($dir);
if ($AFS::CODE) { print "AFS::CODE = $AFS::CODE\n"; }
else            { print "OK = $ok \n"; }

system "fs la $dir";

examples/v2/acl/retrieve  view on Meta::CPAN

#!/usr/local/bin/perl

use blib;
use strict;
use warnings;

use AFS::ACL;

die "Usage: $0 path\n" if ($#ARGV!=0);
my $path = shift;

my $acl = AFS::ACL->retrieve($path);
$AFS::CODE and print "AFS::CODE = $AFS::CODE\n";

if ($AFS::CODE) { print "AFS::CODE = $AFS::CODE\n"; }
else {
    print "Normal rights: \n" if ($acl->length);
    foreach my $user ($acl->get_users) {
        print " $user ",$acl->get_rights($user),"\n";
    }

    print "Negative rights: \n" if ($acl->nlength);
    foreach my $user ($acl->nget_users) {
        print " $user ",$acl->nget_rights($user),"\n";
    }
}

examples/v2/acl/rights2ascii  view on Meta::CPAN

#!/usr/local/bin/perl

use blib;
use strict;
use warnings;

use AFS::ACL;

die "Usage: $0 flag \n" if $#ARGV != 0;

my $flag = shift;
print "Rights($flag) = ", AFS::ACL->rights2ascii($flag), "\n";
$AFS::CODE and print "AFS::CODE = $AFS::CODE\n";

examples/v2/base/constant  view on Meta::CPAN

#!/usr/local/bin/perl

use blib;
use strict;
use warnings;

use AFS qw (constant);

my $value;

$value = constant('PRIDEXIST'); # value = 267265
print "Value constant = $value \n";

$value = &AFS::PRIDEXIST;       # value = 267265, preferred method
print "Value function = $value \n";

$value = constant('VBUSY'); # value = 110
print "Value constant = $value \n";

$value = &AFS::VBUSY;       # value = 110, preferred method
print "Value function = $value \n";

# print "AFS::PRSUCCESS  = ",&AFS::PRSUCCESS ,"\n";
# print "AFS::PR_MAXNAMELEN  = ",&AFS::PR_MAXNAMELEN ,"\n";
# print "AFS::PR_MAXGROUPS  = ",&AFS::PR_MAXGROUPS ,"\n";
# print "AFS::PR_MAXLIST  = ",&AFS::PR_MAXLIST ,"\n";
# print "AFS::PRSIZE  = ",&AFS::PRSIZE ,"\n";
# print "AFS::COSIZE  = ",&AFS::COSIZE ,"\n";
# print "AFS::PR_SF_ALLBITS  = ",&AFS::PR_SF_ALLBITS ,"\n";
# print "AFS::PR_SF_NGROUPS  = ",&AFS::PR_SF_NGROUPS ,"\n";
# print "AFS::PR_SF_NUSERS   = ",&AFS::PR_SF_NUSERS  ,"\n";
# print "AFS::PR_LOWEST_OPCODE   = ",&AFS::PR_LOWEST_OPCODE  ,"\n";
# print "AFS::PR_HIGHEST_OPCODE  = ",&AFS::PR_HIGHEST_OPCODE ,"\n";
# print "AFS::PR_NUMBER_OPCODES  = ",&AFS::PR_NUMBER_OPCODES ,"\n";
# print "AFS::PREXIST  = ",&AFS::PREXIST ,"\n";
# print "AFS::PRIDEXIST  = ",&AFS::PRIDEXIST ,"\n";
# print "AFS::PRNOIDS  = ",&AFS::PRNOIDS ,"\n";
# print "AFS::PRDBFAIL  = ",&AFS::PRDBFAIL ,"\n";
# print "AFS::PRNOENT  = ",&AFS::PRNOENT ,"\n";
# print "AFS::PRPERM  = ",&AFS::PRPERM ,"\n";
# print "AFS::PRNOTGROUP  = ",&AFS::PRNOTGROUP ,"\n";
# print "AFS::PRNOTUSER  = ",&AFS::PRNOTUSER ,"\n";
# print "AFS::PRBADNAM  = ",&AFS::PRBADNAM ,"\n";
# print "AFS::PRBADARG  = ",&AFS::PRBADARG ,"\n";
# print "AFS::PRNOMORE  = ",&AFS::PRNOMORE ,"\n";
# print "AFS::PRDBBAD  = ",&AFS::PRDBBAD ,"\n";
# print "AFS::PRGROUPEMPTY  = ",&AFS::PRGROUPEMPTY ,"\n";
# print "AFS::PRINCONSISTENT  = ",&AFS::PRINCONSISTENT ,"\n";
# print "AFS::PRDBADDR  = ",&AFS::PRDBADDR ,"\n";
# print "AFS::PRTOOMANY  = ",&AFS::PRTOOMANY ,"\n";
# print "AFS::PRBADID  = ",&AFS::PRBADID ,"\n";
# print "AFS::SYSADMINID  = ",&AFS::SYSADMINID ,"\n";
# print "AFS::SYSBACKUPID  = ",&AFS::SYSBACKUPID ,"\n";
# print "AFS::ANYUSERID  = ",&AFS::ANYUSERID ,"\n";
# print "AFS::AUTHUSERID  = ",&AFS::AUTHUSERID ,"\n";
# print "AFS::ANONYMOUSID  = ",&AFS::ANONYMOUSID ,"\n";
# print "AFS::PRDBVERSION  = ",&AFS::PRDBVERSION ,"\n";

# print "AFS::PRSFS_READ = ",&AFS::PRSFS_READ,"\n";
# print "AFS::PRSFS_WRITE = ",&AFS::PRSFS_WRITE,"\n";
# print "AFS::PRSFS_INSERT = ",&AFS::PRSFS_INSERT,"\n";
# print "AFS::PRSFS_LOOKUP = ",&AFS::PRSFS_LOOKUP,"\n";
# print "AFS::PRSFS_DELETE = ",&AFS::PRSFS_DELETE,"\n";
# print "AFS::PRSFS_LOCK = ",&AFS::PRSFS_LOCK,"\n";
# print "AFS::PRSFS_ADMINISTER = ",&AFS::PRSFS_ADMINISTER,"\n";
# print "AFS::PRSFS_USR0 = ",&AFS::PRSFS_USR0,"\n";
# print "AFS::PRSFS_USR1 = ",&AFS::PRSFS_USR1,"\n";
# print "AFS::PRSFS_USR2 = ",&AFS::PRSFS_USR2,"\n";
# print "AFS::PRSFS_USR3 = ",&AFS::PRSFS_USR3,"\n";
# print "AFS::PRSFS_USR4 = ",&AFS::PRSFS_USR4,"\n";
# print "AFS::PRSFS_USR5 = ",&AFS::PRSFS_USR5,"\n";
# print "AFS::PRSFS_USR6 = ",&AFS::PRSFS_USR6,"\n";
# print "AFS::PRSFS_USR7 = ",&AFS::PRSFS_USR7,"\n";

examples/v2/base/error_test  view on Meta::CPAN

#!/usr/local/bin/perl

use blib;
use strict;
use warnings;

use AFS qw (error_message);

print error_message(&AFS::PRNOMORE),"\n";
print error_message(180502),"\n";
print error_message(0),"\n";
print error_message(13),"\n";

examples/v2/bos/addhost  view on Meta::CPAN

#!/usr/local/bin/perl

use v5.10.0;
use blib;
use strict;
use warnings;

use AFS::BOS;
use Scalar::Util qw(looks_like_number);

my (@hosts, $host, $clone, $server, $cellname, $bos);

die "Usage: $0 host clone server [cell]\n" if $#ARGV < 1;

$host     = shift;
$clone    = shift;
$server   = shift;
$cellname = shift // '';

if (defined $clone and !looks_like_number($clone)) { warn "$0: CLONE is not an INTEGER ...\n"; }
else                                                   { $clone = int($clone); }

if ($cellname) { $bos = AFS::BOS->new($server, 0, 0, $cellname); }
else           { $bos = AFS::BOS->new($server); }
$AFS::CODE and print "AFS::CODE = $AFS::CODE\n" and die;

@hosts = split (/ /, $host);
my $ok = $bos->addhost(\@hosts, $clone);
print "Error Code: $AFS::CODE\n" if ($AFS::CODE);

$bos->DESTROY;

examples/v2/bos/addkey  view on Meta::CPAN

#!/usr/local/bin/perl

use blib;
use strict;
use warnings;

use AFS::BOS;

my ($server, $cellname, $bos);

die "Usage: $0 server [cell]\n" if $#ARGV < 0;

$server   = shift;
$cellname = shift;

if ($cellname) { $bos = AFS::BOS->new($server, 0, 0, $cellname); }
else           { $bos = AFS::BOS->new($server); }
$AFS::CODE and print "AFS::CODE = $AFS::CODE\n" and die;

die "not yet tested ... \n";

print "bos->addkey()...\n";

my $ok = $bos->addkey(2); # kvno = 2
print "Error Code: $AFS::CODE\n" if ($AFS::CODE);
print "Something went wrong\n" unless $ok;

$ok = $bos->addkey(3, 'I will not tell you'); # kvno = 3
print "Error Code: $AFS::CODE\n" if ($AFS::CODE);
print "Something went wrong\n" unless $ok;

$bos->DESTROY;

examples/v2/bos/adduser  view on Meta::CPAN

#!/usr/local/bin/perl

use v5.10.0;
use blib;
use strict;
use warnings;

use AFS::BOS;

my (@users, $user, $server, $cellname, $bos);

die "Usage: $0 user server [cell]\n" if $#ARGV < 1;

$user     = shift;
$server   = shift;
$cellname = shift // '';

if ($cellname) { $bos = AFS::BOS->new($server, 0, 0, $cellname); }
else           { $bos = AFS::BOS->new($server); }
$AFS::CODE and print "AFS::CODE = $AFS::CODE\n" and die;

@users = split (/ /, $user);
my $ok = $bos->adduser(\@users);
print "Error Code: $AFS::CODE\n" if ($AFS::CODE);

$bos->DESTROY;

examples/v2/bos/blockscanner  view on Meta::CPAN

#!/usr/local/bin/perl

use blib;
use strict;
use warnings;

use AFS::BOS;

my ($server, $cellname, $bos);

die "Usage: $0 server [cell]\n" if $#ARGV < 0;

$server   = shift;
$cellname = shift;

if ($cellname) { $bos = AFS::BOS->new($server, 0, 0, $cellname); }
else           { $bos = AFS::BOS->new($server); }
$AFS::CODE and print "AFS::CODE = $AFS::CODE\n" and die;

my $ok = $bos->exec('/usr/afs/bin/scanner -block');
print "Start Block Scanner OK-Status: $ok \n";

$ok = $bos->exec('/usr/afs/bin/scanner -noblock');
print "Start Unblock Scanner OK-Status: $ok \n";

$bos->DESTROY;

examples/v2/bos/constructor  view on Meta::CPAN

#!/usr/local/bin/perl

use blib;
use strict;
use warnings;

use AFS::BOS;

my ($server, $cellname, $bos);

die "Usage: $0 server [cell]\n" if $#ARGV < 0;

$server   = shift;
$cellname = shift;

if ($cellname) { $bos = AFS::BOS->new($server, 0, 0, $cellname); }
else           { $bos = AFS::BOS->new($server); }
if ($AFS::CODE) { print "AFS::CODE = $AFS::CODE\n"; }
else            { print "OK \n"; }

test_it($bos);

sub test_it {
    my $self = shift;
    $self->DESTROY;
}

 view all matches for this distribution
 view release on metacpan -  search on metacpan

( run in 1.714 second using v1.00-cache-2.02-grep-82fe00e-cpan-72ae3ad1e6da )