summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorRobert James Kaes <rjkaes@users.sourceforge.net>2002-04-22 19:33:01 +0000
committerRobert James Kaes <rjkaes@users.sourceforge.net>2002-04-22 19:33:01 +0000
commit60f61c8f0c33f6f33b40e59dba14d4448fa4fb18 (patch)
treed310d99c2ee1ca6ae4d741eac6739e78486b1e45
parentaa68eb8540a7cc0883c4906a52af1bc36ee74be8 (diff)
Added the "Bind" directive.
-rw-r--r--src/grammar.y15
-rw-r--r--src/scanner.l3
2 files changed, 14 insertions, 4 deletions
diff --git a/src/grammar.y b/src/grammar.y
index 5cf245c..c8e42f6 100644
--- a/src/grammar.y
+++ b/src/grammar.y
@@ -1,4 +1,4 @@
-/* $Id: grammar.y,v 1.8 2002-04-12 16:59:37 rjkaes Exp $
+/* $Id: grammar.y,v 1.9 2002-04-22 19:33:01 rjkaes Exp $
*
* This is the grammar for tinyproxy's configuration file. It needs to be
* in sync with scanner.l. If you know more about yacc and lex than I do
@@ -47,7 +47,7 @@ int yylex(void);
%token KW_USER KW_GROUP
%token KW_ANONYMOUS KW_FILTER KW_XTINYPROXY
%token KW_TUNNEL KW_UPSTREAM
-%token KW_CONNECTPORT
+%token KW_CONNECTPORT KW_BIND
%token KW_ALLOW KW_DENY
/* yes/no switches */
@@ -143,11 +143,20 @@ statement
log_message(LOG_WARNING, "Upstream proxy support was not compiled in.");
#endif
}
- | KW_LISTEN NUMERIC_ADDRESS { config.ipAddr = $2; }
+ | KW_LISTEN NUMERIC_ADDRESS
+ {
+ log_message(LOG_INFO, "Establishing listening socket on IP %s", $2);
+ config.ipAddr = $2;
+ }
| KW_ALLOW network_address { insert_acl($2, ACL_ALLOW); }
| KW_DENY network_address { insert_acl($2, ACL_DENY); }
| KW_LOGLEVEL loglevels { set_log_level($2); }
| KW_CONNECTPORT NUMBER { add_connect_port_allowed($2); }
+ | KW_BIND NUMERIC_ADDRESS
+ {
+ log_message(LOG_INFO, "Binding outgoing connections to %s", $2);
+ bind_address = $2;
+ }
;
loglevels
diff --git a/src/scanner.l b/src/scanner.l
index 96e8dee..0b9bf2b 100644
--- a/src/scanner.l
+++ b/src/scanner.l
@@ -1,4 +1,4 @@
-/* $Id: scanner.l,v 1.9 2002-04-12 16:59:37 rjkaes Exp $
+/* $Id: scanner.l,v 1.10 2002-04-22 19:33:01 rjkaes Exp $
*
* This builds the scanner for the tinyproxy configuration file. This
* file needs to stay in sync with grammar.y. If someone knows lex and yacc
@@ -50,6 +50,7 @@ static struct keyword keywords[] = {
{ "allow", KW_ALLOW },
{ "deny", KW_DENY },
{ "connectport", KW_CONNECTPORT },
+ { "bind", KW_BIND },
/* loglevel and the settings */
{ "loglevel", KW_LOGLEVEL },