X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=perl%2Fopenssl_cipher.xs;h=580620ffbc60bc8a8d9a2e7200471d331c9b597f;hb=7ae551fd03b447e41d3a74e803a711350383ebc4;hp=fb4c63299512eeb9d61510dd0eb74854374fc79d;hpb=8073036dd62848b616c6a817c155c3255074ec83;p=oweals%2Fopenssl.git diff --git a/perl/openssl_cipher.xs b/perl/openssl_cipher.xs index fb4c632995..580620ffbc 100644 --- a/perl/openssl_cipher.xs +++ b/perl/openssl_cipher.xs @@ -9,19 +9,20 @@ int boot_cipher() MODULE = OpenSSL::Cipher PACKAGE = OpenSSL::Cipher PREFIX = p5_EVP_C_ +PROTOTYPES: ENABLE VERSIONCHECK: DISABLE void p5_EVP_C_new(...) PREINIT: EVP_CIPHER_CTX *ctx; - EVP_CIPHER *c; + const EVP_CIPHER *c; char *name; PPCODE: if ((items == 1) && SvPOK(ST(0))) - name=SvPV(ST(0),na); + name=SvPV_nolen(ST(0)); else if ((items == 2) && SvPOK(ST(1))) - name=SvPV(ST(1),na); + name=SvPV_nolen(ST(1)); else croak("Usage: OpenSSL::Cipher::new(type)"); PUSHs(sv_newmortal()); @@ -111,7 +112,7 @@ p5_EVP_C_cipher(ctx,in) CODE: RETVAL=newSVpv("",0); SvGROW(RETVAL,in.dsize+EVP_CIPHER_CTX_block_size(ctx)+1); - EVP_Cipher(ctx,SvPV(RETVAL,na),in.dptr,in.dsize); + EVP_Cipher(ctx,SvPV_nolen(RETVAL),in.dptr,in.dsize); SvCUR_set(RETVAL,in.dsize); OUTPUT: RETVAL @@ -125,7 +126,7 @@ p5_EVP_C_update(ctx, in) CODE: RETVAL=newSVpv("",0); SvGROW(RETVAL,in.dsize+EVP_CIPHER_CTX_block_size(ctx)+1); - EVP_CipherUpdate(ctx,SvPV(RETVAL,na),&i,in.dptr,in.dsize); + EVP_CipherUpdate(ctx,SvPV_nolen(RETVAL),&i,in.dptr,in.dsize); SvCUR_set(RETVAL,i); OUTPUT: RETVAL @@ -138,7 +139,7 @@ p5_EVP_C_final(ctx) CODE: RETVAL=newSVpv("",0); SvGROW(RETVAL,EVP_CIPHER_CTX_block_size(ctx)+1); - if (!EVP_CipherFinal(ctx,SvPV(RETVAL,na),&i)) + if (!EVP_CipherFinal(ctx,SvPV_nolen(RETVAL),&i)) sv_setpv(RETVAL,"BAD DECODE"); else SvCUR_set(RETVAL,i);