]> git.ipfire.org Git - thirdparty/openvpn.git/commitdiff
Client-side part for server restart notification
authorLev Stipakov <lstipakov@gmail.com>
Mon, 23 Nov 2015 11:38:13 +0000 (13:38 +0200)
committerGert Doering <gert@greenie.muc.de>
Mon, 23 Nov 2015 18:00:49 +0000 (19:00 +0100)
When client receives "RESTART,N", it advances to the next remote.

Whole patch (server + client) has been merged to master and will be part
of 2.4.

Signed-off-by: Lev Stipakov <lstipakov@gmail.com>
Acked-by: Arne Schwabe <arne@rfc2549.org>
Message-Id: <1448278693-29322-1-git-send-email-lstipakov@gmail.com>
URL: http://article.gmane.org/gmane.network.openvpn.devel/10564
Signed-off-by: Gert Doering <gert@greenie.muc.de>
src/openvpn/push.c

index 11505cb01241a9f453f37eaedb6c2bcae8b2b123..e4f3984ec25408b9f435dcd7572bfd94a4d76655 100644 (file)
@@ -103,6 +103,7 @@ server_pushed_signal (struct context *c, const struct buffer *buffer, const bool
        m = BSTR (&buf);
 
       /* preserve cached passwords? */
+      /* advance to next server? */
       {
        bool purge = true;
 
@@ -113,6 +114,12 @@ server_pushed_signal (struct context *c, const struct buffer *buffer, const bool
              {
                if (m[i] == 'P')
                  purge = false;
+               else if (m[i] == 'N')
+                 {
+                   /* next server? */
+                   if (c->options.connection_list)
+                     c->options.connection_list->no_advance = false;
+                 }
              }
          }
        if (purge)