c38ad040ef148f679b9749734adcc94bf93f53be
[openssl.git] / doc / man3 / ADMISSIONS.pod
1 =pod
2
3 =head1 NAME
4
5 ADMISSIONS,
6 ADMISSIONS_get0_admissionAuthority,
7 ADMISSIONS_get0_namingAuthority,
8 ADMISSIONS_get0_professionInfos,
9 ADMISSIONS_set0_admissionAuthority,
10 ADMISSIONS_set0_namingAuthority,
11 ADMISSIONS_set0_professionInfos,
12 ADMISSION_SYNTAX,
13 ADMISSION_SYNTAX_get0_admissionAuthority,
14 ADMISSION_SYNTAX_get0_contentsOfAdmissions,
15 ADMISSION_SYNTAX_set0_admissionAuthority,
16 ADMISSION_SYNTAX_set0_contentsOfAdmissions,
17 NAMING_AUTHORITY,
18 NAMING_AUTHORITY_get0_authorityId,
19 NAMING_AUTHORITY_get0_authorityURL,
20 NAMING_AUTHORITY_get0_authorityText,
21 NAMING_AUTHORITY_set0_authorityId,
22 NAMING_AUTHORITY_set0_authorityURL,
23 NAMING_AUTHORITY_set0_authorityText,
24 PROFESSION_INFO,
25 PROFESSION_INFOS,
26 PROFESSION_INFO_get0_addProfessionInfo,
27 PROFESSION_INFO_get0_namingAuthority,
28 PROFESSION_INFO_get0_professionItems,
29 PROFESSION_INFO_get0_professionOIDs,
30 PROFESSION_INFO_get0_registrationNumber,
31 PROFESSION_INFO_set0_addProfessionInfo,
32 PROFESSION_INFO_set0_namingAuthority,
33 PROFESSION_INFO_set0_professionItems,
34 PROFESSION_INFO_set0_professionOIDs,
35 PROFESSION_INFO_set0_registrationNumber
36 - Accessors and settors for ADMISSION_SYNTAX
37
38 =head1 SYNOPSIS
39
40  typedef struct NamingAuthority_st NAMING_AUTHORITY;
41  typedef struct ProfessionInfo_st PROFESSION_INFO;
42  typedef STACK_OF(PROFESSION_INFO) PROFESSION_INFOS;
43  typedef struct Admissions_st ADMISSIONS;
44  typedef struct AdmissionSyntax_st ADMISSION_SYNTAX;
45
46  const ASN1_OBJECT *NAMING_AUTHORITY_get0_authorityId(
47      const NAMING_AUTHORITY *n);
48  void NAMING_AUTHORITY_set0_authorityId(NAMING_AUTHORITY *n,
49      ASN1_OBJECT* namingAuthorityId);
50  const ASN1_IA5STRING *NAMING_AUTHORITY_get0_authorityURL(
51      const NAMING_AUTHORITY *n);
52  void NAMING_AUTHORITY_set0_authorityURL(NAMING_AUTHORITY *n,
53      ASN1_IA5STRING* namingAuthorityUrl);
54  const ASN1_STRING *NAMING_AUTHORITY_get0_authorityText(
55      const NAMING_AUTHORITY *n);
56  void NAMING_AUTHORITY_set0_authorityText(NAMING_AUTHORITY *n,
57      ASN1_STRING* namingAuthorityText);
58
59  const GENERAL_NAME *ADMISSION_SYNTAX_get0_admissionAuthority(
60      const ADMISSION_SYNTAX *as);
61  void ADMISSION_SYNTAX_set0_admissionAuthority(
62      ADMISSION_SYNTAX *as, GENERAL_NAME *aa);
63  const STACK_OF(ADMISSIONS) *ADMISSION_SYNTAX_get0_contentsOfAdmissions(
64      const ADMISSION_SYNTAX *as);
65  void ADMISSION_SYNTAX_set0_contentsOfAdmissions(
66      ADMISSION_SYNTAX *as, STACK_OF(ADMISSIONS) *a);
67
68  const GENERAL_NAME *ADMISSIONS_get0_admissionAuthority(const ADMISSIONS *a);
69  void ADMISSIONS_set0_admissionAuthority(ADMISSIONS *a, GENERAL_NAME *aa);
70  const NAMING_AUTHORITY *ADMISSIONS_get0_namingAuthority(const ADMISSIONS *a);
71  void ADMISSIONS_set0_namingAuthority(ADMISSIONS *a, NAMING_AUTHORITY *na);
72  const PROFESSION_INFOS *ADMISSIONS_get0_professionInfos(const ADMISSIONS *a);
73  void ADMISSIONS_set0_professionInfos(ADMISSIONS *a, PROFESSION_INFOS *pi);
74
75  const ASN1_OCTET_STRING *PROFESSION_INFO_get0_addProfessionInfo(
76      const PROFESSION_INFO *pi);
77  void PROFESSION_INFO_set0_addProfessionInfo(
78      PROFESSION_INFO *pi, ASN1_OCTET_STRING *aos);
79  const NAMING_AUTHORITY *PROFESSION_INFO_get0_namingAuthority(
80      const PROFESSION_INFO *pi);
81  void PROFESSION_INFO_set0_namingAuthority(
82      PROFESSION_INFO *pi, NAMING_AUTHORITY *na);
83  const STACK_OF(ASN1_STRING) *PROFESSION_INFO_get0_professionItems(
84      const PROFESSION_INFO *pi);
85  void PROFESSION_INFO_set0_professionItems(
86      PROFESSION_INFO *pi, STACK_OF(ASN1_STRING) *as);
87  const STACK_OF(ASN1_OBJECT) *PROFESSION_INFO_get0_professionOIDs(
88      const PROFESSION_INFO *pi);
89  void PROFESSION_INFO_set0_professionOIDs(
90      PROFESSION_INFO *pi, STACK_OF(ASN1_OBJECT) *po);
91  const ASN1_PRINTABLESTRING *PROFESSION_INFO_get0_registrationNumber(
92      const PROFESSION_INFO *pi);
93  void PROFESSION_INFO_set0_registrationNumber(
94      PROFESSION_INFO *pi, ASN1_PRINTABLESTRING *rn);
95
96 =head1 DESCRIPTION
97
98 The B<PROFESSION_INFOS>, B<ADMISSION_SYNTAX>, B<ADMISSIONS>, and
99 B<PROFESSION_INFO> types are opaque structures representing the
100 analogous types defined in the Common PKI Specification published
101 by L<https://www.t7ev.org>.
102 Knowledge of those strutures and their semantics is assumed.
103
104 The conventional routines to convert between DER and the local format
105 are desribed in L<d2i_X509(3)>.
106 The conventional routines to allocate and free the types are defined
107 in L<X509_dup(3)>.
108
109 The B<PROFESSION_INFOS> type is a stack of B<PROFESSION_INFO>; see
110 L<DEFINE_STACK_OF(3)> for details.
111
112 The B<NAMING_AUTHORITY> type has an authority ID and URL, and text fields.
113 The NAMING_AUTHORITY_get0_authorityId(),
114 NAMING_AUTHORITY_get0_get0_authorityURL(), and
115 NAMING_AUTHORITY_get0_get0_authorityText(), functions return pointers
116 to those values within the object.
117 The NAMING_AUTHORITY_set0_authorityId(),
118 NAMING_AUTHORITY_set0_get0_authorityURL(), and
119 NAMING_AUTHORITY_set0_get0_authorityText(),
120 functions free any existing value and set the pointer to the specified value.
121
122 The B<ADMISSION_SYNTAX> type has an authority name and a stack of
123 B<ADMISSION> objects.
124 The ADMISSION_SYNTAX_get0_admissionAuthority()
125 and ADMISSION_SYNTAX_get0_contentsOfAdmissions() functions return pointers
126 to those values within the object.
127 The
128 ADMISSION_SYNTAX_set0_admissionAuthority() and
129 ADMISSION_SYNTAX_set0_contentsOfAdmissions()
130 functions free any existing value and set the pointer to the specified value.
131
132 The B<ADMISSION> type has an authority name, authority object, and a
133 stack of B<PROFSSION_INFO> items.
134 The ADMISSIONS_get0_admissionAuthority(), ADMISSIONS_get0_namingAuthority(),
135 and ADMISSIONS_get0_professionInfos()
136 functions return pointers to those values within the object.
137 The
138 ADMISSIONS_set0_admissionAuthority(),
139 ADMISSIONS_set0_namingAuthority(), and
140 ADMISSIONS_set0_professionInfos()
141 functions free any existing value and set the pointer to the specified value.
142
143 The B<PROFESSION_INFO> type has a name authority, stacks of
144 profession Items and OIDs, a registration number, and additional
145 profession info.
146 The functions PROFESSION_INFO_get0_addProfessionInfo(),
147 PROFESSION_INFO_get0_namingAuthority(), PROFESSION_INFO_get0_professionItems(),
148 PROFESSION_INFO_get0_professionOIDs(), and
149 PROFESSION_INFO_get0_registrationNumber()
150 functions return pointers to those values within the object.
151 The
152 PROFESSION_INFO_set0_addProfessionInfo(),
153 PROFESSION_INFO_set0_namingAuthority(),
154 PROFESSION_INFO_set0_professionItems(),
155 PROFESSION_INFO_set0_professionOIDs(), and
156 PROFESSION_INFO_set0_registrationNumber()
157 functions free any existing value and set the pointer to the specified value.
158
159 =head1 RETURN VALUES
160
161 Described above.
162 Note that all of the I<get0> functions return a pointer to the internal data
163 structure and must not be freed.
164
165 =head1 SEE ALSO
166
167 L<X509_dup(3)>,
168 L<d2i_X509(3)>,
169
170 =head1 COPYRIGHT
171
172 Copyright 2017-2018 The OpenSSL Project Authors. All Rights Reserved.
173
174 Licensed under the OpenSSL license (the "License").  You may not use
175 this file except in compliance with the License.  You can obtain a copy
176 in the file LICENSE in the source distribution or at
177 L<https://www.openssl.org/source/license.html>.
178
179 =cut