diff options
| author | Michael Biebl <biebl@debian.org> | 2018-09-08 17:44:06 +0200 |
|---|---|---|
| committer | Michael Biebl <biebl@debian.org> | 2018-09-08 17:44:06 +0200 |
| commit | 8f7a3cbbdd0c0a48277c341dd3a8ec8743ae9735 (patch) | |
| tree | 4353551fcb59cc822c3cadf2f4888f70601e8fbf /src/settings/plugins/ifupdown/nms-ifupdown-interface-parser.h | |
| parent | caf1db9d6fbc056cc6c76a24574890f6c7895f3d (diff) | |
New upstream version 1.13.90 upstream/1.13.90
Diffstat (limited to 'src/settings/plugins/ifupdown/nms-ifupdown-interface-parser.h')
| -rw-r--r-- | src/settings/plugins/ifupdown/nms-ifupdown-interface-parser.h | 50 |
1 files changed, 27 insertions, 23 deletions
diff --git a/src/settings/plugins/ifupdown/nms-ifupdown-interface-parser.h b/src/settings/plugins/ifupdown/nms-ifupdown-interface-parser.h index 7e6c8e34..f367f626 100644 --- a/src/settings/plugins/ifupdown/nms-ifupdown-interface-parser.h +++ b/src/settings/plugins/ifupdown/nms-ifupdown-interface-parser.h @@ -23,33 +23,37 @@ #ifndef _INTERFACE_PARSER_H #define _INTERFACE_PARSER_H -typedef struct _if_data -{ - char *key; - char *data; - struct _if_data *next; +#include "c-list/src/c-list.h" + +typedef struct { + CList data_lst; + const char *data; + const char key[]; } if_data; -typedef struct _if_block -{ - char *type; - char *name; - if_data *info; - struct _if_block *next; +typedef struct { + CList block_lst; + CList data_lst_head; + const char *type; + const char name[]; } if_block; -void ifparser_init(const char *eni_file, int quiet); -void ifparser_destroy(void); +typedef struct { + CList block_lst_head; +} if_parser; + +if_parser *ifparser_parse (const char *eni_file, int quiet); + +void ifparser_destroy (if_parser *parser); +NM_AUTO_DEFINE_FCN0 (if_parser *, _nm_auto_ifparser, ifparser_destroy); +#define nm_auto_ifparser nm_auto(_nm_auto_ifparser) + +if_block *ifparser_getif (if_parser *parser, const char* iface); +if_block *ifparser_getfirst (if_parser *parser); +const char *ifparser_getkey (if_block* iface, const char *key); +gboolean ifparser_haskey (if_block* iface, const char *key); -if_block *ifparser_getif(const char* iface); -if_block *ifparser_getfirst(void); -const char *ifparser_getkey(if_block* iface, const char *key); -gboolean ifparser_haskey(if_block* iface, const char *key); -int ifparser_get_num_blocks(void); -int ifparser_get_num_info(if_block* iface); +guint ifparser_get_num_blocks (if_parser *parser); +guint ifparser_get_num_info (if_block* iface); -void add_block(const char *type, const char* name); -void add_data(const char *key,const char *data); -void _destroy_data(if_data *ifd); -void _destroy_block(if_block* ifb); #endif |