]> www.infradead.org Git - users/dwmw2/openconnect.git/commit
GlobalProtect: Add priority-rule set support
authorJan-Michael Brummer <jan-michael.brummer1@volkswagen.de>
Thu, 28 Sep 2023 17:46:32 +0000 (19:46 +0200)
committerJan-Michael Brummer <jan-michael.brummer1@volkswagen.de>
Tue, 20 Feb 2024 07:23:04 +0000 (08:23 +0100)
commite39b2cc485c2cf6af399796ab5599ee5cb4b213f
treec4edbb5908a411d7cf56ce4eebbb1167fb197391
parentea7c528169583bf45b7ad42b74adaf7004cae4cc
GlobalProtect: Add priority-rule set support

Starting from version 8.0, PAN GlobalProtect portal servers are able to send
a priority rule list for each gateway.  Per
https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA10g000000ClSsCAK,
the gateways can be prioritized by geographic region.

The gateways should then be presented to the user in order of geographic
priority, rather than just in their order of appearance in
policy/gateways/external/list (from the portal config XML).

How does the client know which geographic region it is in?

1. The client itself may have some way to figure out which region it is
   connecting from (e.g. geolocation, not implemented yet for OpenConnect).
2. The client may have an option to explicitly specifiy the desired region
   (not implemented yet in OpenConnect).
3. The *server* tells the client which region it thinks the client is
   connecting from, in the portal *prelogin* response, and the client
   follows that (implemented here).

Fixes: https://gitlab.com/openconnect/openconnect/-/issues/663
[DRL fixed a small mistake in qsort usage, and tweaked code structure,
comments, and log messages.]

Signed-off-by: Jan-Michael Brummer <jan-michael.brummer1@volkswagen.de>
Signed-off-by: Daniel Lenski <dlenski@gmail.com>
auth-globalprotect.c
openconnect.h