summaryrefslogtreecommitdiff
path: root/shared/ossp_uuid/perl/uuid.xs
diff options
context:
space:
mode:
Diffstat (limited to 'shared/ossp_uuid/perl/uuid.xs')
-rw-r--r--shared/ossp_uuid/perl/uuid.xs236
1 files changed, 0 insertions, 236 deletions
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
-
bgstack15