Forráskód Böngészése

dispatcher: Not possible to deactivate probing of destination by reload

If ds_probing_mode is set to 3, flag in the dispatcher entry needs to include 8
for probing to happen.

Changing a destination to not include this anymore while the destination do
not respond to OPTIONS will cause the probing flag to be re-added because of the
delayed response. A restart will fix it.

We need to check against the probing flag in the CB function to determine if
we should continue probing this destination. If probing is deativated while
waiting for a reply, we should abort.
Morten Tryfoss 3 éve
szülő
commit
429fea8069
1 módosított fájl, 5 hozzáadás és 0 törlés
  1. 5 0
      src/modules/dispatcher/dispatch.c

+ 5 - 0
src/modules/dispatcher/dispatch.c

@@ -3529,6 +3529,11 @@ static void ds_options_callback(
 		}
 	}
 
+	/* Check if in the meantime someone disabled probing of the target through RPC, MI or reload */
+	if(ds_probing_mode == DS_PROBE_ONLYFLAGGED && !(ds_get_state(group, &uri) & DS_PROBING_DST)) {
+		return;
+	}
+
 	/* ps->code contains the result-code of the request.
 	 *
 	 * We accept both a "200 OK" or the configured reply as a valid response */