Branch Coverage

xs/crypt.xs
Criterion Covered Total %
branch 28 90 31.1


line true false branch
41 17 0 STRLEN id_len = 0;
44 14 3 if (strEQ(algorithm, "RC4-40") || strEQ(algorithm, "rc4-40")) {
0 14 if (strEQ(algorithm, "RC4-40") || strEQ(algorithm, "rc4-40")) {
46 8 6 } else if (strEQ(algorithm, "RC4-128") || strEQ(algorithm, "rc4-128")) {
0 8 } else if (strEQ(algorithm, "RC4-128") || strEQ(algorithm, "rc4-128")) {
48 4 4 } else if (strEQ(algorithm, "AES-128") || strEQ(algorithm, "aes-128")) {
0 4 } else if (strEQ(algorithm, "AES-128") || strEQ(algorithm, "aes-128")) {
50 0 4 } else if (strEQ(algorithm, "AES-256") || strEQ(algorithm, "aes-256")) {
0 0 } else if (strEQ(algorithm, "AES-256") || strEQ(algorithm, "aes-256")) {
57 17 0 if (SvOK(owner_passwd)) {
62 17 0 if (SvOK(doc_id)) {
69 2 15 id_bytes, id_len) == 0 ? 1 : 0;
95 0 0 STRLEN O_len = 0, U_len = 0, OE_len = 0, UE_len = 0, Perms_len = 0, id_len = 0;
97 0 0 if (SvOK(O)) O_bytes = (const uint8_t *)SvPV(O, O_len);
98 0 0 if (SvOK(U)) U_bytes = (const uint8_t *)SvPV(U, U_len);
99 0 0 if (SvOK(OE)) OE_bytes = (const uint8_t *)SvPV(OE, OE_len);
100 0 0 if (SvOK(UE)) UE_bytes = (const uint8_t *)SvPV(UE, UE_len);
101 0 0 if (SvOK(Perms)) Perms_bytes = (const uint8_t *)SvPV(Perms, Perms_len);
102 0 0 if (SvOK(doc_id)) id_bytes = (const uint8_t *)SvPV(doc_id, id_len);
165 0 3 if (out_len < 0) {
195 0 3 if (out_len < 0) {
223 2 0 if (rc != 0 || out == NULL) {
0 2 if (rc != 0 || out == NULL) {
224 0 0 if (out) free(out);
251 2 0 if (rc != 0 || out == NULL) {
0 2 if (rc != 0 || out == NULL) {
252 0 0 if (out) free(out);
290 0 0 RETVAL = self->ctx.V;
298 0 0 RETVAL = self->ctx.R;
306 2 5 RETVAL = self->ctx.key_length * 8; /* Return in bits */
314 0 0 if (self->ctx.R >= 6) {
326 0 0 if (self->ctx.R >= 6) {
338 0 0 if (self->ctx.R >= 6) {
350 0 0 if (self->ctx.R >= 6) {
362 0 0 if (self->ctx.R >= 6) {
374 0 0 RETVAL = self->ctx.P;
382 0 4 RETVAL = self->ctx.encrypt_metadata;
396 0 90 PDFMAKE_REGISTER_GETTER(stash, "version", pdfmake_crypt_xs_t, ctx.V, PDFMAKE_FIELD_INT);
0 0 PDFMAKE_REGISTER_GETTER(stash, "version", pdfmake_crypt_xs_t, ctx.V, PDFMAKE_FIELD_INT);
397 0 90 PDFMAKE_REGISTER_GETTER(stash, "revision", pdfmake_crypt_xs_t, ctx.R, PDFMAKE_FIELD_INT);
0 0 PDFMAKE_REGISTER_GETTER(stash, "revision", pdfmake_crypt_xs_t, ctx.R, PDFMAKE_FIELD_INT);
398 0 90 PDFMAKE_REGISTER_GETTER(stash, "permissions", pdfmake_crypt_xs_t, ctx.P, PDFMAKE_FIELD_INT);
0 0 PDFMAKE_REGISTER_GETTER(stash, "permissions", pdfmake_crypt_xs_t, ctx.P, PDFMAKE_FIELD_INT);
399 0 90 PDFMAKE_REGISTER_GETTER(stash, "encrypt_metadata", pdfmake_crypt_xs_t, ctx.encrypt_metadata, PDFMAKE_FIELD_INT);
0 0 PDFMAKE_REGISTER_GETTER(stash, "encrypt_metadata", pdfmake_crypt_xs_t, ctx.encrypt_metadata, PDFMAKE_FIELD_INT);