openvpn/plugin/examples
james 5a2e9a2587 Completely revamped the system for calling external programs and scripts:
* All external programs and scripts are now called by execve() on unix and
  CreateProcess on Windows.

* The system() function is no longer used.

* Argument lists for external programs and scripts are now built by the new
  argv_printf function which natively outputs to string arrays (i.e.
  char *argv[] lists), never truncates its output, and eliminates the security
  issues inherent in formatting and parsing command lines, and dealing with
  argument quoting.

* The --script-security directive has been added to offer policy controls on
  OpenVPN's execution of external programs and scripts.

Also added a new plugin example (openvpn/plugin/examples/log.c) that logs
information to stdout for every plugin method called by OpenVPN.


git-svn-id: http://svn.openvpn.net/projects/openvpn/branches/BETA21/openvpn@3122 e7ae566f-a301-0410-adde-c780ea21d3b5
2008-07-26 07:27:03 +00:00
..
build Fixed a bug in plugin.c that caused openvpn_plugin_client_destructor_v1 2008-05-25 22:31:25 +00:00
log.c Completely revamped the system for calling external programs and scripts: 2008-07-26 07:27:03 +00:00
README Reverted plugin directory location. 2005-10-16 12:24:10 +00:00
simple.c Copyright change OpenVPN Solutions LLC -> Telethra, Inc. 2008-07-14 18:59:09 +00:00
simple.def Reverted plugin directory location. 2005-10-16 12:24:10 +00:00
winbuild Reverted plugin directory location. 2005-10-16 12:24:10 +00:00

OpenVPN plugin examples.

Examples provided:

simple.c -- using the --auth-user-pass-verify callback, verify
            that the username/password is "foo"/"bar".

To build:

  ./build simple (Linux/BSD/etc.)
  ./winbuild simple (MinGW on Windows)

To use in OpenVPN, add to config file:

  plugin simple.so (Linux/BSD/etc.)
  plugin simple.dll (MinGW on Windows)