Digest-Keccak
view release on metacpan or search on metacpan
Digest::Keccak self
CODE:
Newx(RETVAL, 1, hashState);
Copy(self, RETVAL, 1, hashState);
OUTPUT:
RETVAL
void
reset (self)
Digest::Keccak self
PPCODE:
if (Init(self, self->hashbitlen) != SUCCESS)
XSRETURN_UNDEF;
XSRETURN(1);
int
hashsize(self)
Digest::Keccak self
ALIAS:
algorithm = 1
CODE:
OUTPUT:
RETVAL
void
add (self, ...)
Digest::Keccak self
PREINIT:
int i;
unsigned char *data;
STRLEN len;
PPCODE:
for (i = 1; i < items; i++) {
data = (unsigned char *)(SvPV(ST(i), len));
if (Update(self, data, len << 3) != SUCCESS)
XSRETURN_UNDEF;
}
XSRETURN(1);
void
_add_bits (self, msg, bitlen)
Digest::Keccak self
SV *msg
int bitlen
PREINIT:
int i;
unsigned char *data;
STRLEN len;
PPCODE:
if (! bitlen)
XSRETURN(1);
data = (unsigned char *)(SvPV(msg, len));
if (bitlen > len << 3)
bitlen = len << 3;
if (Update(self, data, bitlen) != SUCCESS)
XSRETURN_UNDEF;
XSRETURN(1);
void *
( run in 0.777 second using v1.01-cache-2.11-cpan-71847e10f99 )