Feature request: allow `verify-x509-name` in `<connection>` blocks
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 14.6k
- Forks
- 3.4k
- PR merge metrics
- No merged PRs in 30d
Description
According to the docs (as of this writing):
The following OpenVPN options may be used inside of a block:
bind, connect-retry, connect-retry-max, connect-timeout, explicit-exit-notify, float, fragment, http-proxy, http-proxy-option, link-mtu, local, lport, mssfix, mtu-disc, nobind, port, proto, remote, rport, socks-proxy, tun-mtu and tun-mtu-extra.
verify-x509-name is notably absent. x509 verification can be remote specific. A good example of this is NordVPN configs which often contain remotes such as:
remote xxx.xxx.xxx.xxx yyy
verify-x509-name CN=zzz.nordvpn.com
Where xxx.xxx.xxx.xxx is the IP address, yyy is the port, and zzz is the expected host name. It would be nice to be able to do something like the following:
# ...
<connection>
remote 123.123.123.123 1234
verify-x509-name CN=co123.nordvpn.com
<connection>
<connection>
remote 234.234.234.234 2345
verify-x509-name CN=co234.nordvpn.com
<connection>
remote-random
# ...
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No source file or test is named. Start by tracing how verify-x509-name and options are parsed, then compare the existing connection-block option list with the documented behavior. Done means each connection can carry its own verify-x509-name value while preserving the existing global behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- networking, security
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100