summaryrefslogtreecommitdiffstats
path: root/mmss/config.y
diff options
context:
space:
mode:
Diffstat (limited to 'mmss/config.y')
-rw-r--r--mmss/config.y11
1 files changed, 5 insertions, 6 deletions
diff --git a/mmss/config.y b/mmss/config.y
index 452e383..2b5fb72 100644
--- a/mmss/config.y
+++ b/mmss/config.y
@@ -28,8 +28,7 @@
%define api.push-pull push
%name-prefix "mmss_config_"
%locations
-%parse-param {MMSS::context_t *mmss}
-%parse-param {MMSS::config_t *conf}
+%parse-param {const std::shared_ptr<config_t> &conf}
%parse-param {const char *filename}
@@ -57,7 +56,7 @@
%code {
- void mmss_config_error(YYLTYPE *loc, context_t *mmss, config_t *conf, const char *filename, const char *s);
+ void mmss_config_error(YYLTYPE *loc, const std::shared_ptr<config_t> &conf, const char *filename, const char *s);
}
@@ -76,7 +75,7 @@ statement: TOK_NETWORK network '{' network_config '}'
;
network: TOK_STRING {
- MMSS::Config::add_network(mmss, conf, $1);
+ conf->add_network($1);
}
;
@@ -89,6 +88,6 @@ boolean: TOK_YES { $$ = true; }
%%
-void mmss_config_error(YYLTYPE *loc, context_t *mmss, config_t *conf, const char *filename, const char *s) {
- mmss->logf(LOG_ERR, "config error: %s at %s:%i:%i", s, filename, loc->first_line, loc->first_column);
+void mmss_config_error(YYLTYPE *loc, const std::shared_ptr<config_t> &conf, const char *filename, const char *s) {
+ conf->get_context()->logf(LOG_ERR, "config error: %s at %s:%i:%i", s, filename, loc->first_line, loc->first_column);
}