Revision: 14421
Author: adrian.chadd
Date: Fri Feb 19 19:48:39 2010
Log: Begin fleshing out a new ACL type - "dstfwdip" - which will eventually match
on the destination IP being forwarded to.

The "dst" ACL match uses DNS to lookup a host->IP address list and thus
may not adequately describe exactly what IP address is being connected
to.

This new ACL type will be handed the result from the forwarding lookup -
so after peer selection and host->IP address selection.


http://code.google.com/p/lusca-cache/source/detail?r=14421

Modified:
 /branches/LUSCA_HEAD/src/acl.c
 /branches/LUSCA_HEAD/src/enums.h

=======================================
--- /branches/LUSCA_HEAD/src/acl.c      Mon Oct 26 23:58:33 2009
+++ /branches/LUSCA_HEAD/src/acl.c      Fri Feb 19 19:48:39 2010
@@ -241,6 +241,8 @@
        return ACL_EXTUSER_REGEX;
     if (!strcmp(s, "hier_code"))
        return ACL_HIER_CODE;
+    if (! strcmp(s, "dstfwdip"))
+       return ACL_DSTFWD_IP;
     return ACL_NONE;
 }

@@ -339,6 +341,8 @@
        return "ext_user_regex";
     if (type == ACL_HIER_CODE)
        return "hier_code";
+    if (type == ACL_DSTFWD_IP)
+        return "dstfwdip";
     return "ERROR";
 }

@@ -1019,6 +1023,7 @@
     case ACL_SRC_IP:
     case ACL_DST_IP:
     case ACL_MY_IP:
+    case ACL_DSTFWD_IP:
        aclParseIpList(&A->data);
        break;
     case ACL_SRC_DOMAIN:
@@ -2091,6 +2096,8 @@
     case ACL_HIER_CODE:
return aclMatchWordList(ae->data, hier_strings[checklist->request->hier.code]);
        /* NOTREACHED */
+    case ACL_DSTFWD_IP:
+       return 0;               /* XXX for now just always deny */
     case ACL_NONE:
     case ACL_ENUM_MAX:
        break;
@@ -2559,6 +2566,7 @@
        case ACL_SRC_IP:
        case ACL_DST_IP:
        case ACL_MY_IP:
+       case ACL_DSTFWD_IP:
            splay_destroy(a->data, aclFreeIpData);
            break;
 #if USE_ARP_ACL
@@ -3005,6 +3013,7 @@
     case ACL_SRC_IP:
     case ACL_DST_IP:
     case ACL_MY_IP:
+    case ACL_DSTFWD_IP:
        return aclDumpIpList(a->data);
     case ACL_SRC_DOMAIN:
     case ACL_DST_DOMAIN:
=======================================
--- /branches/LUSCA_HEAD/src/enums.h    Tue Apr 21 02:11:04 2009
+++ /branches/LUSCA_HEAD/src/enums.h    Fri Feb 19 19:48:39 2010
@@ -153,6 +153,7 @@
     ACL_EXTUSER,
     ACL_EXTUSER_REGEX,
     ACL_HIER_CODE,
+    ACL_DSTFWD_IP,
     ACL_ENUM_MAX
 } squid_acl;

--
You received this message because you are subscribed to the Google Groups 
"lusca-commit" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/lusca-commit?hl=en.

Reply via email to