diff options
Diffstat (limited to 'src/lib/libcrypto/man')
| -rw-r--r-- | src/lib/libcrypto/man/X509_check_purpose.3 | 66 |
1 files changed, 43 insertions, 23 deletions
diff --git a/src/lib/libcrypto/man/X509_check_purpose.3 b/src/lib/libcrypto/man/X509_check_purpose.3 index e0737251eb..ff5ab592b0 100644 --- a/src/lib/libcrypto/man/X509_check_purpose.3 +++ b/src/lib/libcrypto/man/X509_check_purpose.3 | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | .\" $OpenBSD: X509_check_purpose.3,v 1.7 2021/10/29 14:29:24 schwarze Exp $ | 1 | .\" $OpenBSD: X509_check_purpose.3,v 1.8 2022/12/16 18:02:28 tb Exp $ |
| 2 | .\" | 2 | .\" |
| 3 | .\" Copyright (c) 2019, 2021 Ingo Schwarze <schwarze@openbsd.org> | 3 | .\" Copyright (c) 2019, 2021 Ingo Schwarze <schwarze@openbsd.org> |
| 4 | .\" | 4 | .\" |
| @@ -14,7 +14,7 @@ | |||
| 14 | .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | 14 | .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
| 15 | .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | 15 | .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
| 16 | .\" | 16 | .\" |
| 17 | .Dd $Mdocdate: October 29 2021 $ | 17 | .Dd $Mdocdate: December 16 2022 $ |
| 18 | .Dt X509_CHECK_PURPOSE 3 | 18 | .Dt X509_CHECK_PURPOSE 3 |
| 19 | .Os | 19 | .Os |
| 20 | .Sh NAME | 20 | .Sh NAME |
| @@ -30,10 +30,26 @@ | |||
| 30 | .Fc | 30 | .Fc |
| 31 | .Sh DESCRIPTION | 31 | .Sh DESCRIPTION |
| 32 | If the | 32 | If the |
| 33 | .Fa purpose | ||
| 34 | argument is \-1, | ||
| 35 | .Fn X509_check_purpose | ||
| 36 | ignores the | ||
| 37 | .Fa ca | ||
| 38 | argument and checks that all the extensions of the | ||
| 39 | .Fa certificate | ||
| 40 | can be parsed and pass minimal sanity checks, in particular that | ||
| 41 | extensions that must not occur more than once do not. | ||
| 42 | It also makes sure that all extensions are cached in the | ||
| 43 | .Vt X509 | ||
| 44 | object. | ||
| 45 | .Pp | ||
| 46 | If the | ||
| 47 | .Fa purpose | ||
| 48 | argument is not \-1 and the | ||
| 33 | .Fa ca | 49 | .Fa ca |
| 34 | flag is 0, | 50 | flag is 0, |
| 35 | .Fn X509_check_purpose | 51 | .Fn X509_check_purpose |
| 36 | checks whether the public key contained in the | 52 | additionally checks whether the public key contained in the |
| 37 | .Fa certificate | 53 | .Fa certificate |
| 38 | is intended to be used for the given | 54 | is intended to be used for the given |
| 39 | .Fa purpose , | 55 | .Fa purpose , |
| @@ -205,10 +221,12 @@ bits is set, and no other bits are set. | |||
| 205 | .El | 221 | .El |
| 206 | .Pp | 222 | .Pp |
| 207 | If the | 223 | If the |
| 224 | .Fa purpose | ||
| 225 | argument is not \-1 and the | ||
| 208 | .Fa ca | 226 | .Fa ca |
| 209 | flag is non-zero, | 227 | flag is non-zero, |
| 210 | .Fn X509_check_purpose | 228 | .Fn X509_check_purpose |
| 211 | instead checks whether the | 229 | instead checks, in addition to the minimal sanity checks, whether the |
| 212 | .Fa certificate | 230 | .Fa certificate |
| 213 | can be used as a certificate authority certificate | 231 | can be used as a certificate authority certificate |
| 214 | in the context of the given | 232 | in the context of the given |
| @@ -334,14 +352,6 @@ The check even succeeds if the three other common conditions | |||
| 334 | cited above this list are violated. | 352 | cited above this list are violated. |
| 335 | .El | 353 | .El |
| 336 | .Pp | 354 | .Pp |
| 337 | If parsing of any extensions that are present succeeds and the | ||
| 338 | .Fa purpose | ||
| 339 | argument is \-1, | ||
| 340 | .Fn X509_check_purpose | ||
| 341 | always succeeds, no matter whether or not the | ||
| 342 | .Fa ca | ||
| 343 | flag is set. | ||
| 344 | .Pp | ||
| 345 | If the function | 355 | If the function |
| 346 | .Xr X509_PURPOSE_add 3 | 356 | .Xr X509_PURPOSE_add 3 |
| 347 | was called before | 357 | was called before |
| @@ -352,22 +362,28 @@ installed additional, user-supplied checking functions for user-defined | |||
| 352 | .Fa purpose | 362 | .Fa purpose |
| 353 | identifiers not listed above. | 363 | identifiers not listed above. |
| 354 | .Sh RETURN VALUES | 364 | .Sh RETURN VALUES |
| 365 | If parsing of certificate extensions or sanity checks fail or the | ||
| 366 | .Fa purpose | ||
| 367 | is invalid, | ||
| 355 | .Fn X509_check_purpose | 368 | .Fn X509_check_purpose |
| 356 | returns the following values: | 369 | returns \-1 to indicate the error. |
| 357 | .Bl -column -1 Failure -compact | 370 | .Pp |
| 358 | .It \-1 Ta Error Ta Parsing of certificate extensions failed or the | 371 | If the |
| 359 | .Fa purpose | 372 | .Fa purpose |
| 360 | is invalid. | 373 | argument is \-1 and parsing and minimal sanity checks succeed, |
| 361 | .It 0 Ta Failure Ta The | 374 | .Fn X509_check_purpose |
| 362 | .Fa certificate | 375 | returns 1 to indicate success. |
| 363 | cannot be used for the | 376 | .Pp |
| 364 | .Fa purpose . | 377 | Otherwise, it returns the following values: |
| 365 | .El | ||
| 366 | .Pp | 378 | .Pp |
| 367 | If | 379 | If |
| 368 | .Fa ca | 380 | .Fa ca |
| 369 | is 0, the following values can also be returned: | 381 | is 0: |
| 370 | .Bl -column -1 Failure -compact | 382 | .Bl -column -1 Failure -compact |
| 383 | .It 0 Ta Failure Ta The | ||
| 384 | .Fa certificate | ||
| 385 | cannot be used for the | ||
| 386 | .Fa purpose . | ||
| 371 | .It 1 Ta Success Ta The | 387 | .It 1 Ta Success Ta The |
| 372 | .Fa certificate | 388 | .Fa certificate |
| 373 | can be used for the | 389 | can be used for the |
| @@ -377,8 +393,12 @@ can be used for the | |||
| 377 | .Pp | 393 | .Pp |
| 378 | If | 394 | If |
| 379 | .Fa ca | 395 | .Fa ca |
| 380 | is non-zero, the following values can also be returned: | 396 | is non-zero: |
| 381 | .Bl -column -1 Failure -compact | 397 | .Bl -column -1 Failure -compact |
| 398 | .It 0 Ta Failure Ta The | ||
| 399 | .Fa certificate | ||
| 400 | cannot be used as a CA for the | ||
| 401 | .Fa purpose . | ||
| 382 | .It 1 Ta Success Ta The | 402 | .It 1 Ta Success Ta The |
| 383 | .Fa certificate | 403 | .Fa certificate |
| 384 | can be used as a CA for the | 404 | can be used as a CA for the |
