[Ffmpeg-cvslog] r8819 - trunk/ffserver.c

alex subversion
Thu Apr 26 00:23:38 CEST 2007


Author: alex
Date: Thu Apr 26 00:23:38 2007
New Revision: 8819

Log:
use resolve_host in acl handlign too, simplificates the code

Modified:
   trunk/ffserver.c

Modified: trunk/ffserver.c
==============================================================================
--- trunk/ffserver.c	(original)
+++ trunk/ffserver.c	Thu Apr 26 00:23:38 2007
@@ -1120,7 +1120,7 @@ static int validate_acl(FFStream *stream
     enum IPAddressAction last_action = IP_DENY;
     IPAddressACL *acl;
     struct in_addr *src = &c->from_addr.sin_addr;
-    unsigned long src_addr = ntohl(src->s_addr);
+    unsigned long src_addr = src->s_addr;
 
     for (acl = stream->acl; acl; acl = acl->next) {
         if (src_addr >= acl->first.s_addr && src_addr <= acl->last.s_addr) {
@@ -4268,7 +4268,6 @@ static int parse_ffconfig(const char *fi
             audio_id = CODEC_ID_NONE;
         } else if (!strcasecmp(cmd, "ACL")) {
             IPAddressACL acl;
-            struct hostent *he;
 
             get_arg(arg, sizeof(arg), &p);
             if (strcasecmp(arg, "allow") == 0) {
@@ -4282,29 +4281,22 @@ static int parse_ffconfig(const char *fi
             }
 
             get_arg(arg, sizeof(arg), &p);
-
-            he = gethostbyname(arg);
-            if (!he) {
+	    
+            if (resolve_host(&acl.first, arg) != 0) {
                 fprintf(stderr, "%s:%d: ACL refers to invalid host or ip address '%s'\n",
                         filename, line_num, arg);
                 errors++;
             } else {
-                /* Only take the first */
-                acl.first.s_addr = ntohl(((struct in_addr *) he->h_addr_list[0])->s_addr);
                 acl.last = acl.first;
             }
 
             get_arg(arg, sizeof(arg), &p);
 
             if (arg[0]) {
-                he = gethostbyname(arg);
-                if (!he) {
+                if (resolve_host(&acl.last, arg) != 0) {
                     fprintf(stderr, "%s:%d: ACL refers to invalid host or ip address '%s'\n",
                             filename, line_num, arg);
                     errors++;
-                } else {
-                    /* Only take the first */
-                    acl.last.s_addr = ntohl(((struct in_addr *) he->h_addr_list[0])->s_addr);
                 }
             }
 




More information about the ffmpeg-cvslog mailing list