drbd-utils: update for stx 5.0
[pti/rtp.git] / meta-starlingx / meta-stx-integ / recipes-support / drbd / drbd-utils / 0004-drbdadm-ipaddr-change.patch
diff --git a/meta-starlingx/meta-stx-integ/recipes-support/drbd/drbd-utils/0004-drbdadm-ipaddr-change.patch b/meta-starlingx/meta-stx-integ/recipes-support/drbd/drbd-utils/0004-drbdadm-ipaddr-change.patch
deleted file mode 100644 (file)
index a2bb2a2..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-Index: git/user/drbdadm_adjust.c
-===================================================================
---- git.orig/user/drbdadm_adjust.c
-+++ git/user/drbdadm_adjust.c
-@@ -157,6 +157,7 @@ static int opts_equal(struct context_def
- static int addr_equal(struct d_resource* conf, struct d_resource* running)
- {
-       int equal;
-+    char *peer_addr, *peer_af, *peer_port;
-       if (conf->peer == NULL && running->peer == NULL) return 1;
-       if (running->peer == NULL) return 0;
-@@ -165,16 +166,29 @@ static int addr_equal(struct d_resource*
-               !strcmp(conf->me->port,           running->me->port) &&
-               !strcmp(conf->me->address_family, running->me->address_family);
--      if(conf->me->proxy)
--              equal = equal &&
--                      !strcmp(conf->me->proxy->inside_addr, running->peer->address) &&
--                      !strcmp(conf->me->proxy->inside_port, running->peer->port) &&
--                      !strcmp(conf->me->proxy->inside_af,   running->peer->address_family);
--      else
--              equal = equal && conf->peer &&
--                      !strcmp(conf->peer->address,        running->peer->address) &&
--                      !strcmp(conf->peer->port,           running->peer->port) &&
--                      !strcmp(conf->peer->address_family, running->peer->address_family);
-+       if(conf->me->proxy) {
-+               peer_addr = conf->me->proxy->inside_addr;
-+               peer_port = conf->me->proxy->inside_port;
-+               peer_af = conf->me->proxy->inside_af;
-+       } else {
-+               peer_addr = conf->peer->address;
-+               peer_port = conf->peer->port;
-+               peer_af = conf->peer->address_family;
-+       }
-+
-+       equal = equal && conf->peer &&
-+               !strcmp(peer_addr, running->peer->address) &&
-+               !strcmp(peer_port, running->peer->port) &&
-+               !strcmp(peer_af, running->peer->address_family);
-+
-+       if (verbose > 2)
-+               fprintf(stderr, "Network addresses differ:\n"
-+                       "\trunning: %s:%s:%s -- %s:%s:%s\n"
-+                       "\t config: %s:%s:%s -- %s:%s:%s\n",
-+                       running->me->address_family, running->me->address, running->me->port,
-+                       running->peer->address_family, running->peer->address, running->peer->port,
-+                       conf->me->address_family, conf->me->address, conf->me->port,
-+                       peer_af, peer_addr, peer_port);
-       return equal;
- }
-@@ -690,8 +704,7 @@ int adm_adjust(struct cfg_ctx *ctx)
-       if (ctx->res->me->proxy && can_do_proxy)
-               do_connect |= proxy_reconf(ctx, running);
--      if (do_connect && running)
--              do_disconnect = running->net_options != NULL;
-+    do_disconnect = do_connect && running && (running->peer || running->net_options);
-       if (do_res_options)
-               schedule_deferred_cmd(adm_set_default_res_options, ctx, "resource-options", CFG_RESOURCE);
-@@ -716,8 +729,12 @@ int adm_adjust(struct cfg_ctx *ctx)
-       }
-       if (do_connect) {
--              if (do_disconnect && ctx->res->peer)
--                      schedule_deferred_cmd(adm_disconnect, ctx, "disconnect", CFG_NET_PREREQ);
-+        /* "disconnect" specifying the end-point addresses currently in-use,
-+         * before "connect"ing with the addresses currently in-config-file. */
-+        if (do_disconnect) {
-+                struct cfg_ctx tmp_ctx = { .res = running, .vol = vol, };
-+                schedule_deferred_cmd(adm_disconnect, &tmp_ctx, "disconnect", CFG_NET_PREREQ);
-+        }
-               schedule_deferred_cmd(adm_connect, ctx, "connect", CFG_NET);
-               do_net_options = 0;
-       }
-Index: git/user/legacy/drbdadm_adjust.c
-===================================================================
---- git.orig/user/legacy/drbdadm_adjust.c
-+++ git/user/legacy/drbdadm_adjust.c
-@@ -133,6 +133,7 @@ static int opts_equal(struct d_option* c
- static int addr_equal(struct d_resource* conf, struct d_resource* running)
- {
-       int equal;
-+    char *peer_addr, *peer_af, *peer_port;
-       if (conf->peer == NULL && running->peer == NULL) return 1;
-       if (running->peer == NULL) return 0;
-@@ -141,18 +142,31 @@ static int addr_equal(struct d_resource*
-               !strcmp(conf->me->port,           running->me->port) &&
-               !strcmp(conf->me->address_family, running->me->address_family);
--      if(conf->me->proxy)
--              equal = equal &&
--                      !strcmp(conf->me->proxy->inside_addr, running->peer->address) &&
--                      !strcmp(conf->me->proxy->inside_port, running->peer->port) &&
--                      !strcmp(conf->me->proxy->inside_af,   running->peer->address_family);
--      else
--              equal = equal && conf->peer &&
--                      !strcmp(conf->peer->address,        running->peer->address) &&
--                      !strcmp(conf->peer->port,           running->peer->port) &&
--                      !strcmp(conf->peer->address_family, running->peer->address_family);
-+    if(conf->me->proxy) {
-+            peer_addr = conf->me->proxy->inside_addr;
-+            peer_port = conf->me->proxy->inside_port;
-+            peer_af = conf->me->proxy->inside_af;
-+    } else {
-+            peer_addr = conf->peer->address;
-+            peer_port = conf->peer->port;
-+            peer_af = conf->peer->address_family;
-+    }
-+
-+    equal = equal && conf->peer &&
-+            !strcmp(peer_addr, running->peer->address) &&
-+            !strcmp(peer_port, running->peer->port) &&
-+            !strcmp(peer_af, running->peer->address_family);
-+
-+    if (verbose > 2)
-+            fprintf(stderr, "Network addresses differ:\n"
-+                    "\trunning: %s:%s:%s -- %s:%s:%s\n"
-+                    "\t config: %s:%s:%s -- %s:%s:%s\n",
-+                    running->me->address_family, running->me->address, running->me->port,
-+                    running->peer->address_family, running->peer->address, running->peer->port,
-+                    conf->me->address_family, conf->me->address, conf->me->port,
-+                    peer_af, peer_addr, peer_port);
--      return equal;
-+    return equal;
- }
- static int proto_equal(struct d_resource* conf, struct d_resource* running)