Report for Crypt-PKCS11-1.03

Back
From: metabase:user:553c21ce-8d47-11df-9de5-e28c4c42590d
Subject: FAIL Crypt-PKCS11-1.03 v5.22.0 GNU/Linux
Date: 2015-07-30T20:51:11Z

This distribution has been tested as part of the CPAN Testers
project, supporting the Perl programming language.  See
http://wiki.cpantesters.org/ for more information or email
questions to cpan-testers-discuss@perl.org


--
Dear JELU,

This is a computer-generated report for Crypt-PKCS11-1.03
on perl 5.22.0, created by App::cpanminus::reporter 0.13 (1.7039).

Thank you for uploading your work to CPAN.  However, there was a problem
testing your distribution.

If you think this report is invalid, please consult the CPAN Testers Wiki
for suggestions on how to avoid getting FAIL reports for missing library
or binary dependencies, unsupported operating systems, and so on:

http://wiki.cpantesters.org/wiki/CPANAuthorNotes

Sections of this report:

    * Tester comments
    * Program output
    * Prerequisites
    * Environment and other context

------------------------------
TESTER COMMENTS
------------------------------

Additional comments from tester:

none provided

------------------------------
PROGRAM OUTPUT
------------------------------

Output from '':

Building and testing Crypt-PKCS11-1.03
Running Mkbootstrap for Crypt::PKCS11 ()
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_aes.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_aria.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_camellia.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_cms.c
chmod 644 "PKCS11.bs"
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_des.c
cp lib/Crypt/PKCS11/Attribute/CK_ULONG.pm blib/lib/Crypt/PKCS11/Attribute/CK_ULONG.pm
cp lib/Crypt/PKCS11/Attribute/CK_BBOOL.pod blib/lib/Crypt/PKCS11/Attribute/CK_BBOOL.pod
cp lib/Crypt/PKCS11/CK_AES_CTR_PARAMS.pod blib/lib/Crypt/PKCS11/CK_AES_CTR_PARAMS.pod
cp lib/Crypt/PKCS11/CK_AES_GCM_PARAMS.pod blib/lib/Crypt/PKCS11/CK_AES_GCM_PARAMS.pod
cp lib/Crypt/PKCS11/Attribute/ByteArray.pod blib/lib/Crypt/PKCS11/Attribute/ByteArray.pod
cp lib/Crypt/PKCS11/Attribute/Value.pod blib/lib/Crypt/PKCS11/Attribute/Value.pod
cp lib/Crypt/PKCS11/Attribute/CK_DATE.pm blib/lib/Crypt/PKCS11/Attribute/CK_DATE.pm
cp lib/Crypt/PKCS11/Attribute/CK_DATE.pod blib/lib/Crypt/PKCS11/Attribute/CK_DATE.pod
cp lib/Crypt/PKCS11/Attribute/CK_ULONG.pod blib/lib/Crypt/PKCS11/Attribute/CK_ULONG.pod
cp lib/Crypt/PKCS11/CK_CAMELLIA_CBC_ENCRYPT_DATA_PARAMS.pod blib/lib/Crypt/PKCS11/CK_CAMELLIA_CBC_ENCRYPT_DATA_PARAMS.pod
cp lib/Crypt/PKCS11/Attribute/ByteArray.pm blib/lib/Crypt/PKCS11/Attribute/ByteArray.pm
cp lib/Crypt/PKCS11/Attributes.pod blib/lib/Crypt/PKCS11/Attributes.pod
cp lib/Crypt/PKCS11/Attribute.pm blib/lib/Crypt/PKCS11/Attribute.pm
cp lib/Crypt/PKCS11/CK_AES_CBC_ENCRYPT_DATA_PARAMS.pod blib/lib/Crypt/PKCS11/CK_AES_CBC_ENCRYPT_DATA_PARAMS.pod
cp lib/Crypt/PKCS11.pm blib/lib/Crypt/PKCS11.pm
cp lib/Crypt/PKCS11/Attribute/RFC2279string.pm blib/lib/Crypt/PKCS11/Attribute/RFC2279string.pm
cp lib/Crypt/PKCS11/Attribute/RFC2279string.pod blib/lib/Crypt/PKCS11/Attribute/RFC2279string.pod
cp lib/Crypt/PKCS11/Attribute/AttributeArray.pod blib/lib/Crypt/PKCS11/Attribute/AttributeArray.pod
cp lib/Crypt/PKCS11.pod blib/lib/Crypt/PKCS11.pod
cp lib/Crypt/PKCS11/Attribute/UlongArray.pod blib/lib/Crypt/PKCS11/Attribute/UlongArray.pod
cp lib/Crypt/PKCS11/Attribute/CK_BBOOL.pm blib/lib/Crypt/PKCS11/Attribute/CK_BBOOL.pm
cp lib/Crypt/PKCS11/CK_ARIA_CBC_ENCRYPT_DATA_PARAMS.pod blib/lib/Crypt/PKCS11/CK_ARIA_CBC_ENCRYPT_DATA_PARAMS.pod
cp lib/Crypt/PKCS11/Attribute/UlongArray.pm blib/lib/Crypt/PKCS11/Attribute/UlongArray.pm
cp lib/Crypt/PKCS11/Attribute/CK_BYTE.pod blib/lib/Crypt/PKCS11/Attribute/CK_BYTE.pod
cp lib/Crypt/PKCS11/Attribute.pod blib/lib/Crypt/PKCS11/Attribute.pod
cp lib/Crypt/PKCS11/Attribute/AttributeArray.pm blib/lib/Crypt/PKCS11/Attribute/AttributeArray.pm
cp lib/Crypt/PKCS11/CK_CAMELLIA_CTR_PARAMS.pod blib/lib/Crypt/PKCS11/CK_CAMELLIA_CTR_PARAMS.pod
cp lib/Crypt/PKCS11/Attributes.pm blib/lib/Crypt/PKCS11/Attributes.pm
cp lib/Crypt/PKCS11/CK_AES_CCM_PARAMS.pod blib/lib/Crypt/PKCS11/CK_AES_CCM_PARAMS.pod
cp lib/Crypt/PKCS11/Attribute/CK_BYTE.pm blib/lib/Crypt/PKCS11/Attribute/CK_BYTE.pm
cp lib/Crypt/PKCS11/Attribute/Value.pm blib/lib/Crypt/PKCS11/Attribute/Value.pm
cp lib/Crypt/PKCS11/CK_OTP_PARAMS.pod blib/lib/Crypt/PKCS11/CK_OTP_PARAMS.pod
cp lib/Crypt/PKCS11/CK_SKIPJACK_RELAYX_PARAMS.pod blib/lib/Crypt/PKCS11/CK_SKIPJACK_RELAYX_PARAMS.pod
cp lib/Crypt/PKCS11/CK_PKCS5_PBKD2_PARAMS.pod blib/lib/Crypt/PKCS11/CK_PKCS5_PBKD2_PARAMS.pod
cp lib/Crypt/PKCS11/CK_SSL3_KEY_MAT_OUT.pod blib/lib/Crypt/PKCS11/CK_SSL3_KEY_MAT_OUT.pod
cp lib/Crypt/PKCS11/CK_KIP_PARAMS.pod blib/lib/Crypt/PKCS11/CK_KIP_PARAMS.pod
cp lib/Crypt/PKCS11/CK_RC5_MAC_GENERAL_PARAMS.pod blib/lib/Crypt/PKCS11/CK_RC5_MAC_GENERAL_PARAMS.pod
cp lib/Crypt/PKCS11/CK_PBE_PARAMS.pod blib/lib/Crypt/PKCS11/CK_PBE_PARAMS.pod
cp lib/Crypt/PKCS11/CK_KEY_DERIVATION_STRING_DATA.pod blib/lib/Crypt/PKCS11/CK_KEY_DERIVATION_STRING_DATA.pod
cp lib/Crypt/PKCS11/CK_ECDH2_DERIVE_PARAMS.pod blib/lib/Crypt/PKCS11/CK_ECDH2_DERIVE_PARAMS.pod
cp lib/Crypt/PKCS11/CK_ECDH1_DERIVE_PARAMS.pod blib/lib/Crypt/PKCS11/CK_ECDH1_DERIVE_PARAMS.pod
cp lib/Crypt/PKCS11/CK_KEY_WRAP_SET_OAEP_PARAMS.pod blib/lib/Crypt/PKCS11/CK_KEY_WRAP_SET_OAEP_PARAMS.pod
cp lib/Crypt/PKCS11/CK_OTP_PARAM.pod blib/lib/Crypt/PKCS11/CK_OTP_PARAM.pod
cp lib/Crypt/PKCS11/CK_CMS_SIG_PARAMS.pod blib/lib/Crypt/PKCS11/CK_CMS_SIG_PARAMS.pod
cp lib/Crypt/PKCS11/CK_RSA_PKCS_OAEP_PARAMS.pod blib/lib/Crypt/PKCS11/CK_RSA_PKCS_OAEP_PARAMS.pod
cp lib/Crypt/PKCS11/CK_SSL3_RANDOM_DATA.pod blib/lib/Crypt/PKCS11/CK_SSL3_RANDOM_DATA.pod
cp lib/Crypt/PKCS11/CK_RC2_MAC_GENERAL_PARAMS.pod blib/lib/Crypt/PKCS11/CK_RC2_MAC_GENERAL_PARAMS.pod
cp lib/Crypt/PKCS11/CK_SSL3_MASTER_KEY_DERIVE_PARAMS.pod blib/lib/Crypt/PKCS11/CK_SSL3_MASTER_KEY_DERIVE_PARAMS.pod
cp lib/Crypt/PKCS11/CK_SSL3_KEY_MAT_PARAMS.pod blib/lib/Crypt/PKCS11/CK_SSL3_KEY_MAT_PARAMS.pod
cp lib/Crypt/PKCS11/CK_KEA_DERIVE_PARAMS.pod blib/lib/Crypt/PKCS11/CK_KEA_DERIVE_PARAMS.pod
cp lib/Crypt/PKCS11/CK_TLS_PRF_PARAMS.pod blib/lib/Crypt/PKCS11/CK_TLS_PRF_PARAMS.pod
cp lib/Crypt/PKCS11/CK_RC5_PARAMS.pod blib/lib/Crypt/PKCS11/CK_RC5_PARAMS.pod
cp lib/Crypt/PKCS11/CK_OTP_SIGNATURE_INFO.pod blib/lib/Crypt/PKCS11/CK_OTP_SIGNATURE_INFO.pod
cp lib/Crypt/PKCS11/CK_SKIPJACK_PRIVATE_WRAP_PARAMS.pod blib/lib/Crypt/PKCS11/CK_SKIPJACK_PRIVATE_WRAP_PARAMS.pod
cp lib/Crypt/PKCS11/CK_RSA_PKCS_PSS_PARAMS.pod blib/lib/Crypt/PKCS11/CK_RSA_PKCS_PSS_PARAMS.pod
cp lib/Crypt/PKCS11/CK_RC5_CBC_PARAMS.pod blib/lib/Crypt/PKCS11/CK_RC5_CBC_PARAMS.pod
cp lib/Crypt/PKCS11/CK_ECMQV_DERIVE_PARAMS.pod blib/lib/Crypt/PKCS11/CK_ECMQV_DERIVE_PARAMS.pod
cp lib/Crypt/PKCS11/CK_DES_CBC_ENCRYPT_DATA_PARAMS.pod blib/lib/Crypt/PKCS11/CK_DES_CBC_ENCRYPT_DATA_PARAMS.pod
cp lib/Crypt/PKCS11/CK_MECHANISM.pod blib/lib/Crypt/PKCS11/CK_MECHANISM.pod
cp lib/Crypt/PKCS11/CK_RC2_CBC_PARAMS.pod blib/lib/Crypt/PKCS11/CK_RC2_CBC_PARAMS.pod
cp lib/Crypt/PKCS11/CK_WTLS_PRF_PARAMS.pod blib/lib/Crypt/PKCS11/CK_WTLS_PRF_PARAMS.pod
cp lib/Crypt/PKCS11/CK_X9_42_DH2_DERIVE_PARAMS.pod blib/lib/Crypt/PKCS11/CK_X9_42_DH2_DERIVE_PARAMS.pod
cp lib/Crypt/PKCS11/CK_WTLS_RANDOM_DATA.pod blib/lib/Crypt/PKCS11/CK_WTLS_RANDOM_DATA.pod
cp lib/Crypt/PKCS11/CK_WTLS_MASTER_KEY_DERIVE_PARAMS.pod blib/lib/Crypt/PKCS11/CK_WTLS_MASTER_KEY_DERIVE_PARAMS.pod
cp lib/Crypt/PKCS11/CK_X9_42_DH1_DERIVE_PARAMS.pod blib/lib/Crypt/PKCS11/CK_X9_42_DH1_DERIVE_PARAMS.pod
cp lib/Crypt/PKCS11/XS.pod blib/lib/Crypt/PKCS11/XS.pod
cp lib/Crypt/PKCS11/Object.pm blib/lib/Crypt/PKCS11/Object.pm
cp lib/Crypt/PKCS11/CK_X9_42_MQV_DERIVE_PARAMS.pod blib/lib/Crypt/PKCS11/CK_X9_42_MQV_DERIVE_PARAMS.pod
cp lib/Crypt/PKCS11/Session.pod blib/lib/Crypt/PKCS11/Session.pod
cp lib/Crypt/PKCS11/CK_WTLS_KEY_MAT_OUT.pod blib/lib/Crypt/PKCS11/CK_WTLS_KEY_MAT_OUT.pod
cp lib/Crypt/PKCS11/Session.pm blib/lib/Crypt/PKCS11/Session.pm
cp lib/Crypt/PKCS11/CK_VERSION.pod blib/lib/Crypt/PKCS11/CK_VERSION.pod
cp lib/Crypt/PKCS11/CK_WTLS_KEY_MAT_PARAMS.pod blib/lib/Crypt/PKCS11/CK_WTLS_KEY_MAT_PARAMS.pod
cp lib/Crypt/PKCS11/Object.pod blib/lib/Crypt/PKCS11/Object.pod
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_ecdh1.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_ecdh2.c
crypt_pkcs11_struct_ecdh1.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_aria.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_cms.c:82:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11.c:455:24: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
    if (object->handle = dlopen(path, RTLD_NOW | RTLD_LOCAL)) {
        ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
crypt_pkcs11_struct_aes.ccrypt_pkcs11.c::78455::1624::  warningnote: : assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]place parentheses around the assignment to silence this warning

    if (object->handle = dlopen(path, RTLD_NOW | RTLD_LOCAL)) {
                       ^        || !(p = SvPVbyte(sv, l))

        (                                                   )               ^ ~~~~~~~~~~~~~~~

crypt_pkcs11.c:455:24: note: use '==' to turn this assignment into an equality comparison
    if (object->handle = dlopen(path, RTLD_NOW | RTLD_LOCAL)) {
                       ^
                       ==
crypt_pkcs11_struct_camellia.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_aria.c:121:19: warning: passing 'CK_BYTE [16]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.iv, 16 * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
crypt_pkcs11_struct_aes.c:/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h121::464119::73 :warning : notepassing 'CK_BYTE [16]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]: 
passing argument to parameter 'ptr' here
    sv_setpvn(sv, object->private.iv, 16 * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
crypt_pkcs11_struct_ecdh1.c:171:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
crypt_pkcs11_struct_cms.c:142:43: warning: passing 'CK_UTF8CHAR_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pSharedData, object->private.ulSharedDataLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
        CK_CHAR_PTR pContentType = savepv(object->private.pContentType);
                                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.hcrypt_pkcs11_struct_camellia.c::668137::/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h4919:::553PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)  :
notewarning38                                                                             ^: : :
expanded from macro 'sv_setpvn'passing 'CK_BYTE [16]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign] 

note: expanded from macro 'savepv'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)    sv_setpvn(sv, object->private.cb, 16 * sizeof(CK_BYTE));
#define savepv(a)               Perl_savepv(aTHX_ a)
                                                       ^
                  ^~~~~~~~~~~~~~~~~~
                                                  ^

/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:3955:51: note: passing argument to parameter 'pv' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
PERL_CALLCONV char*     Perl_savepv(pTHX_ const char* pv)
                                                      ^
crypt_pkcs11_struct_cms.c:142:21: warning: /home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.hinitializing 'CK_CHAR_PTR' (aka 'unsigned char *') with an expression of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]:
4641:73: note: passing argument to parameter 'ptr' here
        CK_CHAR_PTR pContentType = savepv(object->private.pContentType);
                    ^              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_ecdh1.c:202:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ecdh1.c:203:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_aria.c:172:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pData, object->private.length * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_aes.c:172:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pData, object->private.length * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_aria.c:203:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ecdh1.c:234:19: warning: crypt_pkcs11_struct_aria.cpassing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]:
204:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
    sv_setpvn(sv, object->private.pPublicData, object->private.ulPublicDataLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_aes.c:203:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_aes.c:204:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_camellia.c:212:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ecdh1.c:265:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ecdh1.c:266:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_des.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_camellia.c:255:19crypt_pkcs11_struct_aes.c:: 259warning:: 16passing 'CK_BYTE [16]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]:
 warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.iv, 16 * sizeof(CK_BYTE));        || !(p = SvPVbyte(sv, l))

                  ^~~~~~~~~~~~~~~~~~               ^ ~~~~~~~~~~~~~~~

/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_des.c:121:19: warning: passing 'CK_BYTE [8]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.iv, 8 * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_aes.c:318:19: warning: passing 'CK_BYTE [16]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.cb, 16 * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: crypt_pkcs11_struct_camellia.cexpanded from macro 'sv_setpvn':
306:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73:     sv_setpvn(sv, object->private.pData, object->private.length * sizeof(CK_BYTE));note
:                   ^~~~~~~~~~~~~~~~~~~~~passing argument to parameter 'ptr' here

/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_camellia.c:337:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_camellia.c:338:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_cms.c:370:18: warning: passing 'CK_UTF8CHAR_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
crypt_pkcs11_struct_des.c:172:19: warning    sv_setpv(sv, object->private.pContentType);: 
passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~

