OpenCoverage

t_bitst.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/t_bitst.c
Source codeSwitch to Preprocessed file
LineSourceCount
1/* $OpenBSD: t_bitst.c,v 1.8 2018/04/25 11:48:21 tb Exp $ */-
2/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL-
3 * project 1999.-
4 */-
5/* ====================================================================-
6 * Copyright (c) 1999 The OpenSSL Project. All rights reserved.-
7 *-
8 * Redistribution and use in source and binary forms, with or without-
9 * modification, are permitted provided that the following conditions-
10 * are met:-
11 *-
12 * 1. Redistributions of source code must retain the above copyright-
13 * notice, this list of conditions and the following disclaimer.-
14 *-
15 * 2. Redistributions in binary form must reproduce the above copyright-
16 * notice, this list of conditions and the following disclaimer in-
17 * the documentation and/or other materials provided with the-
18 * distribution.-
19 *-
20 * 3. All advertising materials mentioning features or use of this-
21 * software must display the following acknowledgment:-
22 * "This product includes software developed by the OpenSSL Project-
23 * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)"-
24 *-
25 * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to-
26 * endorse or promote products derived from this software without-
27 * prior written permission. For written permission, please contact-
28 * licensing@OpenSSL.org.-
29 *-
30 * 5. Products derived from this software may not be called "OpenSSL"-
31 * nor may "OpenSSL" appear in their names without prior written-
32 * permission of the OpenSSL Project.-
33 *-
34 * 6. Redistributions of any form whatsoever must retain the following-
35 * acknowledgment:-
36 * "This product includes software developed by the OpenSSL Project-
37 * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)"-
38 *-
39 * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY-
40 * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE-
41 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR-
42 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR-
43 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,-
44 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT-
45 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;-
46 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)-
47 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,-
48 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)-
49 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED-
50 * OF THE POSSIBILITY OF SUCH DAMAGE.-
51 * ====================================================================-
52 *-
53 * This product includes cryptographic software written by Eric Young-
54 * (eay@cryptsoft.com). This product includes software written by Tim-
55 * Hudson (tjh@cryptsoft.com).-
56 *-
57 */-
58-
59#include <stdio.h>-
60#include <string.h>-
61-
62#include <openssl/conf.h>-
63#include <openssl/x509v3.h>-
64-
65int-
66ASN1_BIT_STRING_name_print(BIO *out, ASN1_BIT_STRING *bs,-
67 BIT_STRING_BITNAME *tbl, int indent)-
68{-
69 BIT_STRING_BITNAME *bnam;-
70 char first = 1;-
71-
72 BIO_printf(out, "%*s", indent, "");-
73 for (bnam = tbl; bnam->lname; bnam++) {
bnam->lnameDescription
TRUEnever evaluated
FALSEnever evaluated
0
74 if (ASN1_BIT_STRING_get_bit(bs, bnam->bitnum)) {
ASN1_BIT_STRIN... bnam->bitnum)Description
TRUEnever evaluated
FALSEnever evaluated
0
75 if (!first)
!firstDescription
TRUEnever evaluated
FALSEnever evaluated
0
76 BIO_puts(out, ", ");
never executed: BIO_puts(out, ", ");
0
77 BIO_puts(out, bnam->lname);-
78 first = 0;-
79 }
never executed: end of block
0
80 }
never executed: end of block
0
81 BIO_puts(out, "\n");-
82 return 1;
never executed: return 1;
0
83}-
84-
85int-
86ASN1_BIT_STRING_set_asc(ASN1_BIT_STRING *bs, const char *name, int value,-
87 BIT_STRING_BITNAME *tbl)-
88{-
89 int bitnum;-
90-
91 bitnum = ASN1_BIT_STRING_num_asc(name, tbl);-
92 if (bitnum < 0)
bitnum < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
93 return 0;
never executed: return 0;
0
94 if (bs) {
bsDescription
TRUEnever evaluated
FALSEnever evaluated
0
95 if (!ASN1_BIT_STRING_set_bit(bs, bitnum, value))
!ASN1_BIT_STRI...bitnum, value)Description
TRUEnever evaluated
FALSEnever evaluated
0
96 return 0;
never executed: return 0;
0
97 }
never executed: end of block
0
98 return 1;
never executed: return 1;
0
99}-
100-
101int-
102ASN1_BIT_STRING_num_asc(const char *name, BIT_STRING_BITNAME *tbl)-
103{-
104 BIT_STRING_BITNAME *bnam;-
105-
106 for (bnam = tbl; bnam->lname; bnam++) {
bnam->lnameDescription
TRUEnever evaluated
FALSEnever evaluated
0
107 if (!strcmp(bnam->sname, name) ||
never executed: __result = (((const unsigned char *) (const char *) ( bnam->sname ))[3] - __s2[3]);
never executed: end of block
never executed: end of block
never executed: __result = (((const unsigned char *) (const char *) ( name ))[3] - __s2[3]);
never executed: end of block
never executed: end of block
! __extension_... name )))); })Description
TRUEnever evaluated
FALSEnever evaluated
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
108 !strcmp(bnam->lname, name))
never executed: __result = (((const unsigned char *) (const char *) ( bnam->lname ))[3] - __s2[3]);
never executed: end of block
never executed: end of block
never executed: __result = (((const unsigned char *) (const char *) ( name ))[3] - __s2[3]);
never executed: end of block
never executed: end of block
! __extension_... name )))); })Description
TRUEnever evaluated
FALSEnever evaluated
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
109 return bnam->bitnum;
never executed: return bnam->bitnum;
0
110 }
never executed: end of block
0
111 return -1;
never executed: return -1;
0
112}-
Source codeSwitch to Preprocessed file

Generated by Squish Coco 4.2.2