diff options
Diffstat (limited to 'config.c')
-rw-r--r-- | config.c | 18 |
1 files changed, 17 insertions, 1 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: config.c 2.7 2010/01/16 14:27:29 kls Exp $ + * $Id: config.c 2.8 2010/01/17 12:22:56 kls Exp $ */ #include "config.h" @@ -118,6 +118,11 @@ bool cSVDRPhost::Parse(const char *s) return result != 0 && (mask != 0 || addr.s_addr == 0); } +bool cSVDRPhost::IsLocalhost(void) +{ + return addr.s_addr == htonl(INADDR_LOOPBACK); +} + bool cSVDRPhost::Accepts(in_addr_t Address) { return (Address & mask) == (addr.s_addr & mask); @@ -276,6 +281,17 @@ cCommands RecordingCommands; cSVDRPhosts SVDRPhosts; +bool cSVDRPhosts::LocalhostOnly(void) +{ + cSVDRPhost *h = First(); + while (h) { + if (!h->IsLocalhost()) + return false; + h = (cSVDRPhost *)h->Next(); + } + return true; +} + bool cSVDRPhosts::Acceptable(in_addr_t Address) { cSVDRPhost *h = First(); |