xref: /freebsd/contrib/bearssl/samples/README.txt (revision cfd6422a5217410fbd66f7a7a8a64d9d85e61229)
1This directory contains sample code for using BearSSL.
2
3client_basic.c
4
5   A sample client code, that connects to a server, performs a SSL
6   handshake, sends a basic HTTP GET request, and dumps the complete
7   answer on stdout.
8
9   Compile it against BearSSL headers (in the ../inc directory) and
10   library (libbearssl.a). This code will validate the server
11   certificate against two hardcoded trust anchors.
12
13server_basic.c
14
15   A sample SSL server, that serves one client at a time. It reads a
16   single HTTP request (that it does not really parse; it just waits for
17   the two successive line endings that mark the end of the request),
18   and pushes a basic response.
19
20   Compile it against BearSSL headers (in the ../inc directory) and
21   library (libbearssl.a). Depending on compilation options (see the
22   code), it will use one of several certificate chains, that exercise
23   various combinations of RSA and EC keys and signatures. These
24   certificate chains link to the trust anchors that are hardcoded
25   in client_basic.c, so the sample client and the sample server can
26   be tested against each other.
27
28custom_profile.c
29
30   A sample C source file that shows how to write your own client or
31   server profiles (selections of cipher suites and algorithms).
32
33
34The .pem files are certificate and keys corresponding to the chains
35and anchors used by the sample client and server. They are provided
36for reference only; these files are not used by the examples.
37