/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:660:46: note: expanded from macro 'sv_setpv'
    sv_setpvn(sv, object->private.pData, object->private.length * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h#define sv_setpv(a,b)           Perl_sv_setpv(aTHX_ a,b):
668                                                      ^:
49: note/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h: :expanded from macro 'sv_setpvn'4607
:72: note: passing argument to parameter 'ptr' here
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641PERL_CALLCONV void      Perl_sv_setpv(pTHX_ SV *const sv, const char *const ptr):
73                                                                            ^:
 note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_aes.c:393:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_des.c:203:16crypt_pkcs11_struct_cms.c:: 412warning:: 13assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]:
 warning: assigning to 'CK_CHAR_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
    if (!(p = SvPV(_sv, l))) {
            ^ ~~~~~~~~~~~~
crypt_pkcs11_struct_des.c:204:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11.c:929:crypt_pkcs11_struct_cms.c53::442 :warning19: :passing 'char *' to parameter of type 'CK_UTF8CHAR_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign] 
warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    rv = object->function_list->C_InitToken(slotID, _pPin2, len, _pLabel3 ? _pLabel3 : _pLabel2);
                                                    ^~~~~~
    sv_setpvn(sv, object->private.pRequestedAttributes, object->private.ulRequestedAttributesLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:crypt_pkcs11.c668::92949::66 :note : warningexpanded from macro 'sv_setpvn': 
passing 'char *' to parameter of type 'CK_UTF8CHAR_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h    rv = object->function_list->C_InitToken(slotID, _pPin2, len, _pLabel3 ? _pLabel3 : _pLabel2);:
4641                                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:
73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_aes.c:453:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pIv, object->private.ulIvLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.hcrypt_pkcs11_struct_cms.c::4641473::7316::  notewarning: : passing argument to parameter 'ptr' hereassigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]

        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_cms.c:474:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11.c:976:53: warning: passing 'char *' to parameter of type 'CK_UTF8CHAR_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
    rv = object->function_list->C_InitPIN(hSession, _pPin2, len);
                                                    ^~~~~~
crypt_pkcs11_struct_aes.c:484:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_aes.c:485:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_cms.c:505:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pRequiredAttributes, object->private.ulRequiredAttributesLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11.c:1041:52: warning: passing 'char *' to parameter of type 'CK_UTF8CHAR_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
    rv = object->function_list->C_SetPIN(hSession, _pOldPin2, oldLen, _pNewPin2, newLen);
                                                   ^~~~~~~~~
crypt_pkcs11.c:1041:71: warning: passing 'char *' to parameter of type 'CK_UTF8CHAR_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
    rv = object->function_list->C_SetPIN(hSession, _pOldPin2, oldLen, _pNewPin2, newLen);
                                                                      ^~~~~~~~~
crypt_pkcs11_struct_cms.c:536:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_cms.c:537:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_aes.c:549:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pAAD, object->private.ulAADLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_aes.c:580:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_aes.c:581:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11.c:1220:32: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(pOperationState, _pOperationState, ulOperationStateLen);
                               ^~~~~~~~~~~~~~~~
crypt_pkcs11_struct_aes.c:669:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11.c:1257:29: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
    if (ulOperationStateLen < 0) {
        ~~~~~~~~~~~~~~~~~~~ ^ ~
crypt_pkcs11.c:1305:65: warning: passing 'char *' to parameter of type 'CK_UTF8CHAR_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
crypt_pkcs11_struct_aes.c        rv = object->function_list->C_Login(hSession, userType, _pPin2, len);:
729                                                                ^~~~~~:
19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pNonce, object->private.ulNonceLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_aes.c:760:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_aes.c:761:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_aes.c:792:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pAAD, object->private.ulAADLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11.c:1479:28: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
                    || len < 0))
                       ~~~ ^ ~
