openconnect config file import cannot handle "(null)" values
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
network-manager-openconnect (Ubuntu) |
Fix Released
|
Low
|
Unassigned |
Bug Description
Prerequisites:
1. network-manager is installed
2. network-
3. Store the following text file:
% cat uni-graz-vpn.config
[openconnect]
Description=UniGraz
Host=univpn.
CACert=(null)
Proxy=
CSDEnable=0
CSDWrapper=
UserCertificate
PrivateKey=(null)
FSID=0
StokenSource=
StokenString=
Action (in the Network Manager GUI):
1. "Edit Connections..."
2. "Add"
3. "Import a saved VPN configuration"
4. Select the file uni-graz-vpn.config
5. Among the "VPN connections"
6. Choose "UniGraz"
7. A HTTPS request to univpn.uni-graz.at is taking place
Expected behavior:
8. A prompt for username and password is shown
Actual behavior:
8. An error message appears: "Failed to open CA file '/(null)': Error while reading file." and "Failed to open HTTPS connection to univpn.uni-graz.at"
Reason:
This package is uncapable of converting the export file content "(null)" into an internal NULL value. Instead it is assumed as string "(null)" and a slash is prepended for the filepath: "/(null)". The text file was created by using network manager's export configuration utility. If you replace "(null)" with "" in the configuration file, it will work properly. Very annoying for non-technical users. Please fix this.
Debug information:
% lsb_release -rd
Description: Linux Mint 18 Sarah
Release: 18
% apt-cache policy network-
network-
Installed: 1.2.0-0ubuntu0.
Candidate: 1.2.0-0ubuntu0.
Version table:
*** 1.2.0-0ubuntu0.
500 http://
100 /var/lib/
1.0.2-1build1 500
500 http://
Changed in network-manager-openconnect (Ubuntu): | |
importance: | Undecided → Critical |
importance: | Critical → Low |
status: | Confirmed → Fix Committed |
Arguably the problem here is that you have, literally, "(null)" as the string in the config file. IF you have a file with that name, you should be permitted to use that.
This is a bug in the *EXPORT* not the import. We shouldn't (ideally) special-case that filename on import. Although we might now have to, purely for compatibility.