Various RT doc fixes
[openssl.git] / doc / crypto / crypto.pod
1 =pod
2
3 =head1 NAME
4
5 crypto - OpenSSL cryptographic library
6
7 =head1 SYNOPSIS
8
9 =head1 DESCRIPTION
10
11 The OpenSSL B<crypto> library implements a wide range of cryptographic
12 algorithms used in various Internet standards. The services provided
13 by this library are used by the OpenSSL implementations of SSL, TLS
14 and S/MIME, and they have also been used to implement SSH, OpenPGP, and
15 other cryptographic standards.
16
17 =head1 OVERVIEW
18
19 B<libcrypto> consists of a number of sub-libraries that implement the
20 individual algorithms.
21
22 The functionality includes symmetric encryption, public key
23 cryptography and key agreement, certificate handling, cryptographic
24 hash functions, cryptographic pseudo-random number generator, and
25 various utilities.
26
27 See the individual manual pages for details.
28
29 =head1 NOTES
30
31 Some of the newer functions follow a naming convention using the numbers
32 B<0> and B<1>. For example the functions:
33
34  int X509_CRL_add0_revoked(X509_CRL *crl, X509_REVOKED *rev);
35  int X509_add1_trust_object(X509 *x, ASN1_OBJECT *obj);
36
37 The B<0> version uses the supplied structure pointer directly
38 in the parent and it will be freed up when the parent is freed.
39 In the above example B<crl> would be freed but B<rev> would not.
40
41 The B<1> function uses a copy of the supplied structure pointer
42 (or in some cases increases its link count) in the parent and
43 so both (B<x> and B<obj> above) should be freed up.
44
45 =head1 SEE ALSO
46
47 L<openssl(1)>, L<ssl(3)>
48
49 =cut