<div dir="ltr">Hello everyone,<div><br></div><div>I am having problems using Squid with ICAP (C-ICAP and clamd). The thing that is bugging me is I had this was working fine and now it cannot connect to the local ICAP service.</div><div><br></div><div>Below is the debug section 93,3 to see what was going on when I restarted Squid:</div><div><br></div><div><div>2017/11/02 12:06:34.546 kid1| 93,3| ServiceRep.cc(712) detach: detaching ICAP service: icap://<a href="http://127.0.0.1:1344/virus_scan">127.0.0.1:1344/virus_scan</a> [down,!opt]</div><div>2017/11/02 12:06:34.546 kid1| 93,3| ServiceRep.cc(712) detach: detaching ICAP service: icap://<a href="http://127.0.0.1:1344/srv_content_filtering">127.0.0.1:1344/srv_content_filtering</a> [down,!opt]</div><div>2017/11/02 12:06:34.548 kid1| 93,3| Service.cc(19) Service: creating adaptation service service_cfi_resp</div><div>2017/11/02 12:06:34.548 kid1| 93,3| Service.cc(19) Service: creating adaptation service service_avi_resp</div><div>2017/11/02 12:06:34.548 kid1| 93,3| Config.cc(195) finalize: Created 2 adaptation services</div><div>2017/11/02 12:06:34.548 kid1| Adaptation support is on</div><div>2017/11/02 12:06:34.548 kid1| 93,2| Config.cc(211) FinalizeEach: Initialized 2 message adaptation services</div><div>2017/11/02 12:06:34.548 kid1| 93,2| Config.cc(211) FinalizeEach: Initialized 1 message adaptation service groups</div><div>2017/11/02 12:06:34.548 kid1| 93,2| Config.cc(211) FinalizeEach: Initialized 3 message adaptation access rules</div><div>2017/11/02 12:06:51.415 kid1| 93,3| AccessCheck.cc(196) callBack: NULL</div><div>2017/11/02 12:06:51.415 kid1| 93,3| client_side_request.cc(1074) noteAdaptationAclCheckDone: 0x10dd728 adaptationAclCheckDone called</div><div>2017/11/02 12:06:51.454 kid1| 93,3| AccessCheck.cc(196) callBack: 0xd45b80*2</div><div>2017/11/02 12:06:51.454 kid1| 93,3| Xaction.cc(60) Xaction: Adaptation::Icap::ModXact constructed, this=0x124c4b8 [icapxjob146537]</div><div>2017/11/02 12:06:51.454 kid1| 93,3| Xaction.cc(60) Xaction: Adaptation::Icap::OptXact constructed, this=0x120c818 [icapxjob146539]</div><div>2017/11/02 12:06:51.454 kid1| 93,3| ServiceRep.cc(122) getConnection: got connection:</div><div>2017/11/02 12:06:51.454 kid1| 93,3| Xaction.cc(145) openConnection: Adaptation::Icap::OptXact opens connection to <a href="http://127.0.0.1:1344">127.0.0.1:1344</a></div><div>2017/11/02 12:06:51.454 kid1| 93,3| AsyncCall.cc(26) AsyncCall: The AsyncCall Adaptation::Icap::Xaction::noteCommConnected constructed, this=0x10a1ed0 [call901778]</div><div>2017/11/02 12:06:51.454 kid1| 93,3| AsyncCall.cc(93) ScheduleCall: ConnOpener.cc(137) will call Adaptation::Icap::Xaction::noteCommConnected(local=[::] remote=<a href="http://127.0.0.1:1344">127.0.0.1:1344</a> flags=1, errno=101, flag=-8, data=0x120c818) [call901778]</div><div>2017/11/02 12:06:51.454 kid1| 93,3| AsyncCallQueue.cc(55) fireNext: entering Adaptation::Icap::Xaction::noteCommConnected(local=[::] remote=<a href="http://127.0.0.1:1344">127.0.0.1:1344</a> flags=1, errno=101, flag=-8, data=0x120c818)</div><div>2017/11/02 12:06:51.454 kid1| 93,3| AsyncCall.cc(38) make: make call Adaptation::Icap::Xaction::noteCommConnected [call901778]</div><div>2017/11/02 12:06:51.454 kid1| 93,3| AsyncJob.cc(123) callStart: Adaptation::Icap::OptXact status in: [/ job146539]</div><div>2017/11/02 12:06:51.454 kid1| 93,2| Xaction.cc(272) dieOnConnectionFailure: Adaptation::Icap::OptXact failed to connect to icap://<a href="http://127.0.0.1:1344/virus_scan">127.0.0.1:1344/virus_scan</a></div><div>2017/11/02 12:06:51.454 kid1| 93,3| ServiceRep.cc(161) noteConnectionFailed: Connection failed: failure</div><div>2017/11/02 12:06:51.454 kid1| 93,3| ../../../src/base/AsyncJobCalls.h(177) dial: Adaptation::Icap::Xaction::noteCommConnected threw exception: cannot connect to the ICAP service</div><div>2017/11/02 12:06:51.454 kid1| 93,3| Xaction.cc(71) ~Xaction: Adaptation::Icap::OptXact destructed, this=0x120c818 [icapxjob146539]</div><div>2017/11/02 12:06:51.454 kid1| 93,3| AsyncCallQueue.cc(57) fireNext: leaving Adaptation::Icap::Xaction::noteCommConnected(local=[::] remote=<a href="http://127.0.0.1:1344">127.0.0.1:1344</a> flags=1, errno=101, flag=-8, data=0x120c818)</div><div>2017/11/02 12:06:51.454 kid1| 93,3| Launcher.cc(95) noteXactAbort: cannot retry or repeat a failed transaction</div><div>2017/11/02 12:06:51.454 kid1| 93,3| ServiceRep.cc(534) noteAdaptationAnswer: failed to fetch options [down,!opt,fail1]</div><div>2017/11/02 12:06:51.454 kid1| optional ICAP service is down after an options fetch failure: icap://<a href="http://127.0.0.1:1344/virus_scan">127.0.0.1:1344/virus_scan</a> [down,!opt]</div></div><div><br></div><div>Looks like it load my rules and then tries to connect and fails. I read almost every post I could find but do not seem to have the same problem.</div><div><br></div><div>I can use the c-icap-client and test each service. It looks fine.</div><div><br></div><div><div>># ./c-icap-client -s virus_scan</div><div>ICAP server:localhost, ip:127.0.0.1, port:1344</div><div><br></div><div>OPTIONS:</div><div>        Allow 204: Yes</div><div>        Preview: 1024</div><div>        Keep alive: Yes</div><div><br></div><div>ICAP HEADERS:</div><div>        ICAP/1.0 200 OK</div><div>        Methods: RESPMOD, REQMOD</div><div>        Service: C-ICAP/0.4.3 server - Antivirus service</div><div>        ISTag: CI0001-J8gT2j9ufFux2fjZGxq1qAAA</div><div>        Transfer-Preview: *</div><div>        Options-TTL: 3600</div><div>        Date: Thu, 02 Nov 2017 16:17:15 GMT</div><div>        Preview: 1024</div><div>        Allow: 204</div><div>        Encapsulated: null-body=0</div><div><br></div><div>># ./c-icap-client -s virus_scan -f /bin/ls</div><div>ICAP server:localhost, ip:127.0.0.1, port:1344</div><div><br></div><div>No modification needed (Allow 204 response)</div></div><div><br></div><div>I can post some of my squid.conf file below for icap options:</div><div><br></div><div><div>icap_enable on</div></div><div><div>adaptation_send_client_ip on</div><div>icap_persistent_connections on</div><div>icap_service_failure_limit -1</div><div><br></div><div>icap_send_client_ip on</div><div>icap_send_client_username on</div><div>icap_client_username_header X-Authenticated-User</div><div>icap_preview_enable on</div><div>icap_preview_size 1024</div><div><br></div><div><br></div><div>icap_service service_cfi_resp respmod_precache icap://<a href="http://127.0.0.1:1344/srv_content_filtering">127.0.0.1:1344/srv_content_filtering</a> routing=on bypass=on</div><div><br></div><div>icap_service service_avi_resp respmod_precache icap://<a href="http://127.0.0.1:1344/virus_scan">127.0.0.1:1344/virus_scan</a> routing=on bypass=on</div><div><br></div></div><div><div>adaptation_service_chain check_services service_avi_resp service_cfi_resp</div><div><br></div><div>adaptation_access check_services allow Antivirus_users</div><div><br></div><div>adaptation_access service_avi_resp deny all</div><div>adaptation_access service_cfi_resp deny all</div></div><div><br></div><div><br></div><div><br></div><div>If you need more information I can provide it. I am stuck at why this does not work anymore.</div><div><br></div><div>Note: this is basic linux box running Squid 3.5.22 with C-ICAP 0.4.3 and ClamAV 0.99.2 also i am not using caching with squid.</div><div><br></div><div>Thanks</div></div>