Opened 8 months ago

Last modified 5 months ago

#1395 assigned Bug / Defect

Windows Installer always sets Option to start openvpn-gui on system start

Reported by: stefan.beckers Owned by: stipa
Priority: minor Milestone: release 2.5.4
Component: Installation Version: OpenVPN 2.5.1 (Community Ed)
Severity: Not set (select this one, unless your'e a OpenVPN developer) Keywords:
Cc: tct, Selva Nair, stipa

Description

Most of our Users do not use openvpn-GUI, so they all uncheck the option, which makes openvpn-GUI to start on Login, in Preferences or openvpn-GUI.

The update to 2.5.1 (CE) did reset all options for every user.

Desired behaviour:

on Update, respect the existing user setting and do not re-apply the default again.

Change History (8)

comment:1 Changed 8 months ago by tct

Cc: tct added

comment:2 Changed 8 months ago by Gert Döring

Cc: Selva Nair added
Owner: set to Samuli Seppänen
Status: newassigned

comment:3 Changed 8 months ago by Gert Döring

Version: OpenVPN 2.5.0 (Community Ed)OpenVPN 2.5.1 (Community Ed)

comment:4 Changed 5 months ago by Gert Döring

Milestone: release 2.5.3

comment:5 Changed 5 months ago by Gert Döring

Cc: stipa added

comment:6 Changed 5 months ago by Samuli Seppänen

Owner: changed from Samuli Seppänen to stipa

I checked commit history of openvpn-gui and could not find anything that could cause this. Howeverm in openvpn-build there is a commit that may be the culprit:

commit 4ab0482a814092cdb4a65a426a962eb7da9721ee
Author: Lev Stipakov <lev@openvpn.net>
Date:   Fri Aug 21 10:42:29 2020 +0300

    msi: fix driver reinstall prompt on logon
    
    We use ActiveSetup to run msi repair (msiexec /fu) on user logon,
    which creates HKCU entries, including "run on logon" - related key.
    
    Unfortunately this doesn't really work with wintun and tap-windows6 MSMs
    and ActiveSetup triggers driver reinstallation.
    
    Instead of running msiexec repair, directly create/delete registry key
    for "run on logon" feature.
    
    Signed-off-by: Lev Stipakov <lev@openvpn.net>

--- snip ---

+    var runOnLogon = Session.FeatureRequestState("OpenVPN.GUI.OnLogon") == 3;
+
     // Save the data for deferred action.
     Session.Property("PublishActiveSetup") =
         (Session.EvaluateCondition("REMOVE=\"ALL\"") == 1/*msiEvaluateConditionTrue*/ ?
             ["uninstall", productCode] :
-            ["install", productCode, Session.Property("ProductName"), version]
+            ["install", productCode, Session.Property("ProductName"), version, runOnLogon, Session.Property("BINDIR")]
         ).join("\t");
 
     return 1/*msiDoActionStatusSuccess*/;

--- snip ---

Lev: what do you think? Is this the cause for the changed behavior?

comment:7 Changed 5 months ago by stipa

@stefan.beckers Could you clarify what are you doing exactly?

What I did:

  • Installed 2.5.2 with "Launch on User Logon" off in installer dialog, restarted Windows and openvpn-gui didn't start, as expected.
  • Installed 2.5.1, checked off "Launch on User Logon" in installer dialog. Installed 2.5.2 on top - checked that "Launch on User Logon" is checked off. Restarted and openvpn-gui didn't start.
  • Installed 2.5.1 and then unchecked "Launch on User Logon" in openvpn-gui preferences. Installed 2.5.2 and unchecked "Launch on User Logon" in installer dialog. Restarted and openvpn-gui didn't start.

comment:8 Changed 5 months ago by Gert Döring

Milestone: release 2.5.3release 2.5.4

Moving the ticket to milestone 2.5.4 - if we have to fix anything, it won't go to 2.5.3 in any case (release today).

But it would be necessary to be able to better understand the issue first...

Note: See TracTickets for help on using tickets.