WireGuard for Windows failed to start after update to v0.2.1

Jason A. Donenfeld Jason at zx2c4.com
Tue Nov 17 22:56:29 CET 2020


Hi Joshua,

On Tue, Nov 17, 2020 at 10:20 PM Joshua Sjoding
<joshua.sjoding at scjalliance.com> wrote:
>
> I think they're separate issues both related to the new version, which
> is why I opted to send in separate emails. The other email is about an
> issue first encountered on two other computers within the company.
>
> In my case I was able to get WireGuard working again. Here's what happened:
>
> 1. I manually started the WireGuard desktop app. It immediately
> prompted for elevated privileges, which is atypical. I provided it
> with administrative credentials.
> 2. The WireGuard desktop app launched, but lacked any of my configured
> tunnels and still was prompting me to upgrade. I see that there's a
> config data migration recorded in the log, so my guess is that
> WireGuard was still running the old executable and didn't know to look
> for the configuration data in the new location yet.
> 3. I told WireGuard to run the updater again and this time it went through fine.
> 4. When WireGuard came back up it had the tunnel configuration again.
> The tunnel was left in a shut off state, even though it was on prior
> to the first upgrade attempt. I switched the tunnel back on and it
> seems to be working fine now.

It's unclear to me where the timeline begins in this one. Here's my
present understanding:

1. It's a normal Tuesday at SCJ, the coffee is roasting, the pens are
clicking, when WireGuard innocently informs you that there's an update
available.

2. You click update, it downloads the installer, and runs it. After
hanging for a bit, the installer seems to run in reverse, and you're
kicked back to the WireGuard app, not-updated, except all your config
files are gone, which is weird.

3. You click update again. It succeeds, and the new WireGuard version
comes up, and your configs are all there.

4. The tunnels aren't started, so you press start, and everything
works, but there are these messages in your log, which you sent me in
the other thread.

Is that an accurate story?

If so, my current best guess is that:
- MSI stops manager, stops tunnel, installs new version, starts new
manager (thereby initiating the config migration), starts new tunnel.
- New tunnel fails to start [a]. We flipped on the MSI rollback switch
in v0.2, so that tunnel bug now causes the installer to move in
reverse [b].
- New manager stopped, old version installed, old manager started, old
tunnel started, but config has been migrated already [c], so the
tunnel doesn't come up and you can't see it.
- You press update again, stops manager, new version installed, starts manager.
- You start the tunnel service manually.

Current status based on the above is:
- [a] and [c] were fixed by
https://git.zx2c4.com/wireguard-windows/commit/?id=2edb9007c820656514a0e9b07c9f83ad86593866
and https://go-review.googlesource.com/c/sys/+/270897 .
- [c] is fixed by
https://git.zx2c4.com/wireguard-windows/commit/?id=2edb9007c820656514a0e9b07c9f83ad86593866
.
- [b] we can either fix by getting rid of rollback again, or keeping
it, and arguing that [c] is the more proper fix.

Can you confirm this corresponds?

Jason


More information about the WireGuard mailing list