line |
true |
false |
branch |
12
|
0 |
97 |
if (!RETVAL) croak("FATAL: Newz failed"); |
16
|
0 |
97 |
if (RETVAL->cipher_id == -1) { |
41
|
0 |
102 |
if (!SvPOK(key)) croak("FATAL: key must be string/buffer scalar"); |
42
|
102 |
0 |
k = (unsigned char *) SvPVbyte(key, k_len); |
44
|
0 |
102 |
if (!SvPOK(iv)) croak("FATAL: iv must be string/buffer scalar"); |
45
|
102 |
0 |
i = (unsigned char *) SvPVbyte(iv, i_len); |
46
|
0 |
102 |
if (i_len != (STRLEN)cipher_descriptor[self->cipher_id].block_length) { |
51
|
0 |
102 |
if (rv != CRYPT_OK) { |
55
|
51 |
51 |
self->direction = ix == 1 ? 1 : -1; |
56
|
0 |
102 |
XPUSHs(ST(0)); /* return self */ |
68
|
102 |
102 |
for (j = 1; j < items; j++) { |
69
|
102 |
0 |
in_data = (unsigned char *)SvPVbyte(ST(j), in_data_len); |
70
|
102 |
0 |
if (in_data_len > 0) { |
71
|
102 |
0 |
out_data = (unsigned char*)SvGROW(RETVAL, out_len + in_data_len + 1) + out_len; |
|
102 |
0 |
out_data = (unsigned char*)SvGROW(RETVAL, out_len + in_data_len + 1) + out_len; |
73
|
51 |
51 |
if (self->direction == 1) { |
75
|
0 |
51 |
if (rv != CRYPT_OK) { |
80
|
51 |
0 |
else if (self->direction == -1) { |
82
|
0 |
51 |
if (rv != CRYPT_OK) { |
93
|
102 |
0 |
if (out_len > 0) SvCUR_set(RETVAL, out_len); |