0
0
mirror of https://github.com/OpenVPN/openvpn.git synced 2024-09-20 03:52:28 +02:00
openvpn/sample/sample-plugins
Frank Lichtenheld 2d36678a2b sample-plugins: Fix memleak in client-connect example plugin
I was looking for memleaks in the code and found
this one with cppcheck. Only an example, but no
need to leave this bug in it.

Also fix fortify problem in keying-material-exporter-demo
so I can actually test the compilation of the sample
plugins.

v2:
 - remove unneccessary usages of snprintf, replace
   with strncpy.

Change-Id: Ibd1b282afc4a28768be3f165f84ab60ca4d24a9b
Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com>
Acked-by: Gert Doering <gert@greenie.muc.de>
Message-Id: <20230516093534.26384-1-frank@lichtenheld.com>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg26668.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
2023-05-16 12:18:32 +02:00
..
client-connect sample-plugins: Fix memleak in client-connect example plugin 2023-05-16 12:18:32 +02:00
defer Update copyright year to 2023 2023-01-10 17:24:37 +01:00
keying-material-exporter-demo sample-plugins: Fix memleak in client-connect example plugin 2023-05-16 12:18:32 +02:00
log Update copyright year to 2023 2023-01-10 17:24:37 +01:00
simple Update copyright year to 2023 2023-01-10 17:24:37 +01:00
Makefile.am Update copyright year to 2023 2023-01-10 17:24:37 +01:00
Makefile.plugins Update copyright year to 2023 2023-01-10 17:24:37 +01: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