From 6ce20e2bb6660694e995d890f2846fc26c96c8f7 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Sun, 25 Mar 2012 00:16:20 +0100 Subject: Add keypair config --- src/config.y | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/config.y') diff --git a/src/config.y b/src/config.y index 9a0d333..02a9529 100644 --- a/src/config.y +++ b/src/config.y @@ -29,6 +29,8 @@ %token TOK_PROTOCOL %token TOK_PEER %token TOK_ADDRESS +%token TOK_SECRET +%token TOK_KEY %token TOK_ADDR %token TOK_ADDR6 @@ -73,10 +75,11 @@ statement: TOK_INTERFACE interface ';' | TOK_MTU mtu ';' | TOK_MODE mode ';' | TOK_PROTOCOL protocol ';' + | TOK_SECRET secret ';' | TOK_PEER peer '{' peer_conf '}' ; -interface: TOK_STRING { conf->ifname = strdup($1); } +interface: TOK_STRING { free(conf->ifname); conf->ifname = strdup($1); } ; bind: TOK_ADDR maybe_port { @@ -116,6 +119,9 @@ protocol: maybe_string { } ; +secret: TOK_STRING { free(conf->secret); conf->secret = strdup($1); } + ; + peer: maybe_string { fastd_peer_config *current_peer = malloc(sizeof(fastd_peer_config)); current_peer->next = conf->peers; @@ -132,6 +138,7 @@ peer_conf: peer_conf peer_statement ; peer_statement: TOK_ADDRESS peer_address ';' + | TOK_KEY peer_key ';' ; peer_address: TOK_ADDR maybe_port_default { @@ -146,6 +153,10 @@ peer_address: TOK_ADDR maybe_port_default { } ; +peer_key: TOK_STRING { free(conf->peers->key); conf->peers->key = strdup($1); } + ; + + maybe_string: TOK_STRING | { $$[0] = '\0'; } ; -- cgit v1.2.3