~mamarley/openconnect/+git/gitlab-main:sudo

Last commit made on 2023-04-11
Get this branch:
git clone -b sudo https://git.launchpad.net/~mamarley/openconnect/+git/gitlab-main

Branch merges

Branch information

Recent commits

6431215... by dwmw2

Ad --sudo argument to allow running authentication unprivileged

Actually I'm having second thoughts about this; there are multiple better
ways to do it. Most importantly, just precreating the tun device and then
using sudo for the vpnc-script, running all of openconnect unprivileged.

This hack works, but it's a bunch of work to make it *right*. We can't
just exec `openconnect -C $COOKIE` because that exposes the cookie to
ps on the command line, so we'd need to do something more complex and
feed it to stdin. And we'd *also* need to pass through a bunch more
arguments (like --vpnc-script and anything else that affects the
connecting process).

It's also fairly trivial to do this approach in a shell script using
first `openconnect --authenticate` and then `openconnect --cookie-on-stdin`
without having to write C code for it.

Signed-off-by: David Woodhouse <email address hidden>

40b970f... by dwmw2

Bump default queue length to 32

Some users are reporting that transfer speeds with the default queue
length of 10 packets are poor. Increasing to 32 shouldn't be causing
too much bufferbloat, and appears to resolve the issue.

There's more to be understood here; OpenConnect is in the middle of
multiple other queues for the inbound and outbound traffic paths, and
we should never be starving any of them. And for a bunch of protocols
OpenConnect isn't even honouring the queue length. For *incoming* as
a VPN client, that's probably a bad idea anyway; if packets have made
it all the way across the Internet and the wet piece of string that
connects our client, then we should make sure we accept them and don't
let them build up in the UDP socket receive buffers to the point where
the kernel drops them.

My previous testing of this was in 2008, and was focused on performance
across a local 1GbE connection, which will behave differently.

This change will enable vhost-net by default. That does also help, but
isn't the only factor. And it doesn't help much until the queue length
is higher anyway.

Signed-off-by: David Woodhouse <email address hidden>

69c8af9... by dwmw2

Update translations from GNOME

Signed-off-by: David Woodhouse <email address hidden>

d9ff2fe... by dwmw2

Fix Solaris build

Signed-off-by: David Woodhouse <email address hidden>

682553e... by Dan Lenski

Fix mixed line endings

Signed-off-by: Daniel Lenski <email address hidden>

e965b82... by Dan Lenski

Bugfix Y2038 for F5 authentication timestamp

This good recent article on Y2038
(https://www.thkukuk.de/blog/Y2038_glibc_utmp_64bit) reminded me to look for
Unix-epoch integer timestamps that are <64 bits in OpenConnect.

This is the only one I found.

Signed-off-by: Daniel Lenski <email address hidden>

58797b7... by Dan Lenski

Tell Apple users not to use '-i tunX', but '-i utunX' instead.

Per discussion in https://gitlab.com/openconnect/openconnect/-/issues/18#note_953145553,
the BSD "tun" devices have been obsolete for a long time on Mac OS; "utun"
needs to be used instead on modern versions.

However, many users still find suggestions to use `--interface tunX`
floating around the web, and try them. The resulting error message from
OpenConnect is somewhat confusing:

    Cannot open '/dev/tunX': Invalid argument
    Set up tun device failed

Perhaps we could improve the logic to precisely detect whether or not the OS
wants us to use "tun" or "utun", but that would require a contribution by
someone who understands and cares about Mac OS. In the absence of that, we
can simply add a warning to Mac OS users who attempt to use "tun", telling them
that it's probably wrong.

Signed-off-by: Daniel Lenski <email address hidden>

02d7ce7... by Dan Lenski

Update docs related to vpnc-script, platform, Trojans

We've long since had "native/emulated" CSD, but we still need Windows
support.

References to vpnc, and its bundled vpnc-script, are quite obsolete.

Add a wee little plug for vpn-slice as an alternative vpnc-script (😬).

Signed-off-by: Daniel Lenski <email address hidden>

f24634c... by Dan Lenski

Small additions to changelog before release

Signed-off-by: Daniel Lenski <email address hidden>

ec4b1df... by Dan Lenski

Merge branch 'Pulse_unstupid_ESP' into 'master'

IPv6-related improvements for Pulse

See merge request openconnect/openconnect!414