crypt_pkcs11.c:1486:28: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
                    || len < 0)))
                       ~~~ ^ ~
crypt_pkcs11_struct_aes.c:823:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_aes.c:824:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
5 warnings generated.
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_ecmqv.c
crypt_pkcs11.c:1996:35: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
5 warnings generated.
                || ulParameterLen < 0)))
                   ~~~~~~~~~~~~~~ ^ ~
crypt_pkcs11.c:2039:22: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || ulFromLen < 0
           ~~~~~~~~~ ^ ~
crypt_pkcs11.c:2044:28: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
                || ulToLen < 0)))
                   ~~~~~~~ ^ ~
crypt_pkcs11.c:2056:34: warning: passing 'char *' to parameter of type 'CK_BYTE_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        if ((rv = call(hSession, _pFrom, (CK_ULONG)ulFromLen, NULL_PTR, &pulToLen)) != CKR_OK) {
                                 ^~~~~~
crypt_pkcs11.c:2067:5: warning: assigning to 'char *' from 'CK_BYTE *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
    Newxz(_pTo, pulToLen, CK_BYTE);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/handy.h:2021:25: note: expanded from macro 'Newxz'
#define Newxz(v,n,t)    (v = (MEM_WRAP_CHECK_(n,t) (t*)MEM_LOG_ALLOC(n,t,safecalloc((n),sizeof(t)))))
                           ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
crypt_pkcs11.c:2074:30: warning: passing 'char *' to parameter of type 'CK_BYTE_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
    if ((rv = call(hSession, _pFrom, (CK_ULONG)ulFromLen, _pTo, &pulToLen)) != CKR_OK) {
                             ^~~~~~
crypt_pkcs11.c:2074:59: warning: passing 'char *' to parameter of type 'CK_BYTE_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
    if ((rv = call(hSession, _pFrom, (CK_ULONG)ulFromLen, _pTo, &pulToLen)) != CKR_OK) {
                                                          ^~~~7
 warnings generated.
crypt_pkcs11.c:2104:22: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || ulFromLen < 0)
           ~~~~~~~~~ ^ ~clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_kea.c

crypt_pkcs11.c:2110:27: warning: passing 'char *' to parameter of type 'CK_BYTE_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
    return call(hSession, _pFrom, ulFromLen);
                          ^~~~~~
crypt_pkcs11.c:2133:26: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        && (!(_pLastPart = SvPVbyte(pLastPart, ulLastPartLen))
                         ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
crypt_pkcs11.c:2134:30: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
            || ulLastPartLen < 0))
               ~~~~~~~~~~~~~ ^ ~
crypt_pkcs11.c:2169:26: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(pLastPart, _pLastPart, pulLastPartLen * sizeof(CK_BYTE));
                         ^~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_key.c
crypt_pkcs11.c:2682:22: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || ulDataLen < 0
           ~~~~~~~~~ ^ ~
crypt_pkcs11.c:2684:27: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || ulSignatureLen < 0)
           ~~~~~~~~~~~~~~ ^ ~
crypt_pkcs11.c:2690:54: warning: passing 'char *' to parameter of type 'CK_BYTE_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
    return object->function_list->C_Verify(hSession, _pData, (CK_ULONG)ulDataLen, _pSignature, (CK_ULONG)ulSignatureLen);
                                                     ^~~~~~
crypt_pkcs11.c:2690:83: warning: passing 'char *' to parameter of type 'CK_BYTE_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
    return object->function_list->C_Verify(hSession, _pData, (CK_ULONG)ulDataLen, _pSignature, (CK_ULONG)ulSignatureLen);
                                                                                  ^~~~~~~~~~~
crypt_pkcs11.c:2735:27: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || ulSignatureLen < 0)
           ~~~~~~~~~~~~~~ ^ ~
crypt_pkcs11.c:2741:59: warning: passing 'char *' to parameter of type 'CK_BYTE_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
    return object->function_list->C_VerifyFinal(hSession, _pSignature, ulSignatureLen);
                                                          ^~~~~~~~~~~
