community wiki
Attachments
History
Blame
View Source
Changelog
Documentation
Toggle dark mode
Login
Home
A - Z
Page Index
Archived
ACKSystemReview
BuildingTapWindows
BuildingUsingGenericBuildsystem
DynamicDNS
GettingOpenvpnBuild
HLKTesting
IOSinline
Nonprivileged
OpenvpnMSIInstaller
Optimizing Performance on Gigabit Networks
PerformanceTesting
PrivilegeSeparation
RoadMap
SecurityOverview
StaticKeyMiniHowto
TapWindowsLicenseChange
TracWikiReplacements
UsingSmartcards
Changelogs
ChangesInOpenVPN1x
ChangesInOpenVPN20
ChangesInOpenVPN21
ChangesInOpenVPN22
ChangesInOpenVPN23
ChangesInOpenVPN24
ChangesInOpenVPN25
ChangesInOpenVPN26
Community Forum
DataChannelOffload
CI for DCO Linux
CapaNegotiation
Features
How To Contribute
LinuxUAPI
NonLinuxPlatforms
Routing
UsingDCO
WhatChanges
Development
CodeStyle
Contributing
DeveloperDocumentation
GerritBestPractices
OpenVPNMSICA
OpenVPN_QA
Openvpn2ReleaseProcess
PackageMaintainers
ReleaseOfOpenVPN
ServerSideTestingImprovementPlan
SettingUpBuildslave
StatusOfOpenvpn24
StatusOfOpenvpn25
StatusOfOpenvpn26
StatusOfOpenvpn27
StatusOfOpenvpn28
TesterDocumentation
Downloads
Verify signature
FAQ
247-i-am-having-problems-running-openvpn-with-the-windows-xp-firewall-enabled-whats-wrong
249-upgraded-the-openvpn-daemon-on-one-side-of-the-connection-to-v20-and-now-it-cant-connect
251-openvpn-server-successfully-connected-a-client-to-it-but-when-i-try-to-connect-a-second-client-the
253-tls-error-tls-key-negotiation-failed-to-occur-within-60-seconds-check-your-network-connectivity
255-qconnection-initiated-with-xxxxq-but-i-cannot-ping-the-server-through-the-vpn
257-can-an-openvpn-server-be-set-up-on-a-machine-with-a-single-nic
259-tap-win32-adapter-is-not-coming-up-initialization-sequence-completed-with-errors
261-when-i-try-configure-on-red-hat-9-linux-or-higher-it-complains-about-openssl-headers-not-found
263-openvpn-can-ping-both-peers-but-i-cant-reach-any-of-the-other-machines-on-the-remote-subnet
265-how-do-i-enable-ip-forwarding
267-i-am-having-trouble-getting-openvpn-1x-to-talk-with-openvpn-20
269-tue-oct-26-143448-2004-36880-write-udpv4--no-buffer-space-available-code105
271-i-can-ping-through-the-tunnel-but-any-real-work-causes-it-to-lock-up-is-this-an-mtu-problem
273-qifconfig-poolq-option-use-a-30-subnet-4-private-ip-addresses-per-client-when-used-in-tun-mode
275-why-cant-i-run-openvpn-on-windows-from-a-non-admin-user-account
277-i-uninstalled-openvpn-on-windows-2000-and-now-it-appears-that-winsock-is-broken-how-to-fix
279-are-there-any-issues-related-to-pushing-dhcp-options-to-windows-clients
281-what-to-do-if-the-installation-of-the-tap-win32-driver-fails
283-can-i-run-multiple-openvpn-tunnels-on-a-single-machine
285-everything-seems-to-be-configured-correctly-but-i-cant-ping-across-the-tunnel
287-is-ipv6-support-plannedin-the-works
289-how-can-i-build-a-binary-rpm-package-for-my-specific-linux-platform
291-on-slackware-i-get-the-error-cipher-algorithm-bf-cbc-not-found-openssl
293-what-is-the-principle-behind-openvpn-tunnels
295-are-there-any-known-security-vulnerabilities-with-openvpn
297-is-it-important-to-openvpn-security-practices-to-build-an-intermediate-certificate-authoritykey
299-can-openvpn-handle-the-situation-where-both-ends-of-the-connection-are-dynamic
301-does-openvpn-support-certificate-revocation-lists-crls
303-how-stable-is-the-openvpn-protocol-ie-can-old-versions-of-openvpn-talk-to-new-versions
305-what-is-the-difference-between-a-tun-device-and-a-tap-device
307-what-is-bridging
309-what-is-the-difference-between-bridging-and-routing
311-what-are-the-fundamental-differences-between-bridging-and-routing-in-terms-of-configuration
313-how-can-i-connect-windows-xp-to-a-linux-based-samba-server-using-routing-rather-than-bridging
315-i-get-the-error-cannot-ioctl-tunsetiff-tun0-file-descriptor-in-bad-state-errno77
317-qmulti-bad-source-address-from-client--packet-droppedq-or-qget-inst-by-virt-failedq
319-how-do-i-make-the-windows-network-adapter-my-default-adapter-again
321-remap-local-addresses-to-connect-two-networks-with-an-overlap-in-the-private-address-range
323-i-want-to-set-up-an-ethernet-bridge-on-the-1921681024-subnet-existing-dhcp
325-openvpn-as-a--forking-tcp-server-which-can-service-multiple-clients-over-a-single-tcp-port
327-changed-hex-bytes-in-the-static-key-the-key-still-connects-to-a-remote-peer-using-the-original-key
328-route-and-route-ipv6-in-ccd-files
329-problems-with-tls
330-CanIUseAWebBrowserAsAnOpenvpnClient
331-DoesOpenvpnSupportIpsecOrPptp
332-CanOpenvpnTunnelOverATcpConnection
333-WhyChooseTLSAsOpenvpnsUnderlyingAuthenticationAndKeyNegotiationProtocol
334-WhyMyOpenVPNTunnelDoesNot
GSoC2026_ideas
GSoC_howtopropose
HOWTO
Home
MTU and Fragments
Meetings
2010
2010-04-22
2010-04-29
2010-05-06
2010-05-13
2010-05-20
2010-05-27
2010-06-03
2010-06-10
2010-06-17
2010-07-01
2010-07-08
2010-07-15
2010-07-22
2010-07-29
2010-08-05
2010-08-12
2010-08-19
2010-08-26
2010-09-02
2010-09-16
2010-09-23
2010-10-14
2010-10-21
2010-11-18
2010-11-25
2010-12-02
2010-12-09
2010-12-16
2011
2011-01-06
2011-01-13
2011-02-10
2011-02-17
2011-03-24
2011-04-07
2011-04-14
2011-04-28
2011-05-19
2011-06-09
2011-06-16
2011-06-30
2011-07-07
2011-07-14
2011-07-21
2011-07-26
2011-07-28
2011-08-03
2011-08-11
2011-08-18
2011-08-25
2011-09-01
2011-09-08
2011-09-14
2011-09-15
2011-09-29
2011-10-06
2011-10-20
2011-11-24
2011-12-08
2012
2012-01-19
2012-03-15
2012-04-26
2012-05-31
2012-06-21
2012-11-29
2013
2013-04-18
2013-04-25
2013-05-09
2013-05-23
2013-06-20
2013-07-11
2013-08-08
2013-08-22
2013-11-16
2013-ProductNamespaces
2014
2014-01-09
2014-04-24
2014-10-23
2014-11-24
2014-12-22
2014-12-29
2015
2015-01-12
2015-01-19
2015-02-02
2015-03-30
2015-04-13
2015-04-27
2015-05-04
2015-05-18
2015-06-01
2015-06-15
2015-06-29
2015-07-13
2015-07-27
2015-08-10
2015-08-24
2015-09-07
2015-09-21
2015-10-05
2015-10-26
2015-11-09
2015-11-23
2015-12-14
2015-12-28
2016
2016-01-11
2016-02-01
2016-05-09
2016-05-30
2016-06-13
2016-08-15
2016-08-22
2016-10-10
2016-11-07
2016-11-14
2016-11-23
2016-11-30
2016-12-07
2016-12-14
2016-12-21
2017
2017-01-04
2017-02-22
2017-03-15
2017-09-12
2017-09-20
2017-09-27
2017-10-04
2017-10-11
2017-10-18
2017-10-25
2017-11-01
2017-12-06
2017-12-13
2017-12-20
2018
2018-01-03
2018-01-10
2018-01-17
2018-01-24
2018-01-31
2018-02-21
2018-03-07
2018-03-14
2018-03-21
2018-04-04
2018-04-18
2018-05-02
2018-05-23
2018-05-30
2018-06-06
2018-06-13
2018-07-04
2018-09-19
2018-09-26
2018-10-03
2018-10-10
2018-10-24
2018-11-14
2018-11-28
2018-12-05
2018-12-12
2018-12-19
2019
2019-02-13
2019-03-12
2019-03-20
2019-03-27
2019-04-03
2019-04-11
2019-04-17
2019-04-25
2019-05-01
2019-05-09
2019-05-15
2019-05-23
2019-05-29
2019-06-06
2019-06-12
2019-06-20
2019-06-26
2019-07-04
2019-07-10
2019-07-18
2019-07-24
2019-08-07
2019-08-15
2019-08-21
2019-08-29
2019-09-04
2019-09-12
2019-09-18
2019-09-26
2019-10-02
2019-10-10
2019-10-16
2019-10-24
2019-10-30
2019-11-21
2019-11-27
2019-12-05
2019-12-11
2019-12-19
2020
2020-01-06
2020-01-08
2020-01-16
2020-01-22
2020-01-30
2020-02-05
2020-02-13
2020-02-19
2020-02-27
2020-03-04
2020-03-12
2020-03-18
2020-03-26
2020-04-01
2020-04-09
2020-04-15
2020-04-23
2020-04-29
2020-05-07
2020-05-13
2020-05-21
2020-05-27
2020-06-04
2020-06-10
2020-06-18
2020-06-24
2020-07-02
2020-07-08
2020-07-16
2020-07-22
2020-07-30
2020-08-13
2020-08-19
2020-08-27
2020-09-02
2020-09-10
2020-09-16
2020-09-24
2020-09-30
2020-10-08
2020-10-14
2020-10-22
2020-10-28
2020-11-05
2020-11-11
2020-11-19
2020-11-25
2020-12-03
2020-12-09
2020-12-17
2021
2021-01-06
2021-01-20
2021-01-27
2021-02-03
2021-02-10
2021-02-17
2021-02-24
2021-03-03
2021-03-10
2021-03-24
2021-03-31
2021-04-07
2021-04-14
2021-04-21
2021-04-28
2021-05-05
2021-05-12
2021-05-19
2021-05-26
2021-06-02
2021-06-09
2021-06-16
2021-06-23
2021-06-30
2021-07-07
2021-07-14
2021-07-21
2021-07-28
2021-08-04
2021-08-11
2021-08-18
2021-08-25
2021-09-01
2021-09-08
2021-09-15
2021-09-22
2021-09-29
2021-10-13
2021-10-20
2021-10-27
2021-11-10
2021-11-17
2021-11-24
2021-12-01
2021-12-08
2021-12-15
2021-12-22
2022
2022-01-05
2022-01-12
2022-01-19
2022-01-26
2022-02-02
2022-02-09
2022-02-16
2022-02-23
2022-03-02
2022-03-09
2022-03-16
2022-03-23
2022-03-30
2022-04-06
2022-04-13
2022-04-20
2022-04-27
2022-05-04
2022-05-11
2022-05-18
2022-05-25
2022-06-01
2022-06-08
2022-06-15
2022-06-22
2022-06-29
2022-07-06
2022-07-13
2022-07-20
2022-07-27
2022-08-03
2022-08-10
2022-08-17
2022-08-24
2022-08-31
2022-09-07
2022-09-14
2022-09-21
2022-09-28
2022-10-05
2022-10-12
2022-10-19
2022-10-26
2022-11-09
2022-11-23
2022-11-30
2022-12-07
2022-12-14
2022-12-21
2022-12-28
2023
2023-01-11
2023-01-18
2023-01-25
2023-02-01
2023-02-08
2023-02-15
2023-02-22
2023-03-01
2023-03-08
2023-03-15
2023-03-22
2023-03-29
2023-04-12
2023-04-19
2023-04-26
2023-05-03
2023-05-10
2023-05-17
2023-05-24
2023-05-31
2023-06-07
2023-06-14
2023-06-21
2023-06-28
2023-07-05
2023-07-12
2023-07-19
2023-07-26
2023-08-02
2023-08-09
2023-08-16
2023-08-23
2023-08-30
2023-09-06
2023-09-13
2023-09-20
2023-09-27
2023-10-11
2023-10-18
2023-10-25
2023-11-01
2023-11-08
2023-11-15
2023-11-22
2023-11-29
2023-12-06
2023-12-13
2023-12-20
2024
2024-01-10
2024-01-17
2024-01-24
2024-01-31
2024-02-07
2024-02-14
2024-02-21
2024-02-28
2024-03-06
2024-03-13
2024-03-20
2024-03-27
2024-04-03
2024-04-10
2024-04-17
2024-04-24
2024-05-01
2024-05-08
2024-05-15
2024-05-22
2024-05-29
2024-06-05
2024-06-19
2024-06-26
2024-07-03
2024-07-10
2024-07-17
2024-07-24
2024-07-31
2024-08-07
2024-08-14
2024-08-21
2024-08-28
2024-09-04
2024-09-11
2024-09-18
2024-09-25
2024-10-02
2024-10-09
2024-10-16
2024-10-23
2024-10-30
2024-11-06
2024-11-13
2024-11-20
2024-11-27
2024-12-04
2024-12-11
2025
2025-01-08
2025-01-15
2025-01-22
2025-01-29
2025-02-05
2025-02-19
2025-02-26
2025-03-05
2025-03-12
2025-04-16
2025-04-23
2025-05-07
2025-05-14
2025-05-21
2025-05-28
2025-06-04
2025-06-11
2025-06-18
2025-07-02
2025-07-09
2025-07-16
2025-07-23
2025-07-30
2025-08-06
2025-08-13
2025-08-27
2025-09-03
2025-09-10
2025-09-17
2025-09-24
2025-10-01
2025-10-08
2025-10-15
2025-10-22
2025-11-05
2025-11-12
2025-11-19
2025-11-26
2025-12-03
2025-12-10
2025-12-17
2026
2026-01-14
2026-01-21
2026-02-04
2026-02-11
2026-02-18
2026-02-25
2026-03-04
2026-04-01
2026-04-15
2026-04-22
2026-04-29
2026-05-06
2026-05-27
2026-06-03
2026-06-10
2026-06-17
2026-06-24
2026-07-01
2026-07-08
2026-07-15
2026-07-22
2026-07-29
2026-08-05
2026-08-12
2026-08-19
2026-08-26
2026-09-02
2026-09-09
2026-09-16
2026-09-23
2026-09-30
2026-10-07
2026-10-14
2026-10-21
2026-11-04
Meetups
2013-Munich
2014-Munich
2015-Delft
2016-Helsinki
2017-Karlsruhe
2018-Lviv
2019-Trento
2021-Munich
2022-Delft
2023-Orihuela
2024-Karlsruhe
2025-Naples
2026-Paderborn
2027-Zagreb
PQCryptoOpenVPN
Pages
AvoidRoutingConflicts
BridgingAndRouting
BridgingOverview
BuildingOnWindows
BuildingOpenVPN-GUI
BuildingTapWindows6
CertificateRevocationListExpired
CipherNegotiation
CodeRepositories
Compression
Concepts-Addressing
Concepts-Authentication
Concepts-PolicyRouting-Linux
Deprecated options
Easy Windows Guide
EasyRSA
EasyRSA3-OpenVPN-Howto
Fix for site-to-site OpenVPN on ubiquiti unifi routers
Getting help
Getting started with OpenVPN
Getting tap-windows
GettingEasyRsa
Hardening
HowPacketsFlow
How_does_PKI_work
IPv6
IgnoreRedirectGateway
Managing TAP-Windows drivers
NatHack
NonEnglishResources
OpenVPN software repos
OpenVPN-GUI-New
OpenVPN25_Windows_MSI_Unattended_Install
OpenVPN3Linux
OpenVPNBridging
OpenVPNInteractiveservice
Openvpn-systemd-use
OpenvpnBooks
OpenvpnLogosAndIcons
OverviewOfOpenvpn
PluginOverview
Pushing-DNS-to-clients
RelatedProjects
RoutedLans
Supported versions
Systemd
Tap rename script
TapRenameScript
Tapctl
Topology
TrafficObfuscation
UnprivilegedUser
Using-mbedtls
Using_Certificate_Chains
WikiCredentials
WindowsBrowsing
easy_rsa_fr
easyrsa-upgrade
reset-network-tcp-ip-stack
ReleaseHistory
Security Announcements
CCSInjection
CVE-2016-10229
CVE-2017-12166
CVE-2018-7544
CVE-2020-15078
CVE-2021-3547
CVE-2021-3606
CVE-2022-0547
CVE-2023-46849
CVE-2023-46850
CVE-2023-6247
CVE-2023-7235
CVE-2024-1305
CVE-2024-13454
CVE-2024-24974
CVE-2024-27459
CVE-2024-27903
CVE-2024-28882
CVE-2024-4877
CVE-2024-5198
CVE-2024-5594
CVE-2025-10680
CVE-2025-12106
CVE-2025-13086
CVE-2025-13751
CVE-2025-15497
CVE-2025-2704
CVE-2025-3908
CVE-2025-50054
CVE-2026-105390
CVE-2026-106017
CVE-2026-115402
CVE-2026-11604
CVE-2026-11771
CVE-2026-12932
CVE-2026-12996
CVE-2026-13117
CVE-2026-13122
CVE-2026-13379
CVE-2026-13698
CVE-2026-2738
CVE-2026-35058
CVE-2026-40215
CVE-2026-63649
CVE-2026-63650
CVE-2026-78043
CVE-2026-78221
CVE-2026-81738
CVE-2026-81830
CVE-2026-82312
CVE-2026-82325
CVE-2026-84226
CVE-2026-84256
CVE-2026-84471
CVE-2026-84732
CVE-2026-84790
CVE-2026-88964
DUHKattack
NSISBug1125
QuarkslabAndCryptographyEngineerAudits
SWEET32
SecurityAnnouncement-97597e732b
SecurityAnnouncement-FREAK
SecurityAnnouncement-f375aa67cc
SecurityOverview
SecurityVulnerabilities
TLSTripleHandshakeVulnerabilityAndOpenVPN
TapWindows6BufferOverflowVulnerability
TunnelCrack
UnquotedServicePathIn24WindowsInstallers
VORACLE
VulnerabilitiesFixedInOpenSSL1_0_1i
VulnerabilitiesFixedInOpenSSL1_0_1j
VulnerabilitiesFixedInOpenSSL1_0_1m
VulnerabilitiesFixedInOpenVPN243
heartbleed
An Otter Wiki
ReleaseHistory
86e098
Commit
86e098
2026-11-05 15:11:51
flichtenheld
: 2.7.9
ReleaseHistory.md
..
@@ 1,3 1,179 @@
+
## OpenVPN 2.7.9 -- Released 5 November 2026
+
The OpenVPN community project team is proud to release OpenVPN 2.7.9. This is a bugfix release fixing
+
several security issues.
+
+
For details see [Changes.md](https://github.com/OpenVPN/openvpn/blob/v2.7.9/Changes.md)
+
+
### Security fixes
+
+
- win32: restrict loading plugin dependencies (DLLs) to plugin, app
+
and system directories.
+
+
- win32: run openvpn.exe from the interactive service at "high integrity
+
level", that is, process memory of openvpn.exe and all its threads are
+
protected from tampering. Signals/Events are still permitted.
+
+
- win32: openvpnserv: strictly filter user-defined environment variables
+
before passing to openvpn.exe ([CVE-2026-121720](https://www.cve.org/CVERecord?id=CVE-2026-121720))
+
+
(Issue found by Heiko Hund, tracked in
+
Github: OpenVPN/openvpn-private-issues#186)
+
+
- win32: openvpnserv: make validation of openvpn command line more robust
+
to invalid-quoting attacks ([CVE-2026-115342](https://www.cve.org/CVERecord?id=CVE-2026-115342))
+
+
- win32: openvpn.exe: change parsing of commandline to use the same
+
function that the interactive service uses (`CommandLineToArgvW()`)
+
([CVE-2026-115342](https://www.cve.org/CVERecord?id=CVE-2026-115342))
+
+
(Issues found by Heiko Hund, tracked in
+
Github: OpenVPN/openvpn-private-issues#184)
+
+
### Bug fixes
+
+
- Username/Password parsing from `--auth-user-pass` file (or inline)
+
left parts of overlong usernames in the password field. Fix.
+
(GH [OpenVPN/openvpn#1140](https://github.com/OpenVPN/openvpn/issues/1140))
+
+
- win32: openvpnserv: fix memory leak for security descriptors
+
+
- win32: repair logging of errors in Windows `tun_read_queue()`
+
+
- win32: avoid accessing uninitialized structure data if `GetInterfaceInfo()`
+
or `GetPerAdapterInfo()` fail
+
+
- win32: openvpnserv: avoid double `free()` if `GetTokenInformation()` fails
+
+
- win32: openvpnserv: avoid potential format-string issue on registry defaults
+
+
- win32: openvpnserv: repair error reporting on `RegGetValueA()` failures
+
inside `GetItfDnsServersV4()`
+
+
- win32: openvpnserv: fix `inet_ntop()` return code check in
+
`GetItfDnsServersV6()`, making it ignore DHCP-provided DNS servers.
+
+
- route: repair printing of ROUTE_GATEWAY/ROUTE6_GATEWAY info - the actual gateway handling was correct, just not
+
printing anything anymore.
+
+
- config: check_file_access: fix `--extra-certs` access check
+
+
- win32: tun: free gc arena in `windows_set_mtu()` (mem leak in error path)
+
+
- route: close socket in Haiku `get_default_gateway()` (FD leak)
+
+
- win32: openvpnserv: skip conversion of empty domain names
+
+
- win32: cmake+mingw: don't prefix the event message DLL with lib
+
(it was building 'libopenvpnservmsg.dll' instead of 'openvpnservmsg.dll')
+
+
- win32: pass the buffer size in bytes to `get_openvpn_reg_value()`
+
+
- PUSH_UPDATE server: free temporary options after sending message (memleak)
+
+
+
### User-visible Changes
+
+
- Linux: set `IFF_BACKPRESSURE` on Linux (if available)
+
+
This helps the kernel tun/tap to apply proper prioritization (qdisc etc)
+
to incoming packets if userspace is slow to process them. Without the
+
flag, the kernel would just drop everything.
+
+
- Management/GUI: Optionally indicate username in `>PASSWORD '<UP_TYPE>'` prompts
+
+
If an openvpn config has a username set but no password, and OpenVPN
+
wants to prompt for the password, the GUI could not see the username
+
today and prompted for both. With this change, OpenVPN sends a hint to
+
the management interface, so a GUI can pre-fill the username field, or
+
only prompt for the password.
+
+
This is only done if the management interface client announces
+
support for it (compatibility level >= 6).
+
+
### Code improvements/general hardening
+
+
- crypto_epoch: wipe key material with `secure_memzero()`
+
+
- do not look up "none" cipher in OpenSSL - this avoids leaving an "error"
+
on the OpenSSL error stack, which can then later lead to spurious
+
SSL error prints on CRL loading.
+
+
- Make CRL reload EOF detection independent of stale error queue entries
+
(GH: [OpenVPN/openvpn#1104](https://github.com/OpenVPN/openvpn/issues/1104))
+
+
- tls_crypt: fix handling of "cipher final output" (which is always empty
+
on today's SSL libraries, so no impact today, but might not be in future)
+
+
- crypto: `ASSERT()` opt before first use in `openvpn_decrypt_aead()`
+
+
- auth_token: wipe the server secret key after loading it
+
+
- port-share: do not write journal file through symlinks or hardlinks
+
(and also document how port-share directory should be set up)
+
(GH [OpenVPN/openvpn#1124](https://github.com/OpenVPN/openvpn/issues/1124))
+
+
- dns-updown: close first pipe if creating the second one fails
+
(avoid leaking file descriptors on error)
+
+
- init: check parameters for NULL before strlen() in send_cc_message
+
(not triggerable today)
+
+
- crypto_openssl: Clear PEM decoded key data before freeing it
+
+
- Increase the buffer size for alert-message in management user-pass query
+
(so long usernames can be hinted towards the GUI)
+
+
- win32: openvpnserv: validate message size for dns/nrpt/wins handlers
+
(GH: [OpenVPN/openvpn#1129](https://github.com/OpenVPN/openvpn/issues/1129))
+
+
- win32: plugin: detect too long plugin paths on Windows
+
+
- win32: openvpnserv: null-terminate iface.name in address and route handlers
+
(GH: [OpenVPN/openvpn#1130](https://github.com/OpenVPN/openvpn/issues/1130))
+
+
+
### Documentation improvements
+
+
- Fix numbering of examples in management-notes.txt
+
+
- Document "notify" as auth pending method
+
+
- Convert Changes.rst to Markdown (2.7)
+
+
+
### Long-term code maintenance
+
+
- OpenSSL 4.1 compatibility: use `ASN1_STRING_get_length()` now, providing
+
a fallback to `ASN1_STRING_length()` for older SSL libraries.
+
+
- Linux: sitnl: use `RTM_SETLINK` for updating existing interfaces
+
(instead of `RTM_NEWLINK`)
+
+
- gen-sample-keys.sh: Don't apply server extensions to CSRs
+
+
- review all usages of `strncpy()`
+
(change to `strncpynt()`, `memcpy()`, etc. where appropriate)
+
+
+
+
Windows MSI changes since 2.7.8-I001:
+
* Update included openvpn-gui to 11.67
+
* Support username indication in communication with OpenVPN (see above). Prefills the username in prompt to user.
+
(GH: [OpenVPN/openvpn-gui#719](https://github.com/OpenVPN/openvpn/issues/719))
+
* Fix tray tooltip and popup positioning on non-primary monitors
+
(GH: [OpenVPN/openvpn-gui#836](https://github.com/OpenVPN/openvpn/issues/836))
+
* Improve Swedish translation
+
(GH: [OpenVPN/openvpn-gui#828](https://github.com/OpenVPN/openvpn/pull/828))
+
+
| | | |
+
|-|-|-|
+
|**Windows 64-bit MSI installer**|[GnuPG Signature](https://swupdate.openvpn.org/community/releases/OpenVPN-2.7.9-I001-amd64.msi.asc)|[OpenVPN-2.7.9-I001-amd64.msi](https://swupdate.openvpn.org/community/releases/OpenVPN-2.7.9-I001-amd64.msi)|
+
|**Windows ARM64 MSI installer**|[GnuPG Signature](https://swupdate.openvpn.org/community/releases/OpenVPN-2.7.9-I001-arm64.msi.asc)|[OpenVPN-2.7.9-I001-arm64.msi](https://swupdate.openvpn.org/community/releases/OpenVPN-2.7.9-I001-arm64.msi)|
+
|**Windows 32-bit MSI installer**|[GnuPG Signature](https://swupdate.openvpn.org/community/releases/OpenVPN-2.7.9-I001-x86.msi.asc)|[OpenVPN-2.7.9-I001-x86.msi](https://swupdate.openvpn.org/community/releases/OpenVPN-2.7.9-I001-x86.msi)|
+
|**Source archive file**|[GnuPG Signature](https://swupdate.openvpn.org/community/releases/openvpn-2.7.9.tar.gz.asc)|[openvpn-2.7.9.tar.gz](https://swupdate.openvpn.org/community/releases/openvpn-2.7.9.tar.gz)|
+
+
For Community-maintained packages for Linux distributions see [OpenVPN Software Repositories](/Pages/OpenVPN%20software%20repos).
+
## OpenVPN 2.7.8 -- Released 7 October 2026
The OpenVPN community project team is proud to release OpenVPN 2.7.8. This is a bugfix release fixing
several security issues.
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9