[MINOR] add a generic unbind_all_listeners() primitive
Most protocols will be able to share a single unbind_all_listeners() primitive. Provide it in protocols.c.
This commit is contained in:
parent
1a64d16720
commit
3acf8c3da8
|
@ -58,6 +58,12 @@ int disable_all_listeners(struct protocol *proto);
|
||||||
*/
|
*/
|
||||||
int unbind_listener(struct listener *listener);
|
int unbind_listener(struct listener *listener);
|
||||||
|
|
||||||
|
/* This function closes all listening sockets bound to the protocol <proto>,
|
||||||
|
* and the listeners end in LI_ASSIGNED state if they were higher. It does not
|
||||||
|
* detach them from the protocol. It always returns ERR_NONE.
|
||||||
|
*/
|
||||||
|
int unbind_all_listeners(struct protocol *proto);
|
||||||
|
|
||||||
/* Delete a listener from its protocol's list of listeners. The listener's
|
/* Delete a listener from its protocol's list of listeners. The listener's
|
||||||
* state is automatically updated from LI_ASSIGNED to LI_INIT. The protocol's
|
* state is automatically updated from LI_ASSIGNED to LI_INIT. The protocol's
|
||||||
* number of listeners is updated. Note that the listener must have previously
|
* number of listeners is updated. Note that the listener must have previously
|
||||||
|
|
|
@ -100,6 +100,19 @@ int unbind_listener(struct listener *listener)
|
||||||
return ERR_NONE;
|
return ERR_NONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* This function closes all listening sockets bound to the protocol <proto>,
|
||||||
|
* and the listeners end in LI_ASSIGNED state if they were higher. It does not
|
||||||
|
* detach them from the protocol. It always returns ERR_NONE.
|
||||||
|
*/
|
||||||
|
int unbind_all_listeners(struct protocol *proto)
|
||||||
|
{
|
||||||
|
struct listener *listener;
|
||||||
|
|
||||||
|
list_for_each_entry(listener, &proto->listeners, proto_list)
|
||||||
|
unbind_listener(listener);
|
||||||
|
return ERR_NONE;
|
||||||
|
}
|
||||||
|
|
||||||
/* Delete a listener from its protocol's list of listeners. The listener's
|
/* Delete a listener from its protocol's list of listeners. The listener's
|
||||||
* state is automatically updated from LI_ASSIGNED to LI_INIT. The protocol's
|
* state is automatically updated from LI_ASSIGNED to LI_INIT. The protocol's
|
||||||
* number of listeners is updated. Note that the listener must have previously
|
* number of listeners is updated. Note that the listener must have previously
|
||||||
|
|
Loading…
Reference in New Issue