switch (tconn->pub.state) {
case FR_TRUNK_CONN_INACTIVE:
+ case FR_TRUNK_CONN_DRAINING:
trunk_connection_remove(tconn);
break;
break;
case FR_TRUNK_CONN_INACTIVE:
- case FR_TRUNK_CONN_INACTIVE_DRAINING: /* Only an external signal can trigger this transition */
/*
* Do the appropriate state transition based on
* how many requests the trunk connection is
trunk_connection_enter_active(tconn);
break;
+ /*
+ * Unsetting the active flag just moves
+ * the connection back to the normal
+ * draining state.
+ */
+ case FR_TRUNK_CONN_INACTIVE_DRAINING: /* Only an external signal can trigger this transition */
+ trunk_connection_enter_draining(tconn);
+ break;
+
default:
return;
}