7 warnings generated.
crypt_pkcs11.c:3073:22: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
    if (ulWrappedKey < 0) {
        ~~~~~~~~~~~~ ^ ~
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_kip.c
crypt_pkcs11.c:3101:28: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(pWrappedKey, _pWrappedKey, pulWrappedKey * sizeof(CK_BYTE));
                           ^~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11.c:3150:24: warning: assigning to 'char *' from 'CK_BYTE_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(_pWrappedKey = (CK_BYTE_PTR)SvPVbyte(pWrappedKey, ulWrappedKey))) {
                       ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
crypt_pkcs11.c:3154:22: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
    if (ulWrappedKey < 0) {
        ~~~~~~~~~~~~ ^ ~
crypt_pkcs11.c:3170:90: warning: passing 'char *' to parameter of type 'CK_BYTE_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
    if ((rv = object->function_list->C_UnwrapKey(hSession, &_pMechanism, hUnwrappingKey, _pWrappedKey, ulWrappedKey, _pTemplate, ulCount, &hKey)) != CKR_OK) {
                                                                                         ^~~~~~~~~~~~
crypt_pkcs11.c:3265:18: warning: assigning to 'char *' from 'CK_BYTE_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(_pSeed = (CK_BYTE_PTR)SvPVbyte(pSeed, ulSeedLen))) {
                 ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
crypt_pkcs11.c:3269:19: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
    if (ulSeedLen < 0) {
        ~~~~~~~~~ ^ ~
crypt_pkcs11.c:3273:58: warning: passing 'char *' to parameter of type 'CK_BYTE_PTR' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
    return object->function_list->C_SeedRandom(hSession, _pSeed, (CK_ULONG)ulSeedLen);
                                                         ^~~~~~
crypt_pkcs11.c:3316:27: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(RandomData, _RandomData, ulRandomLen * sizeof(CK_BYTE));
                          ^~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
11 warnings generated.
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_mechanism.c
21 warnings generated.
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_otp.c
crypt_pkcs11_struct_ecdh2.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ecdh2.c:188:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pSharedData, object->private.ulSharedDataLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_ecdh2.c:219:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ecdh2.c:220:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_ecdh2.c:251:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pPublicData, object->private.ulPublicDataLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_ecdh2.c:282:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ecdh2.c:283:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_ecdh2.c:347:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pPublicData2, object->private.ulPublicDataLen2 * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_ecdh2.c:378:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ecdh2.c:379:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_ecmqv.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ecmqv.c:188:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pSharedData, object->private.ulSharedDataLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_ecmqv.c:219:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ecmqv.c:220:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_ecmqv.c:251:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pPublicData, object->private.ulPublicDataLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_ecmqv.c:282:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ecmqv.c:283:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_kea.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ecmqv.c:347:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pPublicData2, object->private.ulPublicDataLen2 * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_ecmqv.c:378:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ecmqv.c:379:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_kea.c:193:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pRandomA, object->private.ulRandomLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_kea.c:224:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_kea.c:225:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_kea.c:256:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pRandomB, object->private.ulRandomLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_kea.c:287:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_kea.c:288:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_kea.c:319:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pPublicData, object->private.ulPublicDataLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_kea.c:350:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_kea.c:351:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_key.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_key.c:154:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pX, object->private.ulXLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_key.c:185:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_key.c:186:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_key.c:241:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_key.c:284:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pData, object->private.ulLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_key.c:315:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_key.c:316:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
10 warnings generated.
crypt_pkcs11_struct_kip.c:81:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_pbe.c
crypt_pkcs11_struct_kip.c:247:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pSeed, object->private.ulSeedLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_kip.c:278:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_kip.c:279:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_mechanism.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
10 warnings generated.
10 warnings generated.
crypt_pkcs11_struct_mechanism.c:185:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_mechanism.c:186:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_pkcs5.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_rc2.c
8 warnings generated.
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_rc5.c
4 warnings generated.
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_rsa.c
3 warnings generated.
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_skipjack.c
crypt_pkcs11_struct_otp.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_otp.c:185:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_otp.c:186:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_otp.c:241:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_otp.c:504:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
38 warnings generated.
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_ssl3.c
5 warnings generated.
crypt_pkcs11_struct_pbe.c:87:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_tls.c
crypt_pkcs11_struct_pbe.c:174:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pInitVector, 8 * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_pbe.c:225:19: warning: passing 'CK_UTF8CHAR_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pPassword, object->private.ulPasswordLen * sizeof(CK_CHAR));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_pbe.c:268:13: warning: assigning to 'CK_CHAR_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    if (!(p = SvPV(_sv, l))) {
            ^ ~~~~~~~~~~~~
crypt_pkcs11_struct_pbe.c:299:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pSalt, object->private.ulSaltLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_pbe.c:330:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_pbe.c:331:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_rc2.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_pkcs5.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_rc2.c:137:19: warning: passing 'CK_BYTE [8]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.iv, 8 * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_rc2.c:212:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_pkcs5.c:223:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_pkcs5.c:224:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_pkcs5.c:352:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_pkcs5.c:353:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_pkcs5.c:407:23: warning: passing 'CK_UTF8CHAR_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sv_setpvn(sv, object->private.pPassword, object->ulPasswordLen * sizeof(CK_CHAR));
                      ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_rsa.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_rc5.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_rc5.c:194:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_rsa.c:251:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_rsa.c:252:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_rsa.c:307:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_rc5.c:303:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pIv, object->private.ulIvLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_rc5.c:334:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_rc5.c:335:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_rc5.c:390:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
7 warnings generated.
crypt_pkcs11_struct_skipjack.c:206:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pPassword, object->private.ulPasswordLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_version.c
crypt_pkcs11_struct_skipjack.c:237:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:238:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_skipjack.c:269:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pPublicData, object->private.ulPublicDataLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
3 warnings generated.
crypt_pkcs11_struct_skipjack.c:300:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:301:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_skipjack.c:332:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pRandomA, object->private.ulRandomLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_wtls.c
crypt_pkcs11_struct_skipjack.c:363:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:364:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_skipjack.c:395:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pPrimeP, object->private.ulPAndGLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_skipjack.c:426:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:427:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_skipjack.c:458:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pBaseG, object->private.ulPAndGLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_skipjack.c:489:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:490:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_skipjack.c:521:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pSubprimeQ, object->private.ulQLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_skipjack.c:552:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:553:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_skipjack.c:608:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:753:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pOldWrappedX, object->private.ulOldWrappedXLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_skipjack.c:784:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:785:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_skipjack.c:816:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pOldPassword, object->private.ulOldPasswordLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_skipjack.c:847:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:848:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_skipjack.c:879:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pOldPublicData, object->private.ulOldPublicDataLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_skipjack.c:910:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:911:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_skipjack.c:942:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pOldRandomA, object->private.ulOldRandomLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_skipjack.c:973:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:974:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
6 warnings generated.
crypt_pkcs11_struct_skipjack.c:1005:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pNewPassword, object->private.ulNewPasswordLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_skipjack.c:1036:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:1037:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 crypt_pkcs11_struct_x9.c
crypt_pkcs11_struct_skipjack.c:1068:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pNewPublicData, object->private.ulNewPublicDataLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_skipjack.c:1099:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:1100:14: 4warning warning: scomparison of unsigned expression < 0 is always false [-Wtautological-compare] generated.

        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_skipjack.c:1131:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pNewRandomA, object->private.ulNewRandomLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_skipjack.c:1162:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_skipjack.c:1163:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11.xs > pkcs11.xsc && mv pkcs11.xsc pkcs11.c
6 warnings generated.
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct.xs > pkcs11_struct.xsc && mv pkcs11_struct.xsc pkcs11_struct.c
crypt_pkcs11_struct_ssl3.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ssl3.c:138:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pClientRandom, object->private.ulClientRandomLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_ssl3.c:169:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ssl3.c:170:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_ssl3.c:201:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pServerRandom, object->private.ulServerRandomLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_ssl3.c:232:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_ssl3.c:233:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_ssl3.c:291:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_tls.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
crypt_pkcs11_struct_ssl3.c        || !(p = SvPVbyte(sv, l)):
660               ^ ~~~~~~~~~~~~~~~:
19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pIVClient, object->ulIVClient * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_ssl3.c:679:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pIVServer, object->ulIVServer * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_tls.c:159:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pSeed, object->private.ulSeedLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_tls.c:190:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_tls.c:191:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_tls.c:222:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pLabel, object->private.ulLabelLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_tls.c:253:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_tls.c:254:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_tls.c:308:23: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sv_setpvn(sv, object->private.pOutput, object->pulOutputLen * sizeof(CK_BYTE));
                      ^~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_aes.xs > pkcs11_struct_aes.xsc && mv pkcs11_struct_aes.xsc pkcs11_struct_aes.c
41 warnings generated.
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_aria.xs > pkcs11_struct_aria.xsc && mv pkcs11_struct_aria.xsc pkcs11_struct_aria.c
8 warnings generated.
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_camellia.xs > pkcs11_struct_camellia.xsc && mv pkcs11_struct_camellia.xsc pkcs11_struct_camellia.c
crypt_pkcs11_struct_wtls.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_version.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_wtls.c:138:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pClientRandom, object->private.ulClientRandomLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_wtls.c:169:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_wtls.c:170:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_wtls.c:201:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pServerRandom, object->private.ulServerRandomLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_wtls.c:232:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_wtls.c:233:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_wtls.c:297:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_wtls.c:557:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
1 warning generated.
crypt_pkcs11_struct_wtls.c:671:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pSeed, object->private.ulSeedLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_wtls.c:702:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_wtls.c:703:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_cms.xs > pkcs11_struct_cms.xsc && mv pkcs11_struct_cms.xsc pkcs11_struct_cms.c
crypt_pkcs11_struct_wtls.c:734:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pLabel, object->private.ulLabelLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_wtls.c:765:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_wtls.c:766:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_wtls.c:820:23: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        sv_setpvn(sv, object->private.pOutput, object->pulOutputLen * sizeof(CK_BYTE));
                      ^~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_wtls.c:985:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pIV, object->ulIV * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_x9.c:78:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_x9.c:171:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pOtherInfo, object->private.ulOtherInfoLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_x9.c:202:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_x9.c:203:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_x9.c:234:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pPublicData, object->private.ulPublicDataLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_x9.c:265:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_x9.c:266:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_x9.c:321:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_x9.c:431:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pOtherInfo, object->private.ulOtherInfoLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_x9.c:462:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_x9.c:463:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_x9.c:494:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pPublicData, object->private.ulPublicDataLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_x9.c:525:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_x9.c:526:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_x9.c:590:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pPublicData2, object->private.ulPublicDataLen2 * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
10 warnings generated.
crypt_pkcs11_struct_x9.c:621:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_x9.c:622:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_des.xs > pkcs11_struct_des.xsc && mv pkcs11_struct_des.xsc pkcs11_struct_des.c
crypt_pkcs11_struct_x9.c:677:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_x9.c:787:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pOtherInfo, object->private.ulOtherInfoLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_x9.c:818:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_x9.c:819:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_x9.c:850:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pPublicData, object->private.ulPublicDataLen * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_x9.c:881:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_x9.c:882:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
crypt_pkcs11_struct_x9.c:946:19: warning: passing 'CK_BYTE_PTR' (aka 'unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
    sv_setpvn(sv, object->private.pPublicData2, object->private.ulPublicDataLen2 * sizeof(CK_BYTE));
                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/embed.h:668:49: note: expanded from macro 'sv_setpvn'
#define sv_setpvn(a,b,c)        Perl_sv_setpvn(aTHX_ a,b,c)
                                                       ^
/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE/proto.h:4641:73: note: passing argument to parameter 'ptr' here
PERL_CALLCONV void      Perl_sv_setpvn(pTHX_ SV *const sv, const char *const ptr, const STRLEN len)
                                                                             ^
crypt_pkcs11_struct_x9.c:977:16: warning: assigning to 'CK_BYTE_PTR' (aka 'unsigned char *') from 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
        || !(p = SvPVbyte(sv, l))
               ^ ~~~~~~~~~~~~~~~
crypt_pkcs11_struct_x9.c:978:14: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        || l < 0)
           ~ ^ ~
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_ecdh1.xs > pkcs11_struct_ecdh1.xsc && mv pkcs11_struct_ecdh1.xsc pkcs11_struct_ecdh1.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_ecdh2.xs > pkcs11_struct_ecdh2.xsc && mv pkcs11_struct_ecdh2.xsc pkcs11_struct_ecdh2.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_ecmqv.xs > pkcs11_struct_ecmqv.xsc && mv pkcs11_struct_ecmqv.xsc pkcs11_struct_ecmqv.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_kea.xs > pkcs11_struct_kea.xsc && mv pkcs11_struct_kea.xsc pkcs11_struct_kea.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_key.xs > pkcs11_struct_key.xsc && mv pkcs11_struct_key.xsc pkcs11_struct_key.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_kip.xs > pkcs11_struct_kip.xsc && mv pkcs11_struct_kip.xsc pkcs11_struct_kip.c
27 warnings generated.
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_mechanism.xs > pkcs11_struct_mechanism.xsc && mv pkcs11_struct_mechanism.xsc pkcs11_struct_mechanism.c
17 warnings generated.
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_otp.xs > pkcs11_struct_otp.xsc && mv pkcs11_struct_otp.xsc pkcs11_struct_otp.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_pbe.xs > pkcs11_struct_pbe.xsc && mv pkcs11_struct_pbe.xsc pkcs11_struct_pbe.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_pkcs5.xs > pkcs11_struct_pkcs5.xsc && mv pkcs11_struct_pkcs5.xsc pkcs11_struct_pkcs5.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_rc2.xs > pkcs11_struct_rc2.xsc && mv pkcs11_struct_rc2.xsc pkcs11_struct_rc2.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_rc5.xs > pkcs11_struct_rc5.xsc && mv pkcs11_struct_rc5.xsc pkcs11_struct_rc5.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_rsa.xs > pkcs11_struct_rsa.xsc && mv pkcs11_struct_rsa.xsc pkcs11_struct_rsa.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_skipjack.xs > pkcs11_struct_skipjack.xsc && mv pkcs11_struct_skipjack.xsc pkcs11_struct_skipjack.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_ssl3.xs > pkcs11_struct_ssl3.xsc && mv pkcs11_struct_ssl3.xsc pkcs11_struct_ssl3.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_tls.xs > pkcs11_struct_tls.xsc && mv pkcs11_struct_tls.xsc pkcs11_struct_tls.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_version.xs > pkcs11_struct_version.xsc && mv pkcs11_struct_version.xsc pkcs11_struct_version.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_wtls.xs > pkcs11_struct_wtls.xsc && mv pkcs11_struct_wtls.xsc pkcs11_struct_wtls.c
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/xsubpp"  -typemap "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/ExtUtils/typemap" -typemap "typemap" -typemap "typemap.struct" -typemap "typemap"  pkcs11_struct_x9.xs > pkcs11_struct_x9.xsc && mv pkcs11_struct_x9.xsc pkcs11_struct_x9.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_aes.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_aria.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_camellia.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_cms.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_des.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_ecdh1.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_ecdh2.c
pkcs11_struct_cms.c:526:11: warning: implicit declaration of function 'crypt_pkcs11_ck_cms_sig_params_get_pDigestMechanism' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_cms_sig_params_get_pDigestMechanism(object, sv);
                 ^
pkcs11_struct_cms.c:599:11: warning: implicit declaration of function 'crypt_pkcs11_ck_cms_sig_params_set_pDigestMechanism' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_cms_sig_params_set_pDigestMechanism(object, sv);
                 ^
pkcs11_struct_cms.c:629:11: warning: implicit declaration of function 'crypt_pkcs11_ck_cms_sig_params_get_pContentType' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_cms_sig_params_get_pContentType(object, sv);
                 ^
pkcs11_struct_cms.c:689:11: warning: implicit declaration of function 'crypt_pkcs11_ck_cms_sig_params_set_pContentType' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_cms_sig_params_set_pContentType(object, sv);
                 ^
pkcs11_struct_cms.c:719:11: warning: implicit declaration of function 'crypt_pkcs11_ck_cms_sig_params_get_pRequestedAttributes' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_cms_sig_params_get_pRequestedAttributes(object, sv);
                 ^
pkcs11_struct_cms.c:779:11: warning: implicit declaration of function 'crypt_pkcs11_ck_cms_sig_params_set_pRequestedAttributes' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_cms_sig_params_set_pRequestedAttributes(object, sv);
                 ^
pkcs11_struct_cms.c:809:11: warning: implicit declaration of function 'crypt_pkcs11_ck_cms_sig_params_get_pRequiredAttributes' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_cms_sig_params_get_pRequiredAttributes(object, sv);
                 ^
pkcs11_struct_cms.c:869:11: warning: implicit declaration of function 'crypt_pkcs11_ck_cms_sig_params_set_pRequiredAttributes' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_cms_sig_params_set_pRequiredAttributes(object, sv);
                 ^
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_ecmqv.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_kea.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_key.c
8 warnings generated.
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_kip.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_mechanism.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_otp.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_pbe.c
pkcs11_struct_kip.c:427:11: warning: implicit declaration of function 'crypt_pkcs11_ck_kip_params_get_hKey' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_kip_params_get_hKey(object, sv);
                 ^
pkcs11_struct_kip.c:487:11: warning: implicit declaration of function 'crypt_pkcs11_ck_kip_params_set_hKey' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_kip_params_set_hKey(object, sv);
                 ^
pkcs11_struct_kip.c:517:11: warning: implicit declaration of function 'crypt_pkcs11_ck_kip_params_get_pSeed' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_kip_params_get_pSeed(object, sv);
                 ^
pkcs11_struct_kip.c:577:11: warning: implicit declaration of function 'crypt_pkcs11_ck_kip_params_set_pSeed' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_kip_params_set_pSeed(object, sv);
                 ^
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_pkcs5.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_rc2.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_rc5.c
4 warnings generated.
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_rsa.c
pkcs11_struct_otp.c:722:11: warning: implicit declaration of function 'crypt_pkcs11_ck_otp_params_get_ulCount' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_otp_params_get_ulCount(object, sv);
                 ^
pkcs11_struct_otp.c:782:11: warning: implicit declaration of function 'crypt_pkcs11_ck_otp_params_set_ulCount' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_otp_params_set_ulCount(object, sv);
                 ^
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_skipjack.c
pkcs11_struct_otp.c:1039:11: warning: implicit declaration of function 'crypt_pkcs11_ck_otp_signature_info_get_ulCount' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_otp_signature_info_get_ulCount(object, sv);
                 ^
pkcs11_struct_otp.c:1099:11: warning: implicit declaration of function 'crypt_pkcs11_ck_otp_signature_info_set_ulCount' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_otp_signature_info_set_ulCount(object, sv);
                 ^
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_ssl3.c
4 warnings generated.
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_tls.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_version.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_wtls.c
clang -c  -I. -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -O3   -DVERSION=\"1.03\" -DXS_VERSION=\"1.03\" -fPIC "-I/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld/CORE"  -DHAVE_DLFCN_H=1 pkcs11_struct_x9.c
pkcs11_struct_ssl3.c:722:11: warning: implicit declaration of function 'crypt_pkcs11_ck_ssl3_master_key_derive_params_get_pVersion' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_ssl3_master_key_derive_params_get_pVersion(object, sv);
                 ^
pkcs11_struct_ssl3.c:795:11: warning: implicit declaration of function 'crypt_pkcs11_ck_ssl3_master_key_derive_params_set_pVersion' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_ssl3_master_key_derive_params_set_pVersion(object, sv);
                 ^
pkcs11_struct_ssl3.c:2058:11: warning: implicit declaration of function 'crypt_pkcs11_ck_ssl3_key_mat_params_get_pReturnedKeyMaterial' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_ssl3_key_mat_params_get_pReturnedKeyMaterial(object, sv);
                 ^
pkcs11_struct_wtls.c:803:11: warning: implicit declaration of function 'crypt_pkcs11_ck_wtls_master_key_derive_params_get_pVersion' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_wtls_master_key_derive_params_get_pVersion(object, sv);
                 ^
pkcs11_struct_wtls.c:863:11: warning: implicit declaration of function 'crypt_pkcs11_ck_wtls_master_key_derive_params_set_pVersion' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_wtls_master_key_derive_params_set_pVersion(object, sv);
                 ^
pkcs11_struct_wtls.c:2502:11: warning: implicit declaration of function 'crypt_pkcs11_ck_wtls_key_mat_params_get_pReturnedKeyMaterial' is invalid in C99 [-Wimplicit-function-declaration]
        RETVAL = crypt_pkcs11_ck_wtls_key_mat_params_get_pReturnedKeyMaterial(object, sv);
                 ^
3 warnings generated.
3 warnings generated.
rm -f blib/arch/auto/Crypt/PKCS11/PKCS11.so
clang  -shared -O3 -L/usr/local/lib -fstack-protector-strong crypt_pkcs11.o crypt_pkcs11_struct.o crypt_pkcs11_struct_aes.o crypt_pkcs11_struct_aria.o crypt_pkcs11_struct_camellia.o crypt_pkcs11_struct_cms.o crypt_pkcs11_struct_des.o crypt_pkcs11_struct_ecdh1.o crypt_pkcs11_struct_ecdh2.o crypt_pkcs11_struct_ecmqv.o crypt_pkcs11_struct_kea.o crypt_pkcs11_struct_key.o crypt_pkcs11_struct_kip.o crypt_pkcs11_struct_mechanism.o crypt_pkcs11_struct_otp.o crypt_pkcs11_struct_pbe.o crypt_pkcs11_struct_pkcs5.o crypt_pkcs11_struct_rc2.o crypt_pkcs11_struct_rc5.o crypt_pkcs11_struct_rsa.o crypt_pkcs11_struct_skipjack.o crypt_pkcs11_struct_ssl3.o crypt_pkcs11_struct_tls.o crypt_pkcs11_struct_version.o crypt_pkcs11_struct_wtls.o crypt_pkcs11_struct_x9.o pkcs11.o pkcs11_struct.o pkcs11_struct_aes.o pkcs11_struct_aria.o pkcs11_struct_camellia.o pkcs11_struct_cms.o pkcs11_struct_des.o pkcs11_struct_ecdh1.o pkcs11_struct_ecdh2.o pkcs11_struct_ecmqv.o pkcs11_struct_kea.o pkcs11_struct_key.o pkcs11_struct_kip.o pkcs11_struct_mechanism.o pkcs11_struct_otp.o pkcs11_struct_pbe.o pkcs11_struct_pkcs5.o pkcs11_struct_rc2.o pkcs11_struct_rc5.o pkcs11_struct_rsa.o pkcs11_struct_skipjack.o pkcs11_struct_ssl3.o pkcs11_struct_tls.o pkcs11_struct_version.o pkcs11_struct_wtls.o pkcs11_struct_x9.o  -o blib/arch/auto/Crypt/PKCS11/PKCS11.so 	\
   -ldl  	\
  
chmod 755 blib/arch/auto/Crypt/PKCS11/PKCS11.so
"/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" -MExtUtils::Command::MM -e 'cp_nonempty' -- PKCS11.bs blib/arch/auto/Crypt/PKCS11/PKCS11.bs 644
Running Mkbootstrap for Crypt::PKCS11 ()
chmod 644 "PKCS11.bs"
PERL_DL_NONLAZY=1 "/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/manifest.t ...... skipped: Author tests not required for installation
t/boilerplate.t ... ok
# Testing Crypt::PKCS11 1.03, Perl 5.022000, /home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0
t/00-load.t ....... ok
Died at t/pkcs11.t line 972.
# Tests were run but no plan was declared and done_testing() was not seen.
# Looks like your test exited with 2 just after 1.
t/pkcs11.t ........ 
Dubious, test returned 2 (wstat 512, 0x200)
All 1 subtests passed 
t/rv2str.t ........ ok
t/svuok.t ......... ok
t/pod-coverage.t .. ok
Died at t/oo.t line 197.
# Tests were run but no plan was declared and done_testing() was not seen.
# Looks like your test exited with 2 just after 44.
t/oo.t ............ 
Dubious, test returned 2 (wstat 512, 0x200)
All 44 subtests passed 
t/pod.t ........... ok
t/cover.t ......... ok

Test Summary Report
-------------------
t/boilerplate.t (Wstat: 0 Tests: 3 Failed: 0)
  TODO passed:   1-3
t/pkcs11.t      (Wstat: 512 Tests: 1 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
t/oo.t          (Wstat: 512 Tests: 44 Failed: 0)
  Non-zero exit status: 2
  Parse errors: No plan found in TAP output
Files=10, Tests=2068,  1 wallclock secs ( 0.28 usr  0.02 sys +  2.43 cusr  0.09 csys =  2.82 CPU)
Result: FAIL

------------------------------
PREREQUISITES
------------------------------

Prerequisite modules loaded:

    No requirements found

------------------------------
ENVIRONMENT AND OTHER CONTEXT
------------------------------

Environment variables:

    LANG = en_GB.UTF-8
    PATH = /home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin:/home/green.sophos/ioanrogers/.plenv/libexec:/home/green.sophos/ioanrogers/.plenv/plugins/perl-build/bin:/opt/perforce/bin:/home/green.sophos/ioanrogers/.plenv/shims:~/.plenv/bin::/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/sbin:/usr/sbin:/usr/games
    PERL_CPANM_OPT = --prompt --no-man-pages --verify --mirror http://mirrors.gossamer-threads.com/CPAN/
    SHELL = /bin/bash
    TERM = xterm-256color

Perl special variables (and OS-specific diagnostics, for MSWin32):

    EGID = 1527821795 10 36 39 107 190 980 1001 1527800513 1527801857 1527808566 1527809894 1527810726 1527810832 1527811153 1527811154 1527812605 1527812759 1527817289 1527817290 1527820552 1527820582 1527820734 1527821689 1527821795 1527821796 1527822114 1527823401 1527823517 1527825355 1527825408 1527825961 1527828440 1527830143 1527830423 1527830736 1527833101 1527834180 1527837594 1527838294 1527839286 1527841434 1527848322 1527848455 1527848457 1527850756 1527851717 1527851843 1527851958 1527853623 1527853874 1527855916 1527856703 1527857018 1527858721 1527859691 1527859692 1527862753 1527865139 1527865158 1527865161 1527865496 1527868651 1527868657 1527868660 1527868661 1527868663 1527868671 1527868682 1527868687 1527868702 1527868754 1527868755
    EUID = 1527858684
    EXECUTABLE_NAME = /home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin/perl5.22.0
    GID = 1527821795 10 36 39 107 190 980 1001 1527800513 1527801857 1527808566 1527809894 1527810726 1527810832 1527811153 1527811154 1527812605 1527812759 1527817289 1527817290 1527820552 1527820582 1527820734 1527821689 1527821795 1527821796 1527822114 1527823401 1527823517 1527825355 1527825408 1527825961 1527828440 1527830143 1527830423 1527830736 1527833101 1527834180 1527837594 1527838294 1527839286 1527841434 1527848322 1527848455 1527848457 1527850756 1527851717 1527851843 1527851958 1527853623 1527853874 1527855916 1527856703 1527857018 1527858721 1527859691 1527859692 1527862753 1527865139 1527865158 1527865161 1527865496 1527868651 1527868657 1527868660 1527868661 1527868663 1527868671 1527868682 1527868687 1527868702 1527868754 1527868755
    UID = 1527858684

Perl module toolchain versions installed:

    Module              Have    
    ------------------- --------
    CPAN                2.11    
    CPAN::Meta          2.150005
    Cwd                 3.56    
    ExtUtils::CBuilder  0.280223
    ExtUtils::Command   1.20    
    ExtUtils::Install   2.04    
    ExtUtils::MakeMaker 7.04_01 
    ExtUtils::Manifest  1.70    
    ExtUtils::ParseXS   3.28    
    File::Spec          3.56    
    JSON                2.90    
    JSON::PP            2.27300 
    Module::Build       0.4214  
    Module::Signature   0.79    
    Parse::CPAN::Meta   1.4417  
    Test::Harness       3.35    
    Test::More          1.001014
    YAML                1.15    
    YAML::Syck          n/a     
    version             0.9912  


--

Summary of my perl5 (revision 5 version 22 subversion 0) configuration:
   
  Platform:
    osname=linux, osvers=4.0.4-303.fc22.x86_64, archname=x86_64-linux-ld
    uname='linux ca-gn-20090375 4.0.4-303.fc22.x86_64 #1 smp thu may 28 12:37:06 utc 2015 x86_64 x86_64 x86_64 gnulinux '
    config_args='-Dprefix=/home/green.sophos/ioanrogers/.plenv/versions/5.22.0 -de -Dusedevel -Dman1dir=none -Dman3dir=none -Duselongdouble -Dcc=clang -Doptimize=-O3 -Dccflags-Wall -march=native -Dman1dir=none -Dman3dir=none -A'eval:scriptdir=/home/green.sophos/ioanrogers/.plenv/versions/5.22.0/bin''
    hint=recommended, useposix=true, d_sigaction=define
    useithreads=undef, usemultiplicity=undef
    use64bitint=define, use64bitall=define, uselongdouble=define
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='clang', ccflags ='-fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2',
    optimize='-O3',
    cppflags='-fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include'
    ccversion='', gccversion='4.2.1 Compatible Clang 3.5.0 (tags/RELEASE_350/final)', gccosandvers=''
    intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678, doublekind=3
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16, longdblkind=3
    ivtype='long', ivsize=8, nvtype='long double', nvsize=16, Off_t='off_t', lseeksize=8
    alignbytes=16, prototype=define
  Linker and Libraries:
    ld='clang', ldflags =' -fstack-protector-strong -L/usr/local/lib'
    libpth=/usr/local/lib /usr/bin/../lib/clang/3.5.0/lib /usr/lib /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64 /usr/local/lib64
    libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
    perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
    libc=libc-2.21.so, so=so, useshrplib=false, libperl=libperl.a
    gnulibc_version='2.21'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
    cccdlflags='-fPIC', lddlflags='-shared -O3 -L/usr/local/lib -fstack-protector-strong'


Characteristics of this binary (from libperl): 
  Compile-time options: HAS_TIMES PERLIO_LAYERS PERL_DONT_CREATE_GVSV
                        PERL_HASH_FUNC_ONE_AT_A_TIME_HARD PERL_MALLOC_WRAP
                        PERL_NEW_COPY_ON_WRITE PERL_PRESERVE_IVUV
                        PERL_USE_DEVEL USE_64_BIT_ALL USE_64_BIT_INT
                        USE_LARGE_FILES USE_LOCALE USE_LOCALE_COLLATE
                        USE_LOCALE_CTYPE USE_LOCALE_NUMERIC USE_LOCALE_TIME
                        USE_LONG_DOUBLE USE_PERLIO USE_PERL_ATOF
  Locally applied patches:
	Devel::PatchPerl 1.30
  Built under linux
  Compiled at Jun 15 2015 14:50:55
  %ENV:
    PERL_CPANM_OPT="--prompt --no-man-pages --verify --mirror http://mirrors.gossamer-threads.com/CPAN/"
  @INC:
    /home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/site_perl/5.22.0/x86_64-linux-ld
    /home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/site_perl/5.22.0
    /home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0/x86_64-linux-ld
    /home/green.sophos/ioanrogers/.plenv/versions/5.22.0/lib/perl5/5.22.0
    .