diff options
author | Holger Hans Peter Freyther <holger@moiji-mobile.com> | 2015-08-02 02:14:07 +0000 |
---|---|---|
committer | Holger Hans Peter Freyther <holger@moiji-mobile.com> | 2015-08-05 04:22:56 +0000 |
commit | a9e5252128d1d871739f067fe9b0ca9b9a75a6f7 (patch) | |
tree | 7f92975a8ef4883b3ca5891bb2a03582270484ca /include | |
parent | c136da587fc2fafff1f649828eae5c996c345017 (diff) |
vty: Change API to have node installation be done by int
We are mixing enums and hope that no short-enums are used. This
is leading to a lot compiler warnings generated by clang. Change
the API to work with integers.
Porting:
The go_parent_cb implementations in the applications need to be
fixed. The API change leads to a compile time warning.
Fixes:
abis_om2000_vty.c:46:2: warning: implicit conversion from enumeration type 'enum bsc_vty_node' to
different enumeration type 'enum node_type' [-Wenum-conversion]
OM2K_NODE,
^~~~~~~~~
Diffstat (limited to 'include')
-rw-r--r-- | include/osmocom/vty/command.h | 8 | ||||
-rw-r--r-- | include/osmocom/vty/vty.h | 4 |
2 files changed, 6 insertions, 6 deletions
diff --git a/include/osmocom/vty/command.h b/include/osmocom/vty/command.h index 89dc28fc..4eb519f6 100644 --- a/include/osmocom/vty/command.h +++ b/include/osmocom/vty/command.h @@ -92,7 +92,7 @@ enum node_type { * configuration function pointer . */ struct cmd_node { /*! \brief Node index */ - enum node_type node; + int node; /*! \brief Prompt character at vty interface. */ const char *prompt; @@ -334,15 +334,15 @@ struct desc { /* Prototypes. */ void install_node(struct cmd_node *, int (*)(struct vty *)); -void install_default(enum node_type); -void install_element(enum node_type, struct cmd_element *); +void install_default(int node_type); +void install_element(int node_type, struct cmd_element *); void install_element_ve(struct cmd_element *cmd); void sort_node(void); /* This is similar to install_default() but it also creates * 'exit' and 'end' commands. */ -void vty_install_default(enum node_type); +void vty_install_default(int node_type); /* Concatenates argv[shift] through argv[argc-1] into a single NUL-terminated string with a space between each element (allocated using diff --git a/include/osmocom/vty/vty.h b/include/osmocom/vty/vty.h index 1dcc2300..36843974 100644 --- a/include/osmocom/vty/vty.h +++ b/include/osmocom/vty/vty.h @@ -156,7 +156,7 @@ struct vty_app_info { /*! \brief \ref talloc context */ void *tall_ctx; /*! \brief call-back for returning to parent n ode */ - enum node_type (*go_parent_cb)(struct vty *vty); + int (*go_parent_cb)(struct vty *vty); /*! \brief call-back to determine if node is config node */ int (*is_config_node)(struct vty *vty, int node); /*! \brief Check if the config is consistent before write */ @@ -184,7 +184,7 @@ int vty_shell_serv (struct vty *); void vty_hello (struct vty *); void *vty_current_index(struct vty *); int vty_current_node(struct vty *vty); -enum node_type vty_go_parent(struct vty *vty); +int vty_go_parent(struct vty *vty); extern void *tall_vty_ctx; |