void clientStoreURLRewriteStart(clientHttpRequest * http) { debug(85, 5) ("clientStoreURLRewriteStart: '%s'\n", http->uri); if (Config.Program.store_rewrite.command == NULL) { clientStoreURLRewriteDone(http, NULL); return; } if (Config.accessList.storeurl_rewrite) { http->acl_checklist = clientAclChecklistCreate(Config.accessList.storeurl_rewrite, http); aclNBCheck(http->acl_checklist, clientStoreURLRewriteAccessCheckDone, http); } else { storeurlStart(http, clientStoreURLRewriteDone, http); } }
static void peerSelectFoo(ps_state * ps) { StoreEntry *entry = ps->entry; request_t *request = ps->request; debug(44, 3) ("peerSelectFoo: '%s %s'\n", RequestMethods[request->method].str, request->host); if (ps->direct == DIRECT_UNKNOWN) { #ifdef CC_FRAMEWORK acl_access * acl = cc_get_acl_access_by_token_and_host("always_direct",request->host); if(ps->always_direct == 0 && acl) #else if (ps->always_direct == 0 && Config.accessList.AlwaysDirect) #endif { #ifdef CC_FRAMEWORK ps->acl_checklist = aclChecklistCreate( acl, request, NULL); /* ident */ #else ps->acl_checklist = aclChecklistCreate( Config.accessList.AlwaysDirect, request, NULL); /* ident */ #endif aclNBCheck(ps->acl_checklist, peerCheckAlwaysDirectDone, ps); return; } else if (ps->always_direct > 0) { ps->direct = DIRECT_YES; } #ifdef CC_FRAMEWORK else if(ps->never_direct == 0 && (acl = cc_get_acl_access_by_token_and_host("never_direct",request->host))) #else else if (ps->never_direct == 0 && Config.accessList.NeverDirect) #endif { #ifdef CC_FRAMEWORK ps->acl_checklist = aclChecklistCreate( acl, request, NULL); /* ident */ #else ps->acl_checklist = aclChecklistCreate( Config.accessList.NeverDirect, request, NULL); /* ident */ #endif aclNBCheck(ps->acl_checklist, peerCheckNeverDirectDone, ps); return; } else if (ps->never_direct > 0) { ps->direct = DIRECT_NO; } else if (request->flags.no_direct) { ps->direct = DIRECT_NO; } else if (request->flags.loopdetect) { ps->direct = DIRECT_YES; } else if (peerCheckNetdbDirect(ps)) { ps->direct = DIRECT_YES; } else { ps->direct = DIRECT_MAYBE; } debug(44, 3) ("peerSelectFoo: direct = %s\n", DirectStr[ps->direct]); }