mirror of
https://github.com/ElementsProject/lightning.git
synced 2025-03-26 20:30:59 +01:00
lightningd: plugins_any_in_state and plugins_all_in_state helpers.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
parent
ee401e62a2
commit
7cda24509b
2 changed files with 32 additions and 0 deletions
|
@ -973,6 +973,28 @@ bool plugin_parse_getmanifest_response(const char *buffer,
|
|||
return true;
|
||||
}
|
||||
|
||||
bool plugins_any_in_state(const struct plugins *plugins, enum plugin_state state)
|
||||
{
|
||||
const struct plugin *p;
|
||||
|
||||
list_for_each(&plugins->plugins, p, list) {
|
||||
if (p->plugin_state == state)
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool plugins_all_in_state(const struct plugins *plugins, enum plugin_state state)
|
||||
{
|
||||
const struct plugin *p;
|
||||
|
||||
list_for_each(&plugins->plugins, p, list) {
|
||||
if (p->plugin_state != state)
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Callback for the plugin_manifest request.
|
||||
*/
|
||||
|
|
|
@ -208,6 +208,16 @@ struct plugin *find_plugin_for_command(struct lightningd *ld,
|
|||
*/
|
||||
void plugins_config(struct plugins *plugins);
|
||||
|
||||
/**
|
||||
* Are any plugins at this state still?
|
||||
*/
|
||||
bool plugins_any_in_state(const struct plugins *plugins, enum plugin_state state);
|
||||
|
||||
/**
|
||||
* Are all plugins at this state?
|
||||
*/
|
||||
bool plugins_all_in_state(const struct plugins *plugins, enum plugin_state state);
|
||||
|
||||
/**
|
||||
* Read and treat (populate options, methods, ...) the `getmanifest` response.
|
||||
*/
|
||||
|
|
Loading…
Add table
Reference in a new issue