summaryrefslogtreecommitdiff
path: root/shared/ossp_uuid/perl
diff options
context:
space:
mode:
authorDaniel Wilhelm <daniel@wili.li>2014-04-18 17:07:43 +0200
committerDaniel Wilhelm <daniel@wili.li>2014-04-18 17:07:43 +0200
commit4226e548662339ea1ca37b45385a7cf9b237ff1e (patch)
tree9a3fa54b85d97f05164e41bdb96b82f748a37342 /shared/ossp_uuid/perl
parent3.7 (diff)
downloadFreeFileSync-4226e548662339ea1ca37b45385a7cf9b237ff1e.tar.gz
FreeFileSync-4226e548662339ea1ca37b45385a7cf9b237ff1e.tar.bz2
FreeFileSync-4226e548662339ea1ca37b45385a7cf9b237ff1e.zip
3.8
Diffstat (limited to 'shared/ossp_uuid/perl')
-rw-r--r--shared/ossp_uuid/perl/MANIFEST10
-rw-r--r--shared/ossp_uuid/perl/Makefile.PL68
-rw-r--r--shared/ossp_uuid/perl/uuid.pm334
-rw-r--r--shared/ossp_uuid/perl/uuid.pod207
-rw-r--r--shared/ossp_uuid/perl/uuid.tm39
-rw-r--r--shared/ossp_uuid/perl/uuid.ts171
-rw-r--r--shared/ossp_uuid/perl/uuid.xs236
-rw-r--r--shared/ossp_uuid/perl/uuid_compat.pm176
-rw-r--r--shared/ossp_uuid/perl/uuid_compat.pod55
-rw-r--r--shared/ossp_uuid/perl/uuid_compat.ts55
10 files changed, 0 insertions, 1351 deletions
diff --git a/shared/ossp_uuid/perl/MANIFEST b/shared/ossp_uuid/perl/MANIFEST
deleted file mode 100644
index d9722036..00000000
--- a/shared/ossp_uuid/perl/MANIFEST
+++ /dev/null
@@ -1,10 +0,0 @@
-MANIFEST
-Makefile.PL
-uuid.xs
-uuid.tm
-uuid.pm
-uuid.pod
-uuid.ts
-uuid_compat.pm
-uuid_compat.pod
-uuid_compat.ts
diff --git a/shared/ossp_uuid/perl/Makefile.PL b/shared/ossp_uuid/perl/Makefile.PL
deleted file mode 100644
index 92f4494f..00000000
--- a/shared/ossp_uuid/perl/Makefile.PL
+++ /dev/null
@@ -1,68 +0,0 @@
-##
-## OSSP uuid - Universally Unique Identifier
-## Copyright (c) 2004-2007 Ralf S. Engelschall <rse@engelschall.com>
-## Copyright (c) 2004-2007 The OSSP Project <http://www.ossp.org/>
-##
-## This file is part of OSSP uuid, a library for the generation
-## of UUIDs which can found at http://www.ossp.org/pkg/lib/uuid/
-##
-## Permission to use, copy, modify, and distribute this software for
-## any purpose with or without fee is hereby granted, provided that
-## the above copyright notice and this permission notice appear in all
-## copies.
-##
-## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
-## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-## SUCH DAMAGE.
-##
-## Makefile.PL: Perl MakeMaker build source procedure
-##
-
-require 5.008;
-
-use Config;
-use ExtUtils::MakeMaker;
-
-# determine source directory
-my ($srcdir) = map { my $d = $_; $d =~ s/\/libuuid\.la$//; $d }
- grep { -f $_ } ("../libuuid.la", glob("../*/libuuid.la"))
- or die "no source directory found (where libuuid.la is located)";
-
-# determine extra build options
-my $compat = 0;
-@ARGV = grep { $_ =~ m/^COMPAT=(\d+)$/i ? ($compat = $1, 0) : 1 } @ARGV;
-
-# generate Makefile
-WriteMakefile(
- NAME => 'OSSP::uuid',
- VERSION_FROM => 'uuid.pm',
- ABSTRACT_FROM => 'uuid.pod',
- PREREQ_PM => {},
- LIBS => [ "-L$srcdir/.libs -L$srcdir -luuid" ],
- DEFINE => '',
- INC => "-I. -I$srcdir",
- PM => { 'uuid.pm' => '$(INST_LIBDIR)/uuid.pm',
- 'uuid.pod' => '$(INST_LIBDIR)/uuid.pod',
- ($compat ? ('uuid_compat.pm' => '$(INST_LIBDIR)/../Data/UUID.pm') : ()),
- ($compat ? ('uuid_compat.pod' => '$(INST_LIBDIR)/../Data/UUID.pod') : ()), },
- MAN3PODS => { 'uuid.pod' => '$(INST_MAN3DIR)/OSSP::uuid.3',
- ($compat ? ('uuid_compat.pod' => '$(INST_MAN3DIR)/Data::UUID.3') : ()), },
- TYPEMAPS => [ 'uuid.tm' ],
- test => { TESTS => 'uuid.ts' . ($compat ? ' uuid_compat.ts' : '') },
- NO_META => 1,
- # cruel hack to workaround the conflict between OSSP uuid's
- # uuid_create() function and one from FreeBSD's libc
- (( "$Config{'osname'}$Config{'osvers'}" =~ m/^freebsd[56]\./
- and $Config{'ld'} =~ m/cc$/ and -f "/usr/include/uuid.h") ?
- ( LDDLFLAGS => $Config{'lddlflags'} . ' -Wl,-Bsymbolic') : ())
-);
-
diff --git a/shared/ossp_uuid/perl/uuid.pm b/shared/ossp_uuid/perl/uuid.pm
deleted file mode 100644
index b3223966..00000000
--- a/shared/ossp_uuid/perl/uuid.pm
+++ /dev/null
@@ -1,334 +0,0 @@
-##
-## OSSP uuid - Universally Unique Identifier
-## Copyright (c) 2004-2007 Ralf S. Engelschall <rse@engelschall.com>
-## Copyright (c) 2004-2007 The OSSP Project <http://www.ossp.org/>
-##
-## This file is part of OSSP uuid, a library for the generation
-## of UUIDs which can found at http://www.ossp.org/pkg/lib/uuid/
-##
-## Permission to use, copy, modify, and distribute this software for
-## any purpose with or without fee is hereby granted, provided that
-## the above copyright notice and this permission notice appear in all
-## copies.
-##
-## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
-## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-## SUCH DAMAGE.
-##
-## uuid.pm: Perl Binding (Perl part)
-##
-
-##
-## High-Level Perl Module TIE-style API
-## (just a functionality-reduced TIE wrapper around the OO-style API)
-##
-
-package OSSP::uuid::tie;
-
-use 5.008;
-use strict;
-use warnings;
-use Carp;
-
-# inhert from Tie::Scalar
-require Tie::Scalar;
-our @ISA = qw(Tie::Scalar);
-
-# helper function
-sub mode_sanity {
- my ($mode) = @_;
- if (not ( defined($mode)
- and ref($mode) eq 'ARRAY'
- and ( (@{$mode} == 1 and $mode->[0] =~ m|^v[14]$|)
- or (@{$mode} == 3 and $mode->[0] =~ m|^v[35]$|)))) {
- return (undef, "invalid UUID generation mode specification");
- }
- if ($mode->[0] =~ m|^v[35]$|) {
- my $uuid_ns = new OSSP::uuid;
- $uuid_ns->load($mode->[1])
- or return (undef, "failed to load UUID $mode->[0] namespace");
- $mode->[1] = $uuid_ns;
- }
- return ($mode, undef);
-}
-
-# constructor
-sub TIESCALAR {
- my ($class, @args) = @_;
- my $self = {};
- bless ($self, $class);
- $self->{-uuid} = new OSSP::uuid
- or croak "failed to create OSSP::uuid object";
- my ($mode, $error) = mode_sanity(defined($args[0]) ? [ @args ] : [ "v1" ]);
- croak $error if defined($error);
- $self->{-mode} = $mode;
- return $self;
-}
-
-# destructor
-sub DESTROY {
- my ($self) = @_;
- delete $self->{-uuid};
- delete $self->{-mode};
- return;
-}
-
-# fetch value from scalar
-# (applied semantic: export UUID in string format)
-sub FETCH {
- my ($self) = @_;
- $self->{-uuid}->make(@{$self->{-mode}})
- or croak "failed to generate new UUID";
- my $value = $self->{-uuid}->export("str")
- or croak "failed to export new UUID";
- return $value;
-}
-
-# store value into scalar
-# (applied semantic: configure new UUID generation mode)
-sub STORE {
- my ($self, $value) = @_;
- my ($mode, $error) = mode_sanity($value);
- croak $error if defined($error);
- $self->{-mode} = $mode;
- return;
-}
-
-##
-## High-Level Perl Module OO-style API
-## (just an OO wrapper around the C-style API)
-##
-
-package OSSP::uuid;
-
-use 5.008;
-use strict;
-use warnings;
-use Carp;
-use XSLoader;
-use Exporter;
-
-# API version
-our $VERSION = do { my @v = ('1.6.2' =~ m/\d+/g); sprintf("%d.".("%02d"x$#v), @v); };
-
-# API inheritance
-our @ISA = qw(Exporter);
-
-# API symbols
-my $symbols = {
- 'const' => [qw(
- UUID_VERSION
- UUID_LEN_BIN
- UUID_LEN_STR
- UUID_LEN_SIV
- UUID_RC_OK
- UUID_RC_ARG
- UUID_RC_MEM
- UUID_RC_SYS
- UUID_RC_INT
- UUID_RC_IMP
- UUID_MAKE_V1
- UUID_MAKE_V3
- UUID_MAKE_V4
- UUID_MAKE_V5
- UUID_MAKE_MC
- UUID_FMT_BIN
- UUID_FMT_STR
- UUID_FMT_SIV
- UUID_FMT_TXT
- )],
- 'func' => [qw(
- uuid_create
- uuid_destroy
- uuid_load
- uuid_make
- uuid_isnil
- uuid_compare
- uuid_import
- uuid_export
- uuid_error
- uuid_version
- )]
-};
-
-# API symbol exportation
-our %EXPORT_TAGS = (
- 'all' => [ @{$symbols->{'const'}}, @{$symbols->{'func'}} ],
- 'const' => [ @{$symbols->{'const'}} ],
- 'func' => [ @{$symbols->{'func'}} ]
-);
-our @EXPORT_OK = @{$EXPORT_TAGS{'all'}};
-our @EXPORT = ();
-
-# constructor
-sub new {
- my $proto = shift;
- my $class = ref($proto) || $proto;
- my $self = {};
- bless ($self, $class);
- $self->{-uuid} = undef;
- $self->{-rc} = $self->UUID_RC_OK;
- my $rc = uuid_create($self->{-uuid});
- if ($rc != $self->UUID_RC_OK) {
- croak(sprintf("OSSP::uuid::new: uuid_create: %s (%d)", uuid_error($rc), $rc));
- return undef;
- }
- return $self;
-}
-
-# destructor
-sub DESTROY ($) {
- my ($self) = @_;
- $self->{-rc} = uuid_destroy($self->{-uuid}) if (defined($self->{-uuid}));
- if ($self->{-rc} != $self->UUID_RC_OK) {
- carp(sprintf("OSSP::uuid::DESTROY: uuid_destroy: %s (%d)", uuid_error($self->{-rc}), $self->{-rc}));
- return;
- }
- $self->{-uuid} = undef;
- $self->{-rc} = undef;
- return;
-}
-
-sub load ($$) {
- my ($self, $name) = @_;
- $self->{-rc} = uuid_load($self->{-uuid}, $name);
- return ($self->{-rc} == $self->UUID_RC_OK);
-}
-
-sub make ($$;@) {
- my ($self, $mode, @valist) = @_;
- my $mode_code = 0;
- foreach my $spec (split(/,/, $mode)) {
- if ($spec eq 'v1') { $mode_code |= $self->UUID_MAKE_V1; }
- elsif ($spec eq 'v3') { $mode_code |= $self->UUID_MAKE_V3; }
- elsif ($spec eq 'v4') { $mode_code |= $self->UUID_MAKE_V4; }
- elsif ($spec eq 'v5') { $mode_code |= $self->UUID_MAKE_V5; }
- elsif ($spec eq 'mc') { $mode_code |= $self->UUID_MAKE_MC; }
- else { croak("invalid mode specification \"$spec\""); }
- }
- if (($mode_code & $self->UUID_MAKE_V3) or ($mode_code & $self->UUID_MAKE_V5)) {
- if (not (ref($valist[0]) and $valist[0]->isa("OSSP::uuid"))) {
- croak("UUID_MAKE_V3/UUID_MAKE_V5 requires namespace argument to be OSSP::uuid object");
- }
- my $ns = $valist[0]->{-uuid};
- my $name = $valist[1];
- $self->{-rc} = uuid_make($self->{-uuid}, $mode_code, $ns, $name);
- }
- else {
- $self->{-rc} = uuid_make($self->{-uuid}, $mode_code);
- }
- return ($self->{-rc} == $self->UUID_RC_OK);
-}
-
-sub isnil ($) {
- my ($self) = @_;
- my $result;
- $self->{-rc} = uuid_isnil($self->{-uuid}, $result);
- return ($self->{-rc} == $self->UUID_RC_OK ? $result : undef);
-}
-
-sub compare ($$) {
- my ($self, $other) = @_;
- my $result = 0;
- if (not (ref($other) and $other->isa("OSSP::uuid"))) {
- croak("argument has to an OSSP::uuid object");
- }
- $self->{-rc} = uuid_compare($self->{-uuid}, $other->{-uuid}, $result);
- return ($self->{-rc} == $self->UUID_RC_OK ? $result : undef);
-}
-
-sub import {
- # ATTENTION: The OSSP uuid API function "import" conflicts with
- # the standardized "import" method the Perl world expects from
- # their modules. In order to keep the Perl binding consist
- # with the C API, we solve the conflict under run-time by
- # distinguishing between the two types of "import" calls.
- if (defined($_[0]) and ref($_[0]) =~ m/^OSSP::uuid/) {
- # the regular OSSP::uuid "import" method
- croak("import method expects 3 or 4 arguments") if (@_ < 3 or @_ > 4); # emulate prototype
- my ($self, $fmt, $data_ptr, $data_len) = @_;
- if ($fmt eq 'bin') { $fmt = $self->UUID_FMT_BIN; }
- elsif ($fmt eq 'str') { $fmt = $self->UUID_FMT_STR; }
- elsif ($fmt eq 'siv') { $fmt = $self->UUID_FMT_SIV; }
- elsif ($fmt eq 'txt') { $fmt = $self->UUID_FMT_TXT; }
- else { croak("invalid format \"$fmt\""); }
- $data_len ||= length($data_ptr); # functional redudant, but Perl dislikes undef value here
- $self->{-rc} = uuid_import($self->{-uuid}, $fmt, $data_ptr, $data_len);
- return ($self->{-rc} == $self->UUID_RC_OK);
- }
- else {
- # the special Perl "import" method
- # (usually inherited from the Exporter)
- no strict "refs";
- return OSSP::uuid->export_to_level(1, @_);
- }
-}
-
-sub export {
- # ATTENTION: The OSSP uuid API function "export" conflicts with
- # the standardized "export" method the Perl world expects from
- # their modules. In order to keep the Perl binding consist
- # with the C API, we solve the conflict under run-time by
- # distinguishing between the two types of "export" calls.
- if (defined($_[0]) and ref($_[0]) =~ m/^OSSP::uuid/) {
- # the regular OSSP::uuid "export" method
- croak("export method expects 2 arguments") if (@_ != 2); # emulate prototype
- my ($self, $fmt) = @_;
- my $data_ptr;
- if ($fmt eq 'bin') { $fmt = $self->UUID_FMT_BIN; }
- elsif ($fmt eq 'str') { $fmt = $self->UUID_FMT_STR; }
- elsif ($fmt eq 'siv') { $fmt = $self->UUID_FMT_SIV; }
- elsif ($fmt eq 'txt') { $fmt = $self->UUID_FMT_TXT; }
- else { croak("invalid format \"$fmt\""); }
- $self->{-rc} = uuid_export($self->{-uuid}, $fmt, $data_ptr, undef);
- return ($self->{-rc} == $self->UUID_RC_OK ? $data_ptr : undef);
- }
- else {
- # the special Perl "export" method
- # (usually inherited from the Exporter)
- return Exporter::export(@_);
- }
-}
-
-sub error ($;$) {
- my ($self, $rc) = @_;
- $rc = $self->{-rc} if (not defined($rc));
- return wantarray ? (uuid_error($rc), $rc) : uuid_error($rc);
-}
-
-sub version (;$) {
- my ($self) = @_;
- return uuid_version();
-}
-
-##
-## Low-Level Perl XS C-style API
-## (actually just the activation of the XS part)
-##
-
-# auto-loading constants
-sub AUTOLOAD {
- my $constname;
- our $AUTOLOAD;
- ($constname = $AUTOLOAD) =~ s/.*:://;
- croak "&OSSP::uuid::constant not defined" if ($constname eq 'constant');
- my ($error, $val) = constant($constname);
- croak $error if ($error);
- { no strict 'refs'; *$AUTOLOAD = sub { $val }; }
- goto &$AUTOLOAD;
-}
-
-# static-loading functions
-XSLoader::load('OSSP::uuid', $VERSION);
-
-1;
-
diff --git a/shared/ossp_uuid/perl/uuid.pod b/shared/ossp_uuid/perl/uuid.pod
deleted file mode 100644
index 7c6172f0..00000000
--- a/shared/ossp_uuid/perl/uuid.pod
+++ /dev/null
@@ -1,207 +0,0 @@
-##
-## OSSP uuid - Universally Unique Identifier
-## Copyright (c) 2004-2007 Ralf S. Engelschall <rse@engelschall.com>
-## Copyright (c) 2004-2007 The OSSP Project <http://www.ossp.org/>
-##
-## This file is part of OSSP uuid, a library for the generation
-## of UUIDs which can found at http://www.ossp.org/pkg/lib/uuid/
-##
-## Permission to use, copy, modify, and distribute this software for
-## any purpose with or without fee is hereby granted, provided that
-## the above copyright notice and this permission notice appear in all
-## copies.
-##
-## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
-## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-## SUCH DAMAGE.
-##
-## uuid.pod: Perl Binding (Perl/POD part)
-##
-
-=pod
-
-=head1 NAME
-
-OSSP::uuid - B<OSSP uuid> Perl Binding
-
-=head1 DESCRIPTION
-
-B<OSSP uuid> is a ISO-C:1999 application programming interface (API)
-and corresponding command line interface (CLI) for the generation of
-DCE 1.1, ISO/IEC 11578:1996 and RFC 4122 compliant I<Universally Unique
-Identifier> (UUID). It supports DCE 1.1 variant UUIDs of version 1 (time
-and node based), version 3 (name based, MD5), version 4 (random number
-based) and version 5 (name based, SHA-1). Additional API bindings are
-provided for the languages ISO-C++:1998, Perl:5 and PHP:4/5. Optional
-backward compatibility exists for the ISO-C DCE-1.1 and Perl Data::UUID
-APIs.
-
-B<OSSP::uuid> is the Perl binding to the B<OSSP uuid> API.
-Three variants are provided:
-
-=head2 TIE-STYLE API
-
-The TIE-style API is a functionality-reduced wrapper around the OO-style
-API and intended for very high-level convenience programming:
-
-=over 4
-
-=item C<use OSSP::uuid;>
-
-=item B<tie>C< my $uuid, 'OSSP::uuid::tie', $mode, ...;>
-
-=item C<$uuid = [ $mode, ... ];>
-
-=item C<print "UUID=$uuid\n";>
-
-=item C<untie $uuid;>
-
-=back
-
-=head2 OO-STYLE API
-
-The OO-style API is a wrapper around the C-style API and intended for
-high-level regular programming.
-
-=over 4
-
-=item C<use OSSP::uuid;>
-
-=item C<my $uuid = >B<new>C< OSSP::uuid;>
-
-=item C<$uuid-E<gt>>B<load>C<($name);>
-
-=item C<$uuid-E<gt>>B<make>C<($mode, ...);>
-
-=item C<$result = $uuid-E<gt>>B<isnil>C<();>
-
-=item C<$result = $uuid-E<gt>>B<compare>C<($uuid2);>
-
-=item C<$uuid-E<gt>>B<import>C<($fmt, $data_ptr);>
-
-=item C<$data_ptr = $uuid-E<gt>>B<export>C<($fmt);>
-
-=item C<[(]$str[, $rc)] = $uuid-E<gt>>B<error>C<();>
-
-=item C<$ver = $uuid-E<gt>>B<version>C<();>
-
-=item C<undef $uuid;>
-
-=back
-
-Additionally, the strings C<"v1">, C<"v3">, C<"v4">, C<"v5"> and C<"mc">
-can be used in C<$mode> and the strings C<"bin">, C<"str">, and C<"txt">
-can be used for C<$fmt>.
-
-=head2 C-STYLE API
-
-The C-style API is a direct mapping
-of the B<OSSP uuid> ISO-C API to Perl and is intended for low-level
-programming. See uuid(3) for a description of the functions and
-their expected arguments.
-
-=over 4
-
-=item C<use OSSP::uuid qw(:all);>
-
-=item C<my $uuid; $rc = >B<uuid_create>C<($uuid);>
-
-=item C<$rc = >B<uuid_load>C<($uuid, $name);>
-
-=item C<$rc = >B<uuid_make>C<($uuid, $mode, ...);>
-
-=item C<$rc = >B<uuid_isnil>C<($uuid, $result);>
-
-=item C<$rc = >B<uuid_compare>C<($uuid, $uuid2, $result);>
-
-=item C<$rc = >B<uuid_import>C<($uuid, $fmt, $data_ptr, $data_len);>
-
-=item C<$rc = >B<uuid_export>C<($uuid, $fmt, $data_ptr, $data_len);>
-
-=item C<$str = >B<uuid_error>C<($rc);>
-
-=item C<$ver = >B<uuid_version>C<();>
-
-=item C<$rc = >B<uuid_destroy>C<($uuid);>
-
-=back
-
-Additionally, the following constants are exported for use in C<$rc>, C<$mode>, C<$fmt> and C<$ver>:
-
-C<UUID_VERSION>,
-C<UUID_LEN_BIN>,
-C<UUID_LEN_STR>,
-C<UUID_RC_OK>,
-C<UUID_RC_ARG>,
-C<UUID_RC_MEM>,
-C<UUID_RC_SYS>,
-C<UUID_RC_INT>,
-C<UUID_RC_IMP>,
-C<UUID_MAKE_V1>,
-C<UUID_MAKE_V3>,
-C<UUID_MAKE_V4>,
-C<UUID_MAKE_V5>,
-C<UUID_MAKE_MC>,
-C<UUID_FMT_BIN>,
-C<UUID_FMT_STR>,
-C<UUID_FMT_SIV>,
-C<UUID_FMT_TXT>.
-
-=head1 EXAMPLES
-
-The following two examples create the version 3 UUID
-C<02d9e6d5-9467-382e-8f9b-9300a64ac3cd>, both via the OO-style and the
-C-style API. Error handling is omitted here for easier reading, but has
-to be added for production-quality code.
-
- # TIE-style API (very high-level)
- use OSSP::uuid;
- tie my $uuid, 'OSSP::uuid::tie';
- $uuid = [ "v1" ];
- print "UUIDs: $uuid, $uuid, $uuid\n";
- $uuid = [ "v3", "ns:URL", "http://www.ossp.org/" ];
- print "UUIDs: $uuid, $uuid, $uuid\n";
- untie $uuid;
-
- # OO-style API (high-level)
- use OSSP::uuid;
- my $uuid = new OSSP::uuid;
- my $uuid_ns = new OSSP::uuid;
- $uuid_ns->load("ns:URL");
- $uuid->make("v3", $uuid_ns, "http://www.ossp.org/");
- undef $uuid_ns;
- my $str = $uuid->export("str");
- undef $uuid;
- print "$str\n";
-
- # C-style API (low-level)
- use OSSP::uuid qw(:all);
- my $uuid; uuid_create($uuid);
- my $uuid_ns; uuid_create($uuid_ns);
- uuid_load($uuid_ns, "ns:URL");
- uuid_make($uuid, UUID_MAKE_V3, $uuid_ns, "http://www.ossp.org/");
- uuid_destroy($uuid_ns);
- my $str; uuid_export($uuid, UUID_FMT_STR, $str, undef);
- uuid_destroy($uuid);
- print "$str\n";
-
-=head1 SEE ALSO
-
-uuid(1), uuid-config(1), uuid(3).
-
-=head1 HISTORY
-
-The Perl binding B<OSSP::uuid> to B<OSSP uuid> was implemented in
-November 2004 by Ralf S. Engelschall E<lt>rse@engelschall.comE<gt>.
-
-=cut
-
diff --git a/shared/ossp_uuid/perl/uuid.tm b/shared/ossp_uuid/perl/uuid.tm
deleted file mode 100644
index 71ac32f6..00000000
--- a/shared/ossp_uuid/perl/uuid.tm
+++ /dev/null
@@ -1,39 +0,0 @@
-##
-## OSSP uuid - Universally Unique Identifier
-## Copyright (c) 2004-2007 Ralf S. Engelschall <rse@engelschall.com>
-## Copyright (c) 2004-2007 The OSSP Project <http://www.ossp.org/>
-##
-## This file is part of OSSP uuid, a library for the generation
-## of UUIDs which can found at http://www.ossp.org/pkg/lib/uuid/
-##
-## Permission to use, copy, modify, and distribute this software for
-## any purpose with or without fee is hereby granted, provided that
-## the above copyright notice and this permission notice appear in all
-## copies.
-##
-## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
-## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-## SUCH DAMAGE.
-##
-## uuid.tm: Perl XS typemap for xsubpp(1)
-##
-
-TYPEMAP
-uuid_t * T_PTRREF
-uuid_t ** T_PTRREF
-uuid_rc_t T_IV
-uuid_fmt_t T_IV
-int * T_PV
-size_t * T_PV
-const void * T_PV
-void ** T_PV
-
diff --git a/shared/ossp_uuid/perl/uuid.ts b/shared/ossp_uuid/perl/uuid.ts
deleted file mode 100644
index 298e26de..00000000
--- a/shared/ossp_uuid/perl/uuid.ts
+++ /dev/null
@@ -1,171 +0,0 @@
-##
-## OSSP uuid - Universally Unique Identifier
-## Copyright (c) 2004-2007 Ralf S. Engelschall <rse@engelschall.com>
-## Copyright (c) 2004-2007 The OSSP Project <http://www.ossp.org/>
-##
-## This file is part of OSSP uuid, a library for the generation
-## of UUIDs which can found at http://www.ossp.org/pkg/lib/uuid/
-##
-## Permission to use, copy, modify, and distribute this software for
-## any purpose with or without fee is hereby granted, provided that
-## the above copyright notice and this permission notice appear in all
-## copies.
-##
-## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
-## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-## SUCH DAMAGE.
-##
-## uuid.ts: Perl Binding (Perl test suite part)
-##
-
-use Test::More tests => 36;
-
-##
-## Module Loading
-##
-
-BEGIN {
- use_ok('OSSP::uuid');
-};
-BEGIN {
- use OSSP::uuid qw(:all);
- ok(defined(UUID_VERSION), "UUID_VERSION");
- ok(UUID_RC_OK == 0, "UUID_RC_OK");
-};
-
-##
-## C-Style API
-##
-
-my ($rc, $result, $uuid, $uuid_ns, $str, $ptr, $len);
-
-$rc = uuid_create($uuid);
-ok($rc == UUID_RC_OK, "uuid_create (1)");
-$rc = uuid_create($uuid_ns);
-ok($rc == UUID_RC_OK, "uuid_create (2)");
-
-$rc = uuid_isnil($uuid, $result);
-ok(($rc == UUID_RC_OK and $result == 1), "uuid_isnil (1)");
-$rc = uuid_isnil($uuid_ns, $result);
-ok(($rc == UUID_RC_OK and $result == 1), "uuid_isnil (2)");
-$rc = uuid_compare($uuid, $uuid_ns, $result);
-ok(($rc == UUID_RC_OK and $result == 0), "uuid_compare (1)");
-$rc = uuid_export($uuid, UUID_FMT_STR, $ptr, $len);
-ok(( $rc == UUID_RC_OK
- and $ptr eq "00000000-0000-0000-0000-000000000000"
- and $len == UUID_LEN_STR), "uuid_export (1)");
-
-$rc = uuid_load($uuid_ns, "ns:URL");
-ok($rc == UUID_RC_OK, "uuid_load (1)");
-$rc = uuid_export($uuid_ns, UUID_FMT_STR, $ptr, $len);
-ok(( $rc == UUID_RC_OK
- and $ptr eq "6ba7b811-9dad-11d1-80b4-00c04fd430c8"
- and $len == UUID_LEN_STR), "uuid_export (2)");
-
-$rc = uuid_make($uuid, UUID_MAKE_V3, $uuid_ns, "http://www.ossp.org/");
-ok($rc == UUID_RC_OK, "uuid_make (1)");
-$rc = uuid_export($uuid, UUID_FMT_STR, $ptr, $len);
-ok(( $rc == UUID_RC_OK
- and $ptr eq "02d9e6d5-9467-382e-8f9b-9300a64ac3cd"
- and $len == UUID_LEN_STR), "uuid_export (3)");
-
-$rc = uuid_export($uuid, UUID_FMT_BIN, $ptr, $len);
-ok(( $rc == UUID_RC_OK
- and $len == UUID_LEN_BIN), "uuid_export (4)");
-$rc = uuid_import($uuid_ns, UUID_FMT_BIN, $ptr, $len);
-ok($rc == UUID_RC_OK, "uuid_import (1)");
-$rc = uuid_export($uuid_ns, UUID_FMT_STR, $ptr, $len);
-ok(( $rc == UUID_RC_OK
- and $ptr eq "02d9e6d5-9467-382e-8f9b-9300a64ac3cd"
- and $len == UUID_LEN_STR), "uuid_export (5)");
-$rc = uuid_export($uuid_ns, UUID_FMT_SIV, $ptr, $len);
-ok(( $rc == UUID_RC_OK
- and $ptr eq "3789866285607910888100818383505376205"
- and $len <= UUID_LEN_SIV), "uuid_export (6)");
-
-$rc = uuid_destroy($uuid_ns);
-ok($rc == UUID_RC_OK, "uuid_destroy (1)");
-$rc = uuid_destroy($uuid);
-ok($rc == UUID_RC_OK, "uuid_destroy (2)");
-
-##
-## OO-style API
-##
-
-$uuid = new OSSP::uuid;
-ok(defined($uuid), "new OSSP::uuid (1)");
-$uuid_ns = new OSSP::uuid;
-ok(defined($uuid_ns), "new OSSP::uuid (2)");
-
-$rc = $uuid->isnil();
-ok((defined($rc) and $rc == 1), "isnil (1)");
-$rc = $uuid_ns->isnil();
-ok((defined($rc) and $rc == 1), "isnil (2)");
-
-$rc = $uuid->compare($uuid_ns);
-ok((defined($rc) and $rc == 0), "compare (1)");
-
-$ptr = $uuid->export("str");
-ok(( defined($ptr)
- and $ptr eq "00000000-0000-0000-0000-000000000000"
- and length($ptr) == UUID_LEN_STR), "export (1)");
-
-$rc = $uuid_ns->load("ns:URL");
-ok(defined($rc), "uuid_load (1)");
-$ptr = $uuid_ns->export("str");
-ok(( defined($ptr)
- and $ptr eq "6ba7b811-9dad-11d1-80b4-00c04fd430c8"
- and length($ptr) == UUID_LEN_STR), "export (2)");
-
-$rc = $uuid->make("v3", $uuid_ns, "http://www.ossp.org/");
-ok(defined($rc), "make (1)");
-$ptr = $uuid->export("str");
-ok(( defined($ptr)
- and $ptr eq "02d9e6d5-9467-382e-8f9b-9300a64ac3cd"
- and length($ptr) == UUID_LEN_STR), "export (3)");
-
-$ptr = $uuid->export("bin");
-ok(( defined($ptr)
- and length($ptr) == UUID_LEN_BIN), "export (4)");
-$rc = $uuid_ns->import("bin", $ptr);
-ok(defined($rc), "import (1)");
-$ptr = $uuid_ns->export("str");
-ok(( defined($ptr)
- and $ptr eq "02d9e6d5-9467-382e-8f9b-9300a64ac3cd"
- and length($ptr) == UUID_LEN_STR), "export (5)");
-
-undef $uuid;
-undef $uuid_ns;
-
-##
-## TIE API
-##
-
-$uuid = new OSSP::uuid;
-
-tie my $var, 'OSSP::uuid::tie';
-
-my $val_get1 = $var;
-my $val_get2 = $var;
-ok($val_get1 ne $val_get2, "subsequent generation");
-
-$uuid->import("str", $val_get1);
-my $val_cmp1 = $uuid->export("str");
-$uuid->import("str", $val_get2);
-my $val_cmp2 = $uuid->export("str");
-ok($val_get1 eq $val_cmp1, "validity comparison 1");
-ok($val_get2 eq $val_cmp2, "validity comparison 2");
-
-$var = [ "v3", "ns:URL", "http://www.ossp.org/" ];
-$val_get1 = $var;
-ok($val_get1 eq "02d9e6d5-9467-382e-8f9b-9300a64ac3cd", "generation of UUID v3");
-
diff --git a/shared/ossp_uuid/perl/uuid.xs b/shared/ossp_uuid/perl/uuid.xs
deleted file mode 100644
index a9ed41d2..00000000
--- a/shared/ossp_uuid/perl/uuid.xs
+++ /dev/null
@@ -1,236 +0,0 @@
-/*
-** OSSP uuid - Universally Unique Identifier
-** Copyright (c) 2004-2007 Ralf S. Engelschall <rse@engelschall.com>
-** Copyright (c) 2004-2007 The OSSP Project <http://www.ossp.org/>
-**
-** This file is part of OSSP uuid, a library for the generation
-** of UUIDs which can found at http://www.ossp.org/pkg/lib/uuid/
-**
-** Permission to use, copy, modify, and distribute this software for
-** any purpose with or without fee is hereby granted, provided that
-** the above copyright notice and this permission notice appear in all
-** copies.
-**
-** THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-** WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-** MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-** IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
-** CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-** USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-** SUCH DAMAGE.
-**
-** uuid.xs: Perl Binding (Perl/XS part)
-*/
-
-#include "uuid.h"
-
-#include "EXTERN.h"
-#include "perl.h"
-#include "XSUB.h"
-
-MODULE = OSSP::uuid PACKAGE = OSSP::uuid
-
-void
-constant(sv)
- PREINIT:
- dXSTARG;
- STRLEN len;
- int i;
- static struct {
- const char *name;
- int value;
- } constant_table[] = {
- { "UUID_VERSION", UUID_VERSION },
- { "UUID_LEN_BIN", UUID_LEN_BIN },
- { "UUID_LEN_STR", UUID_LEN_STR },
- { "UUID_LEN_SIV", UUID_LEN_SIV },
- { "UUID_RC_OK", UUID_RC_OK },
- { "UUID_RC_ARG", UUID_RC_ARG },
- { "UUID_RC_MEM", UUID_RC_MEM },
- { "UUID_RC_SYS", UUID_RC_SYS },
- { "UUID_RC_INT", UUID_RC_INT },
- { "UUID_RC_IMP", UUID_RC_IMP },
- { "UUID_MAKE_V1", UUID_MAKE_V1 },
- { "UUID_MAKE_V3", UUID_MAKE_V3 },
- { "UUID_MAKE_V4", UUID_MAKE_V4 },
- { "UUID_MAKE_V5", UUID_MAKE_V5 },
- { "UUID_MAKE_MC", UUID_MAKE_MC },
- { "UUID_FMT_BIN", UUID_FMT_BIN },
- { "UUID_FMT_STR", UUID_FMT_STR },
- { "UUID_FMT_SIV", UUID_FMT_SIV },
- { "UUID_FMT_TXT", UUID_FMT_TXT }
- };
- INPUT:
- SV *sv;
- const char *s = SvPV(sv, len);
- PPCODE:
- for (i = 0; i < sizeof(constant_table)/sizeof(constant_table[0]); i++) {
- if (strcmp(s, constant_table[i].name) == 0) {
- EXTEND(SP, 1);
- PUSHs(&PL_sv_undef);
- PUSHi(constant_table[i].value);
- break;
- }
- }
- if (i == sizeof(constant_table)/sizeof(constant_table[0])) {
- sv = sv_2mortal(newSVpvf("unknown contant OSSP::uuid::%s", s));
- PUSHs(sv);
- }
-
-
-uuid_rc_t
-uuid_create(uuid)
- PROTOTYPE:
- $
- INPUT:
- uuid_t *&uuid = NO_INIT
- CODE:
- RETVAL = uuid_create(&uuid);
- OUTPUT:
- uuid
- RETVAL
-
-uuid_rc_t
-uuid_destroy(uuid)
- PROTOTYPE:
- $
- INPUT:
- uuid_t *uuid
- CODE:
- RETVAL = uuid_destroy(uuid);
- OUTPUT:
- RETVAL
-
-uuid_rc_t
-uuid_load(uuid,name)
- PROTOTYPE:
- $$
- INPUT:
- uuid_t *uuid
- const char *name
- CODE:
- RETVAL = uuid_load(uuid, name);
- OUTPUT:
- RETVAL
-
-uuid_rc_t
-uuid_make(uuid,mode,...)
- PROTOTYPE:
- $$;$$
- INPUT:
- uuid_t *uuid
- unsigned int mode
- PREINIT:
- uuid_t *ns;
- const char *name;
- CODE:
- if ((mode & UUID_MAKE_V3) || (mode & UUID_MAKE_V5)) {
- if (items != 4)
- croak("mode UUID_MAKE_V3/UUID_MAKE_V5 requires two additional arguments to uuid_make()");
- if (!SvROK(ST(2)))
- croak("mode UUID_MAKE_V3/UUID_MAKE_V5 requires a UUID object as namespace");
- ns = INT2PTR(uuid_t *, SvIV((SV*)SvRV(ST(2))));
- name = (const char *)SvPV_nolen(ST(3));
- RETVAL = uuid_make(uuid, mode, ns, name);
- }
- else {
- if (items != 2)
- croak("invalid number of arguments to uuid_make()");
- RETVAL = uuid_make(uuid, mode);
- }
- OUTPUT:
- RETVAL
-
-uuid_rc_t
-uuid_isnil(uuid,result)
- PROTOTYPE:
- $$
- INPUT:
- uuid_t *uuid
- int &result = NO_INIT
- CODE:
- RETVAL = uuid_isnil(uuid, &result);
- OUTPUT:
- result
- RETVAL
-
-uuid_rc_t
-uuid_compare(uuid,uuid2,result)
- PROTOTYPE:
- $$$
- INPUT:
- uuid_t *uuid
- uuid_t *uuid2
- int &result = NO_INIT
- CODE:
- RETVAL = uuid_compare(uuid, uuid2, &result);
- OUTPUT:
- result
- RETVAL
-
-uuid_rc_t
-uuid_import(uuid,fmt,data_ptr,data_len)
- PROTOTYPE:
- $$$$
- INPUT:
- uuid_t *uuid
- uuid_fmt_t fmt
- const void *data_ptr
- size_t data_len
- CODE:
- if (ST(3) == &PL_sv_undef)
- data_len = sv_len(ST(2));
- RETVAL = uuid_import(uuid, fmt, data_ptr, data_len);
- OUTPUT:
- RETVAL
-
-uuid_rc_t
-uuid_export(uuid,fmt,data_ptr,data_len)
- PROTOTYPE:
- $$$$
- INPUT:
- uuid_t *uuid
- uuid_fmt_t fmt
- void *&data_ptr = NO_INIT
- size_t &data_len = NO_INIT
- PPCODE:
- data_ptr = NULL;
- data_len = 0;
- RETVAL = uuid_export(uuid, fmt, &data_ptr, &data_len);
- if (RETVAL == UUID_RC_OK) {
- if (fmt == UUID_FMT_SIV)
- data_len = strlen((char *)data_ptr);
- else if (fmt == UUID_FMT_STR || fmt == UUID_FMT_TXT)
- data_len--; /* Perl doesn't wish NUL-termination on strings */
- sv_setpvn(ST(2), data_ptr, data_len);
- free(data_ptr);
- if (ST(3) != &PL_sv_undef)
- sv_setuv(ST(3), (UV)data_len);
- }
- PUSHi((IV)RETVAL);
-
-char *
-uuid_error(rc)
- PROTOTYPE:
- $
- INPUT:
- uuid_rc_t rc
- CODE:
- RETVAL = uuid_error(rc);
- OUTPUT:
- RETVAL
-
-unsigned long
-uuid_version()
- PROTOTYPE:
- INPUT:
- CODE:
- RETVAL = uuid_version();
- OUTPUT:
- RETVAL
-
diff --git a/shared/ossp_uuid/perl/uuid_compat.pm b/shared/ossp_uuid/perl/uuid_compat.pm
deleted file mode 100644
index fdc57125..00000000
--- a/shared/ossp_uuid/perl/uuid_compat.pm
+++ /dev/null
@@ -1,176 +0,0 @@
-##
-## OSSP uuid - Universally Unique Identifier
-## Copyright (c) 2004-2007 Ralf S. Engelschall <rse@engelschall.com>
-## Copyright (c) 2004-2007 The OSSP Project <http://www.ossp.org/>
-## Copyright (c) 2004 Piotr Roszatycki <dexter@debian.org>
-##
-## This file is part of OSSP uuid, a library for the generation
-## of UUIDs which can found at http://www.ossp.org/pkg/lib/uuid/
-##
-## Permission to use, copy, modify, and distribute this software for
-## any purpose with or without fee is hereby granted, provided that
-## the above copyright notice and this permission notice appear in all
-## copies.
-##
-## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
-## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-## SUCH DAMAGE.
-##
-## uuid_compat.pm: Data::UUID Backward Compatibility Perl API
-##
-
-package Data::UUID;
-
-use 5.006;
-use warnings;
-use strict;
-
-use OSSP::uuid;
-use MIME::Base64 qw();
-
-require Exporter;
-
-our @ISA = qw(Exporter);
-our @EXPORT = qw(NameSpace_DNS NameSpace_OID NameSpace_URL NameSpace_X500);
-
-our $VERSION = do { my @v = ('1.6.2' =~ m/\d+/g); sprintf("%d.".("%02d"x$#v), @v); };
-
-sub new {
- my $class = shift;
- my $self = bless {}, $class;
- return $self;
-}
-
-sub create {
- my ($self) = @_;
- my $uuid = OSSP::uuid->new;
- $uuid->make('v4');
- return $uuid->export('bin');
-}
-
-sub create_from_name {
- my ($self, $nsid, $name) = @_;
- my $uuid = OSSP::uuid->new;
- my $nsiduuid = OSSP::uuid->new;
- $nsiduuid->import('bin', $nsiduuid);
- $uuid = OSSP::uuid->new;
- $uuid->make('v3', $nsiduuid, $name);
- return $uuid->export('bin');
-}
-
-sub to_string {
- my ($self, $bin) = @_;
- my $uuid = OSSP::uuid->new;
- $uuid->import('bin', $bin);
- return $uuid->export('str');
-}
-
-sub to_hexstring {
- my ($self, $bin) = @_;
- my $uuid = OSSP::uuid->new;
- $uuid->import('bin', $bin);
- (my $string = '0x' . $uuid->export('str')) =~ s/-//g;
- return $string;
-}
-
-sub to_b64string {
- my ($self, $bin) = @_;
- return MIME::Base64::encode_base64($bin, '');
-}
-
-sub from_string {
- my ($self, $str) = @_;
- my $uuid = OSSP::uuid->new;
- $uuid->import('str',
- $str =~ /^0x/
- ? join '-', unpack('x2 a8 a4 a4 a4 a12', $str)
- : $str
- );
- return $uuid->export('bin');
-}
-
-sub from_hexstring {
- my ($self, $str) = @_;
- my $uuid = OSSP::uuid->new;
- $uuid->import('str', join '-', unpack('x2 a8 a4 a4 a4 a12', $str));
- return $uuid->export('bin');
-}
-
-sub from_b64string {
- my ($self, $b64) = @_;
- return MIME::Base64::decode_base64($b64);
-}
-
-sub compare {
- my ($self, $bin1, $bin2) = @_;
- my $uuid1 = OSSP::uuid->new;
- my $uuid2 = OSSP::uuid->new;
- $uuid1->import('bin', $bin1);
- $uuid2->import('bin', $bin2);
- return $uuid1->compare($uuid2);
-}
-
-my %NS = (
- 'NameSpace_DNS' => 'ns:DNS',
- 'NameSpace_URL' => 'ns:URL',
- 'NameSpace_OID' => 'ns:OID',
- 'NameSpace_X500' => 'ns:X500',
-);
-
-while (my ($k, $v) = each %NS) {
- no strict 'refs';
- *{$k} = sub () {
- my $uuid = OSSP::uuid->new;
- $uuid->load($v);
- return $uuid->export('bin');
- };
-}
-
-sub constant {
- my ($self, $arg) = @_;
- my $uuid = OSSP::uuid->new;
- $uuid->load($NS{$arg} || 'nil');
- return $uuid->export('bin');
-}
-
-sub create_str {
- my $self = shift;
- return $self->to_string($self->create);
-}
-
-sub create_hex {
- my $self = shift;
- return $self->to_hexstring($self->create);
-}
-
-sub create_b64 {
- my $self = shift;
- return $self->to_b64string($self->create);
-}
-
-sub create_from_name_str {
- my $self = shift;
- return $self->to_string($self->create_from_name(@_));
-}
-
-sub create_from_name_hex {
- my $self = shift;
- return $self->to_hexstring($self->create_from_name(@_));
-}
-
-sub create_from_name_b64 {
- my $self = shift;
- return $self->to_b64string($self->create_from_name(@_));
-}
-
-1;
-
diff --git a/shared/ossp_uuid/perl/uuid_compat.pod b/shared/ossp_uuid/perl/uuid_compat.pod
deleted file mode 100644
index e695acae..00000000
--- a/shared/ossp_uuid/perl/uuid_compat.pod
+++ /dev/null
@@ -1,55 +0,0 @@
-##
-## OSSP uuid - Universally Unique Identifier
-## Copyright (c) 2004-2007 Ralf S. Engelschall <rse@engelschall.com>
-## Copyright (c) 2004-2007 The OSSP Project <http://www.ossp.org/>
-##
-## This file is part of OSSP uuid, a library for the generation
-## of UUIDs which can found at http://www.ossp.org/pkg/lib/uuid/
-##
-## Permission to use, copy, modify, and distribute this software for
-## any purpose with or without fee is hereby granted, provided that
-## the above copyright notice and this permission notice appear in all
-## copies.
-##
-## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
-## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-## SUCH DAMAGE.
-##
-## uuid_compat.pod: Data::UUID Backward Compatibility Perl API (Perl/POD part)
-##
-
-=pod
-
-=head1 NAME
-
-Data::UUID - B<OSSP uuid> Backward Compatibility Perl Binding
-
-=head1 DESCRIPTION
-
-B<Data::UUID> is the B<OSSP uuid> backward compatibility Perl binding
-to the API of the original B<Data::UUID> module. It allows other
-B<Data::UUID> based Perl modules to run with B<OSSP::uuid> without
-changes.
-
-=head1 SEE ALSO
-
-B<OSSP::uuid>.
-
-=head1 HISTORY
-
-The backward compatibility Perl binding B<Data::UUID> for B<OSSP
-uuid> was originally implemented in 2004 by Piotr Roszatycki
-E<lt>dexter@debian.orgE<gt>. It was later cleaned up and speed optimized
-in December 2005 by David Wheeler E<lt>david@justatheory.comE<gt>.
-
-=cut
-
diff --git a/shared/ossp_uuid/perl/uuid_compat.ts b/shared/ossp_uuid/perl/uuid_compat.ts
deleted file mode 100644
index 12507c69..00000000
--- a/shared/ossp_uuid/perl/uuid_compat.ts
+++ /dev/null
@@ -1,55 +0,0 @@
-##
-## OSSP uuid - Universally Unique Identifier
-## Copyright (c) 2004-2007 Ralf S. Engelschall <rse@engelschall.com>
-## Copyright (c) 2004-2007 The OSSP Project <http://www.ossp.org/>
-## Copyright (c) 2004 Piotr Roszatycki <dexter@debian.org>
-##
-## This file is part of OSSP uuid, a library for the generation
-## of UUIDs which can found at http://www.ossp.org/pkg/lib/uuid/
-##
-## Permission to use, copy, modify, and distribute this software for
-## any purpose with or without fee is hereby granted, provided that
-## the above copyright notice and this permission notice appear in all
-## copies.
-##
-## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
-## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
-## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-## SUCH DAMAGE.
-##
-## uuid_compat.ts: Data::UUID Backward Compatibility Perl API (Perl test suite part)
-##
-
-use Test::More tests => 14;
-
-BEGIN {
- use_ok('Data::UUID');
- use Data::UUID;
-};
-
-ok($ug = new Data::UUID);
-
-ok($uuid1 = $ug->create());
-ok($uuid2 = $ug->to_hexstring($uuid1));
-ok($uuid3 = $ug->from_string($uuid2));
-ok($ug->compare($uuid1, $uuid3) == 0);
-
-ok($uuid4 = $ug->to_b64string($uuid1));
-ok($uuid5 = $ug->to_b64string($uuid3));
-ok($uuid4 eq $uuid5);
-
-ok($uuid6 = $ug->from_b64string($uuid5));
-ok($ug->compare($uuid6, $uuid1) == 0);
-
-ok($uuid7 = NameSpace_URL);
-ok($uuid8 = $ug->from_string("6ba7b811-9dad-11d1-80b4-00c04fd430c8"));
-ok($ug->compare($uuid7, $uuid8) == 0);
-
bgstack15