gitextract_yqj5celu/ ├── .clang-format ├── .git-blame-ignore-revs ├── .gitattributes ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ └── bug_report.md │ ├── PULL_REQUEST_TEMPLATE.md │ └── workflows/ │ ├── build.yaml │ ├── coverity-scan.yml │ └── doxygen.yml ├── .gitignore ├── .mailmap ├── .pre-commit-config.yaml ├── .svncommitters ├── AUTHORS ├── CMakeLists.txt ├── CMakePresets.json ├── CONTRIBUTING.rst ├── COPYING ├── COPYRIGHT.GPL ├── ChangeLog ├── Changes.rst ├── INSTALL ├── Makefile.am ├── NEWS ├── PORTS ├── README ├── README.awslc ├── README.cmake.md ├── README.dco.md ├── README.ec ├── README.mbedtls ├── README.wolfssl ├── compat.m4 ├── config.h.cmake.in ├── configure.ac ├── contrib/ │ ├── OCSP_check/ │ │ └── OCSP_check.sh │ ├── README │ ├── cmake/ │ │ ├── git-version.py │ │ └── parse-version.m4.py │ ├── extract-crl/ │ │ └── extractcrl.py │ ├── multilevel-init.patch │ ├── openvpn-fwmarkroute-1.00/ │ │ ├── README │ │ ├── fwmarkroute.down │ │ └── fwmarkroute.up │ ├── vcpkg-manifests/ │ │ ├── mingw/ │ │ │ └── vcpkg.json │ │ └── windows/ │ │ └── vcpkg.json │ ├── vcpkg-ports/ │ │ └── pkcs11-helper/ │ │ ├── config-w32-vc.h.in-indicate-OpenSSL.patch │ │ ├── nmake-compatibility-with-vcpkg-nmake.patch │ │ ├── pkcs11-helper-001-RFC7512.patch │ │ ├── portfile.cmake │ │ └── vcpkg.json │ └── vcpkg-triplets/ │ ├── arm64-windows-ovpn.cmake │ ├── x64-mingw-ovpn.cmake │ ├── x64-windows-ovpn.cmake │ ├── x86-mingw-ovpn.cmake │ └── x86-windows-ovpn.cmake ├── debug/ │ ├── doval │ ├── dovalns │ └── valgrind-suppress ├── dev-tools/ │ ├── gen-release-tarballs.sh │ ├── gerrit-send-mail.py │ ├── git-pre-commit-format.sh │ └── update-copyright.sh ├── distro/ │ ├── Makefile.am │ ├── dns-scripts/ │ │ ├── Makefile.am │ │ ├── haikuos_file-dns-updown.sh │ │ ├── macos-dns-updown.sh │ │ ├── openresolv-dns-updown.sh │ │ ├── resolvconf_file-dns-updown.sh │ │ └── systemd-dns-updown.sh │ └── systemd/ │ ├── Makefile.am │ ├── README.systemd │ ├── openvpn-client@.service.in │ ├── openvpn-server@.service.in │ └── tmpfiles-openvpn.conf ├── doc/ │ ├── CMakeLists.txt │ ├── Makefile.am │ ├── README.man │ ├── README.plugins │ ├── android.txt │ ├── doxygen/ │ │ ├── Makefile.am │ │ ├── doc_compression.h │ │ ├── doc_control_processor.h │ │ ├── doc_control_tls.h │ │ ├── doc_data_control.h │ │ ├── doc_data_crypto.h │ │ ├── doc_eventloop.h │ │ ├── doc_external_multiplexer.h │ │ ├── doc_fragmentation.h │ │ ├── doc_internal_multiplexer.h │ │ ├── doc_key_generation.h │ │ ├── doc_mainpage.h │ │ ├── doc_memory_management.h │ │ ├── doc_protocol_overview.h │ │ ├── doc_reliable.h │ │ ├── doc_tunnel_state.h │ │ └── openvpn.doxyfile.in │ ├── gui-notes.txt │ ├── interactive-service-notes.rst │ ├── keying-material-exporter.txt │ ├── man-sections/ │ │ ├── advanced-options.rst │ │ ├── cipher-negotiation.rst │ │ ├── client-options.rst │ │ ├── connection-profiles.rst │ │ ├── encryption-options.rst │ │ ├── example-fingerprint.rst │ │ ├── examples.rst │ │ ├── generic-options.rst │ │ ├── inline-files.rst │ │ ├── link-options.rst │ │ ├── log-options.rst │ │ ├── management-options.rst │ │ ├── network-config.rst │ │ ├── pkcs11-options.rst │ │ ├── plugin-options.rst │ │ ├── protocol-options.rst │ │ ├── proxy-options.rst │ │ ├── renegotiation.rst │ │ ├── script-options.rst │ │ ├── server-options.rst │ │ ├── signals.rst │ │ ├── tls-options.rst │ │ ├── unsupported-options.rst │ │ ├── virtual-routing-and-forwarding.rst │ │ ├── vpn-network-options.rst │ │ └── windows-options.rst │ ├── management-notes.txt │ ├── openvpn-examples.5.rst │ ├── openvpn.8.rst │ ├── t_server_null.rst │ ├── tests/ │ │ └── authentication-plugins.md │ └── tls-crypt-v2.txt ├── forked-test-driver ├── include/ │ ├── Makefile.am │ ├── openvpn-msg.h │ └── openvpn-plugin.h.in ├── ltrc.inc ├── m4/ │ ├── .keep │ ├── ax_socklen_t.m4 │ └── pkg.m4 ├── renovate.json ├── sample/ │ ├── Makefile.am │ ├── sample-config-files/ │ │ ├── README │ │ ├── client.conf │ │ ├── firewall.sh │ │ ├── loopback-client │ │ ├── loopback-server │ │ ├── openvpn-shutdown.sh │ │ ├── openvpn-startup.sh │ │ └── server.conf │ ├── sample-keys/ │ │ ├── README │ │ ├── ca.crt │ │ ├── ca.key │ │ ├── client-ec.crt │ │ ├── client-ec.key │ │ ├── client-pass.key │ │ ├── client.crt │ │ ├── client.key │ │ ├── client.p12 │ │ ├── ffdhe2048.pem │ │ ├── gen-sample-keys.sh │ │ ├── openssl.cnf │ │ ├── server-ec.crt │ │ ├── server-ec.key │ │ ├── server.crt │ │ ├── server.key │ │ └── ta.key │ ├── sample-plugins/ │ │ ├── Makefile.am │ │ ├── Makefile.plugins │ │ ├── README │ │ ├── client-connect/ │ │ │ ├── README │ │ │ └── sample-client-connect.c │ │ ├── defer/ │ │ │ ├── multi-auth.c │ │ │ └── winbuild │ │ ├── keying-material-exporter-demo/ │ │ │ ├── README │ │ │ ├── client.ovpn │ │ │ ├── http-client.py │ │ │ ├── http-server.py │ │ │ ├── keyingmaterialexporter.c │ │ │ └── server.ovpn │ │ ├── log/ │ │ │ ├── log.c │ │ │ ├── log_v3.c │ │ │ └── winbuild │ │ └── simple/ │ │ ├── base64.c │ │ ├── simple.c │ │ ├── simple.def │ │ └── winbuild │ └── sample-scripts/ │ ├── auth-pam.pl │ ├── bridge-start │ ├── bridge-stop │ ├── totpauth.py │ ├── ucn.pl │ └── verify-cn ├── src/ │ ├── Makefile.am │ ├── compat/ │ │ ├── Makefile.am │ │ ├── compat-basename.c │ │ ├── compat-daemon.c │ │ ├── compat-dirname.c │ │ ├── compat-gettimeofday.c │ │ ├── compat-strsep.c │ │ └── compat.h │ ├── openvpn/ │ │ ├── Makefile.am │ │ ├── argv.c │ │ ├── argv.h │ │ ├── auth_token.c │ │ ├── auth_token.h │ │ ├── base64.c │ │ ├── base64.h │ │ ├── basic.h │ │ ├── buffer.c │ │ ├── buffer.h │ │ ├── circ_list.h │ │ ├── clinat.c │ │ ├── clinat.h │ │ ├── common.h │ │ ├── comp-lz4.c │ │ ├── comp-lz4.h │ │ ├── comp.c │ │ ├── comp.h │ │ ├── compstub.c │ │ ├── console.c │ │ ├── console.h │ │ ├── console_builtin.c │ │ ├── console_systemd.c │ │ ├── crypto.c │ │ ├── crypto.h │ │ ├── crypto_backend.h │ │ ├── crypto_epoch.c │ │ ├── crypto_epoch.h │ │ ├── crypto_mbedtls.c │ │ ├── crypto_mbedtls.h │ │ ├── crypto_mbedtls_legacy.c │ │ ├── crypto_mbedtls_legacy.h │ │ ├── crypto_openssl.c │ │ ├── crypto_openssl.h │ │ ├── cryptoapi.c │ │ ├── cryptoapi.h │ │ ├── dco.c │ │ ├── dco.h │ │ ├── dco_freebsd.c │ │ ├── dco_freebsd.h │ │ ├── dco_internal.h │ │ ├── dco_linux.c │ │ ├── dco_linux.h │ │ ├── dco_win.c │ │ ├── dco_win.h │ │ ├── dhcp.c │ │ ├── dhcp.h │ │ ├── dns.c │ │ ├── dns.h │ │ ├── domain_helper.h │ │ ├── env_set.c │ │ ├── env_set.h │ │ ├── errlevel.h │ │ ├── error.c │ │ ├── error.h │ │ ├── event.c │ │ ├── event.h │ │ ├── fdmisc.c │ │ ├── fdmisc.h │ │ ├── forward.c │ │ ├── forward.h │ │ ├── fragment.c │ │ ├── fragment.h │ │ ├── gremlin.c │ │ ├── gremlin.h │ │ ├── helper.c │ │ ├── helper.h │ │ ├── httpdigest.c │ │ ├── httpdigest.h │ │ ├── init.c │ │ ├── init.h │ │ ├── integer.h │ │ ├── interval.c │ │ ├── interval.h │ │ ├── list.c │ │ ├── list.h │ │ ├── lladdr.c │ │ ├── lladdr.h │ │ ├── lzo.c │ │ ├── lzo.h │ │ ├── manage.c │ │ ├── manage.h │ │ ├── mbedtls_compat.h │ │ ├── mbuf.c │ │ ├── mbuf.h │ │ ├── memdbg.h │ │ ├── misc.c │ │ ├── misc.h │ │ ├── mroute.c │ │ ├── mroute.h │ │ ├── mss.c │ │ ├── mss.h │ │ ├── mtcp.c │ │ ├── mtcp.h │ │ ├── mtu.c │ │ ├── mtu.h │ │ ├── mudp.c │ │ ├── mudp.h │ │ ├── multi.c │ │ ├── multi.h │ │ ├── multi_io.c │ │ ├── multi_io.h │ │ ├── networking.h │ │ ├── networking_freebsd.c │ │ ├── networking_iproute2.c │ │ ├── networking_iproute2.h │ │ ├── networking_sitnl.c │ │ ├── networking_sitnl.h │ │ ├── occ.c │ │ ├── occ.h │ │ ├── openssl_compat.h │ │ ├── openvpn.c │ │ ├── openvpn.h │ │ ├── openvpn.manifest │ │ ├── openvpn_win32_resources.rc │ │ ├── options.c │ │ ├── options.h │ │ ├── options_parse.c │ │ ├── options_util.c │ │ ├── options_util.h │ │ ├── otime.c │ │ ├── otime.h │ │ ├── ovpn_dco_freebsd.h │ │ ├── ovpn_dco_linux.h │ │ ├── ovpn_dco_win.h │ │ ├── packet_id.c │ │ ├── packet_id.h │ │ ├── ping.c │ │ ├── ping.h │ │ ├── pkcs11.c │ │ ├── pkcs11.h │ │ ├── pkcs11_backend.h │ │ ├── pkcs11_mbedtls.c │ │ ├── pkcs11_openssl.c │ │ ├── platform.c │ │ ├── platform.h │ │ ├── plugin.c │ │ ├── plugin.h │ │ ├── pool.c │ │ ├── pool.h │ │ ├── proto.c │ │ ├── proto.h │ │ ├── proxy.c │ │ ├── proxy.h │ │ ├── ps.c │ │ ├── ps.h │ │ ├── push.c │ │ ├── push.h │ │ ├── push_util.c │ │ ├── pushlist.h │ │ ├── reflect_filter.c │ │ ├── reflect_filter.h │ │ ├── reliable.c │ │ ├── reliable.h │ │ ├── ring_buffer.h │ │ ├── route.c │ │ ├── route.h │ │ ├── run_command.c │ │ ├── run_command.h │ │ ├── schedule.c │ │ ├── schedule.h │ │ ├── session_id.c │ │ ├── session_id.h │ │ ├── shaper.c │ │ ├── shaper.h │ │ ├── sig.c │ │ ├── sig.h │ │ ├── siphash.h │ │ ├── siphash_reference.c │ │ ├── socket.c │ │ ├── socket.h │ │ ├── socket_util.c │ │ ├── socket_util.h │ │ ├── socks.c │ │ ├── socks.h │ │ ├── ssl.c │ │ ├── ssl.h │ │ ├── ssl_backend.h │ │ ├── ssl_common.h │ │ ├── ssl_mbedtls.c │ │ ├── ssl_mbedtls.h │ │ ├── ssl_ncp.c │ │ ├── ssl_ncp.h │ │ ├── ssl_openssl.c │ │ ├── ssl_openssl.h │ │ ├── ssl_pkt.c │ │ ├── ssl_pkt.h │ │ ├── ssl_util.c │ │ ├── ssl_util.h │ │ ├── ssl_verify.c │ │ ├── ssl_verify.h │ │ ├── ssl_verify_backend.h │ │ ├── ssl_verify_mbedtls.c │ │ ├── ssl_verify_mbedtls.h │ │ ├── ssl_verify_openssl.c │ │ ├── ssl_verify_openssl.h │ │ ├── status.c │ │ ├── status.h │ │ ├── syshead.h │ │ ├── tls_crypt.c │ │ ├── tls_crypt.h │ │ ├── tun.c │ │ ├── tun.h │ │ ├── tun_afunix.c │ │ ├── tun_afunix.h │ │ ├── vlan.c │ │ ├── vlan.h │ │ ├── wfp_block.c │ │ ├── wfp_block.h │ │ ├── win32-util.c │ │ ├── win32-util.h │ │ ├── win32.c │ │ ├── win32.h │ │ ├── xkey_common.h │ │ ├── xkey_helper.c │ │ └── xkey_provider.c │ ├── openvpnmsica/ │ │ ├── CMakeLists.txt │ │ ├── Makefile.am │ │ ├── dllmain.c │ │ ├── msica_arg.c │ │ ├── msica_arg.h │ │ ├── msiex.c │ │ ├── msiex.h │ │ ├── openvpnmsica.c │ │ ├── openvpnmsica.h │ │ └── openvpnmsica_resources.rc │ ├── openvpnserv/ │ │ ├── CMakeLists.txt │ │ ├── Makefile.am │ │ ├── common.c │ │ ├── eventmsg.mc │ │ ├── interactive.c │ │ ├── openvpnserv_resources.rc │ │ ├── service.c │ │ ├── service.h │ │ ├── validate.c │ │ └── validate.h │ ├── plugins/ │ │ ├── Makefile.am │ │ ├── auth-pam/ │ │ │ ├── Makefile.am │ │ │ ├── README.auth-pam │ │ │ ├── auth-pam.c │ │ │ ├── auth-pam.exports │ │ │ ├── pamdl.c │ │ │ ├── pamdl.h │ │ │ ├── utils.c │ │ │ └── utils.h │ │ └── down-root/ │ │ ├── Makefile.am │ │ ├── README.down-root │ │ ├── down-root.c │ │ └── down-root.exports │ └── tapctl/ │ ├── CMakeLists.txt │ ├── Makefile.am │ ├── basic.h │ ├── error.c │ ├── error.h │ ├── main.c │ ├── tap.c │ ├── tap.h │ └── tapctl_resources.rc ├── tests/ │ ├── Makefile.am │ ├── lwip_client_up.sh │ ├── ntlm_support.c │ ├── null_client_up.sh │ ├── t_client.rc-sample │ ├── t_client.sh.in │ ├── t_cltsrv-down.sh │ ├── t_cltsrv.sh │ ├── t_lpback.sh │ ├── t_net.sh │ ├── t_server_null.rc-sample │ ├── t_server_null.sh │ ├── t_server_null_client.sh │ ├── t_server_null_default.rc │ ├── t_server_null_server.sh │ ├── t_server_null_stress.sh │ ├── unit_tests/ │ │ ├── Makefile.am │ │ ├── README.md │ │ ├── example_test/ │ │ │ ├── Makefile.am │ │ │ ├── README.md │ │ │ ├── test.c │ │ │ └── test2.c │ │ ├── openvpn/ │ │ │ ├── Makefile.am │ │ │ ├── cert_data.h │ │ │ ├── input/ │ │ │ │ ├── appears_empty.txt │ │ │ │ ├── empty.txt │ │ │ │ ├── leak_suppr.txt │ │ │ │ ├── user_only.txt │ │ │ │ └── user_pass.txt │ │ │ ├── mock_get_random.c │ │ │ ├── mock_management.c │ │ │ ├── mock_msg.c │ │ │ ├── mock_msg.h │ │ │ ├── mock_ssl_dependencies.c │ │ │ ├── mock_win32_execve.c │ │ │ ├── pkey_test_utils.c │ │ │ ├── test_argv.c │ │ │ ├── test_auth_token.c │ │ │ ├── test_buffer.c │ │ │ ├── test_common.h │ │ │ ├── test_crypto.c │ │ │ ├── test_cryptoapi.c │ │ │ ├── test_dhcp.c │ │ │ ├── test_mbuf.c │ │ │ ├── test_misc.c │ │ │ ├── test_ncp.c │ │ │ ├── test_networking.c │ │ │ ├── test_options_parse.c │ │ │ ├── test_packet_id.c │ │ │ ├── test_pkcs11.c │ │ │ ├── test_pkt.c │ │ │ ├── test_provider.c │ │ │ ├── test_push_update_msg.c │ │ │ ├── test_socket.c │ │ │ ├── test_ssl.c │ │ │ ├── test_tls_crypt.c │ │ │ └── test_user_pass.c │ │ ├── openvpnserv/ │ │ │ ├── Makefile.am │ │ │ └── test_openvpnserv.c │ │ └── plugins/ │ │ ├── Makefile.am │ │ └── auth-pam/ │ │ ├── Makefile.am │ │ └── test_search_and_replace.c │ └── update_t_client_ips.sh └── version.m4