003 File Manager
Current Path:
/usr/src/crypto/openssl/crypto/asn1
usr
/
src
/
crypto
/
openssl
/
crypto
/
asn1
/
📁
..
📄
a_bitstr.c
(5.34 KB)
📄
a_d2i_fp.c
(6.33 KB)
📄
a_digest.c
(1.52 KB)
📄
a_dup.c
(1.51 KB)
📄
a_gentm.c
(2.12 KB)
📄
a_i2d_fp.c
(2.25 KB)
📄
a_int.c
(16.55 KB)
📄
a_mbstr.c
(9.55 KB)
📄
a_object.c
(10.16 KB)
📄
a_octet.c
(813 B)
📄
a_print.c
(2.14 KB)
📄
a_sign.c
(7.08 KB)
📄
a_strex.c
(17.37 KB)
📄
a_strnid.c
(5.95 KB)
📄
a_time.c
(14.91 KB)
📄
a_type.c
(3.51 KB)
📄
a_utctm.c
(2.23 KB)
📄
a_utf8.c
(5.89 KB)
📄
a_verify.c
(4.92 KB)
📄
ameth_lib.c
(14.51 KB)
📄
asn1_err.c
(18.92 KB)
📄
asn1_gen.c
(22.63 KB)
📄
asn1_item_list.c
(1.06 KB)
📄
asn1_item_list.h
(5.5 KB)
📄
asn1_lib.c
(9.38 KB)
📄
asn1_local.h
(3.27 KB)
📄
asn1_par.c
(13 KB)
📄
asn_mime.c
(27.92 KB)
📄
asn_moid.c
(2.46 KB)
📄
asn_mstbl.c
(3.43 KB)
📄
asn_pack.c
(1.59 KB)
📄
bio_asn1.c
(11.09 KB)
📄
bio_ndef.c
(5.29 KB)
📄
build.info
(837 B)
📄
charmap.h
(1.41 KB)
📄
charmap.pl
(3.58 KB)
📄
d2i_pr.c
(3.64 KB)
📄
d2i_pu.c
(2.01 KB)
📄
evp_asn1.c
(2.89 KB)
📄
f_int.c
(3.94 KB)
📄
f_string.c
(3.44 KB)
📄
i2d_pr.c
(1006 B)
📄
i2d_pu.c
(1.05 KB)
📄
n_pkey.c
(1.89 KB)
📄
nsseq.c
(1.11 KB)
📄
p5_pbe.c
(2.52 KB)
📄
p5_pbev2.c
(6 KB)
📄
p5_scrypt.c
(7.76 KB)
📄
p8_pkey.c
(2.53 KB)
📄
standard_methods.h
(1.35 KB)
📄
t_bitst.c
(1.56 KB)
📄
t_pkey.c
(2.52 KB)
📄
t_spki.c
(1.75 KB)
📄
tasn_dec.c
(36.99 KB)
📄
tasn_enc.c
(18.86 KB)
📄
tasn_fre.c
(5.34 KB)
📄
tasn_new.c
(8.95 KB)
📄
tasn_prn.c
(14.63 KB)
📄
tasn_scn.c
(1.37 KB)
📄
tasn_typ.c
(2.94 KB)
📄
tasn_utl.c
(6.64 KB)
📄
tbl_standard.h
(2.7 KB)
📄
x_algor.c
(3.31 KB)
📄
x_bignum.c
(4.05 KB)
📄
x_info.c
(895 B)
📄
x_int64.c
(7.83 KB)
📄
x_long.c
(5.42 KB)
📄
x_pkey.c
(1.12 KB)
📄
x_sig.c
(1.05 KB)
📄
x_spki.c
(961 B)
📄
x_val.c
(636 B)
Editing: asn_moid.c
/* * Copyright 2002-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy * in the file LICENSE in the source distribution or at * https://www.openssl.org/source/license.html */ #include <stdio.h> #include "crypto/ctype.h" #include <openssl/crypto.h> #include "internal/cryptlib.h" #include <openssl/conf.h> #include <openssl/x509.h> #include "crypto/asn1.h" #include "crypto/objects.h" /* Simple ASN1 OID module: add all objects in a given section */ static int do_create(const char *value, const char *name); static int oid_module_init(CONF_IMODULE *md, const CONF *cnf) { int i; const char *oid_section; STACK_OF(CONF_VALUE) *sktmp; CONF_VALUE *oval; oid_section = CONF_imodule_get_value(md); if ((sktmp = NCONF_get_section(cnf, oid_section)) == NULL) { ASN1err(ASN1_F_OID_MODULE_INIT, ASN1_R_ERROR_LOADING_SECTION); return 0; } for (i = 0; i < sk_CONF_VALUE_num(sktmp); i++) { oval = sk_CONF_VALUE_value(sktmp, i); if (!do_create(oval->value, oval->name)) { ASN1err(ASN1_F_OID_MODULE_INIT, ASN1_R_ADDING_OBJECT); return 0; } } return 1; } static void oid_module_finish(CONF_IMODULE *md) { } void ASN1_add_oid_module(void) { CONF_module_add("oid_section", oid_module_init, oid_module_finish); } /*- * Create an OID based on a name value pair. Accept two formats. * shortname = 1.2.3.4 * shortname = some long name, 1.2.3.4 */ static int do_create(const char *value, const char *name) { int nid; const char *ln, *ostr, *p; char *lntmp = NULL; p = strrchr(value, ','); if (p == NULL) { ln = name; ostr = value; } else { ln = value; ostr = p + 1; if (*ostr == '\0') return 0; while (ossl_isspace(*ostr)) ostr++; while (ossl_isspace(*ln)) ln++; p--; while (ossl_isspace(*p)) { if (p == ln) return 0; p--; } p++; if ((lntmp = OPENSSL_malloc((p - ln) + 1)) == NULL) { ASN1err(ASN1_F_DO_CREATE, ERR_R_MALLOC_FAILURE); return 0; } memcpy(lntmp, ln, p - ln); lntmp[p - ln] = '\0'; ln = lntmp; } nid = OBJ_create(ostr, name, ln); OPENSSL_free(lntmp); return nid != NID_undef; }
Upload File
Create Folder