openvpn/sample/sample-plugins
Frank Lichtenheld 21f7d6e1ad clang-format: Switch to ColumnLimit 0
In some cases an actual ColumnLimit leads to unfortunate
formatting. So leave the decision to developers after all.

This commit contains:
 - changes that clang-format did as reaction to the config
   change
 - manual cleanups of these changes
 - manual cleanup of some previous changes done
   with ColumnLimit 100

Change-Id: Ibd900adfc775b7f785f1d5630184a124f5d8ff4b
Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
Acked-by: Gert Doering <gert@greenie.muc.de>
Message-Id: <20250805132706.27619-1-gert@greenie.muc.de>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg32523.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
2025-08-05 15:32:53 +02:00
..
client-connect clang-format: Switch to ColumnLimit 0 2025-08-05 15:32:53 +02:00
defer Reformat the whole project with clang-format 2025-08-04 21:40:22 +02:00
keying-material-exporter-demo Reformat the whole project with clang-format 2025-08-04 21:40:22 +02:00
log clang-format: Switch to ColumnLimit 0 2025-08-05 15:32:53 +02:00
simple clang-format: Switch to ColumnLimit 0 2025-08-05 15:32:53 +02:00
Makefile.am Update copyright statements to 2025 2025-05-31 22:38:38 +02:00
Makefile.plugins Update copyright statements to 2025 2025-05-31 22:38:38 +02:00
README plugins: Remove defer/simple.c sample plugin 2022-03-15 16:38:16 +01:00

OpenVPN plug-in examples.

Examples provided:

* authentication and logging
simple/simple.c -- using the --auth-user-pass-verify callback, verify
                   that the username/password is "foo"/"bar".
defer/multi-auth.c
                -- using the --auth-user-pass-verify callback,
                   test deferred authentication. Can be used to test multiple
                   authentication plugins in the same server config.
log/log.c       -- Extended variant of simple/simple.c which adds more
                   logging of what is happening inside the plug-in
log/log_v3.c    -- A variant of log/log.c, which makes use of the
                   OpenVPN plug-in v3 API.  This will also log even more
                   information related to certificates in use.

* client-connect (and logging)
client-connect/sample-client-connect -- demonstrate how to use the
                   CLIENT_CONNECT and CLIENT_CONNECT_V2 hooks to achieve
                   "per client configuration / logging / ..." actions,
                   both in synchronous and async/deferred mode

* cryptography related
simple/base64.c -- Example using the OpenVPN exported base64 encode/decode
                   functions
keying-material-exporter-demo/keyingmaterialexporter.c
                -- Example based on TLS Keying Material Exporters over HTTP [RFC-5705]
                   (openvpn/doc/keying-material-exporter.txt).  For more details, see
                   keying-material-exporter-demo/README


To build on *BSD/Linux platforms (requires GNU Make):

   gmake                   (builds a default set of plug-ins)
   gmake simple/simple.so

To build on Windows platform (MinGW):

   cd simple; ./winbuild simple.so

To use in OpenVPN, add to config file:

  plugin simple.so (Linux/BSD/etc.)
  plugin simple.dll