From 3bbd75a1f6ea572962286f396df117a79028d3f1 Mon Sep 17 00:00:00 2001 From: Keith Moyer Date: Tue, 2 Dec 2008 12:41:57 -0600 Subject: [PATCH] Allow domain name as admin access restriction --- release/src/router/rc/firewall.c | 7 +++++-- release/src/router/www/admin-access.asp | 9 ++++++--- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/release/src/router/rc/firewall.c b/release/src/router/rc/firewall.c index bff6d4503e..248fbba147 100644 --- a/release/src/router/rc/firewall.c +++ b/release/src/router/rc/firewall.c @@ -114,8 +114,11 @@ static void get_src(const char *nv, char *src) { char *p; - if (((p = nvram_get(nv)) != NULL) && (*p) && (strlen(p) < 32)) { - sprintf(src, "-%s %s", strchr(p, '-') ? "m iprange --src-range" : "s", p); + if (((p=nvram_get(nv)) != NULL) && (*p) && (strlen(p) < 32)) { + if (sscanf(p,"%*d.%*d.%*d.%*d-%*d.%*d.%*d.%*d") == 8) + sprintf(src, "-m iprange --src-range %s", p); + else + sprintf(src, "-s %s", p); } else { *src = 0; diff --git a/release/src/router/www/admin-access.asp b/release/src/router/www/admin-access.asp index 0707867ed0..0145be9763 100644 --- a/release/src/router/www/admin-access.asp +++ b/release/src/router/www/admin-access.asp @@ -110,7 +110,10 @@ function verifyFields(focused, quiet) } a = E('_rmgt_sip'); - if ((a.value.length) && (!v_iptip(a))) return 0; + if ((a.value.length) && (!v_iptip(a,true)) && (!v_domain(a,true))) { + ferror.set(a, 'Invalid restriction.', quiet); + ok = 0; + } a = E('_set_password_1'); b = E('_set_password_2'); @@ -248,8 +251,8 @@ W('' } + { title: 'Access restricted to:', name: 'rmgt_sip', type: 'text', maxlen: 32, size: 25, value: nvram.rmgt_sip, + suffix: ' (optional; ex: "1.1.1.1", "1.1.1.0/24", "1.1.1.1-2.2.2.2", "me.example.com")' } ]); -- 2.11.4.GIT