diff options
author | Michael Brown | 2013-07-18 15:44:09 +0200 |
---|---|---|
committer | Michael Brown | 2013-07-19 15:25:41 +0200 |
commit | 5ffcae69c03afeab1c7b17a725376b45c91d04d9 (patch) | |
tree | 6bf9efa53f5fb94a2fa7c437205da373082d2de8 /src/include/ipxe/settings.h | |
parent | [settings] Remove default_type parameter from parse_setting_name() (diff) | |
download | ipxe-5ffcae69c03afeab1c7b17a725376b45c91d04d9.tar.gz ipxe-5ffcae69c03afeab1c7b17a725376b45c91d04d9.tar.xz ipxe-5ffcae69c03afeab1c7b17a725376b45c91d04d9.zip |
[settings] Expose parse_setting_name()
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/include/ipxe/settings.h')
-rw-r--r-- | src/include/ipxe/settings.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/include/ipxe/settings.h b/src/include/ipxe/settings.h index 6e75251c..81ee90f3 100644 --- a/src/include/ipxe/settings.h +++ b/src/include/ipxe/settings.h @@ -241,6 +241,9 @@ struct generic_settings { struct list_head list; }; +/** A child settings block locator function */ +typedef struct settings * ( *get_child_settings_t ) ( struct settings *settings, + const char *name ); extern struct settings_operations generic_settings_operations; extern int generic_settings_store ( struct settings *settings, struct setting *setting, @@ -295,10 +298,14 @@ extern int setting_cmp ( struct setting *a, struct setting *b ); extern struct settings * find_child_settings ( struct settings *parent, const char *name ); +extern struct settings * autovivify_child_settings ( struct settings *parent, + const char *name ); extern const char * settings_name ( struct settings *settings ); extern struct settings * find_settings ( const char *name ); extern struct setting * find_setting ( const char *name ); - +extern int parse_setting_name ( char *name, get_child_settings_t get_child, + struct settings **settings, + struct setting *setting ); extern int setting_name ( struct settings *settings, struct setting *setting, char *buf, size_t len ); extern int fetchf_setting ( struct settings *settings, struct setting *setting, |