From the c-icap homepage:
c-icap is an implementation of an ICAP server. It can be used with HTTP
proxies that support the ICAP protocol to implement content adaptation and
filtering services.
Most of the commercial HTTP proxies must support the ICAP protocol. The open
source Squid 3.x proxy server supports it.
Major features:
basic C API for developing custom content adaptation and filtering services
plugins interface
LDAP integration
simple ICAP client API
Currently the following services have been implemented for the c-icap server:
Web antivirus service, using the clamav open-source antivirus engine
basic URL filtering service
===> The following configuration options are available for c-icap-0.6.5,2:
BDB=off: Berkeley DB support
IPV6=on: IPv6 protocol support
LARGE_FILES=off: Enable large files support
LDAP=off: LDAP protocol support
MEMCACHE=off: Enable memcached
PERL=off: Perl scripting language support
POSIXSEM=off: Use POSIX Semaphores instead of SYSV IPC
===> Use 'make config' to modify these settings
Reason:
The c-icap server version is moving from branch 5.X to 6.X.
An in-place upgrade may require some changes in your current
configuration.
For installation instructions please refer :
https://sourceforge.net/p/c-icap/wiki/configcicap
https://sourceforge.net/p/c-icap/wiki
www/c-icap: update to 0.6.4
Changelog:
https://sourceforge.net/p/c-icap/mailman/c-icap-users/?viewmonth=202507
The c-icap-0.6.4 changes:
- Fix memory leak inside ci_mem_inflate API function
- Fix small memory leak inside ci_client_library_release
- Fix to honor the configured KeepAliveTimeout
- Other minor fixes
www/c-icap: update to 0.6.3
Switch c-icap server from branch 5.X to 6.X
Full changelog:
0.6.2 changelog:
- link c-icap server binaries with the math library
- Add new records to c-icap.magic, which are required for virus
scan service.
0.6.1 changelog:
- Internal web server for use with services
- Improved statistics and statistics API
- Support histograms creation from statistic values
- The pthread inter-process locking scheme
- The new lmdb_tables module, to provide support for lmdb based
(Only the first 15 lines of the commit message are shown above )
www/c-icap: update to 0.5.11
Major changes:
* Fixes to compile and run with c-icap-0.6.x releases
* Other minor fixes.
Reorder and format Makefile to make linters happy
www/c-icap: Fix invalid integer conversion with llvm15+
Fix invalid pointer conversion with llvm15+. This issue
has been corrected previously by asking the compile to ignore
the errors using CFLAGS -Wno-error=int-conversion.
This flag is now removed and the errors properly fixed.
Also fix the some of the paths in the default configuration
to match the FreeBSD HIER.
PR: 271810
Reported by: fluffy
Mk/**ldap.mk: Convert USE_LDAP to USES=ldap
Convert the USE_LDAP=yes to USES=ldap and adds the following features:
- Adds the argument USES=ldap:server to add openldap2{4|5|6}-server as
RUN_DEPENDS
- Adds the argument USES=ldap<version> and replaces WANT_OPENLDAP_VER
- Adds OPENLDAP versions in bsd.default-versions.mk
- Adds USE_OPENLDAP/WANT_OPENLDAP_VER in Mk/bsd.sanity.mk
- Changes consumers to use the features
Reviewed by: delphij
Approved by: portmgr
Differential Revision: https://reviews.freebsd.org/D38233
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
www: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
*
* <hvo.pm@xs4all.nl>
* Aaron Dalton <aaron@FreeBSD.org>
* Aaron Dalton <aaron@daltons.ca>
* Aaron LI <aly@aaronly.me>
* Aaron Zauner <az_mail@gmx.at>
* Abel Chow <achow@transoft.net>
* Adam Weinberger <adamw@FreeBSD.org>
* Ade Lovett <ade@FreeBSD.org>
* Adrian Steinmann <ast@marabu.ch>
* Akinori MUSHA aka knu <knu@idaemons.org>
(Only the first 15 lines of the commit message are shown above )
www/c-icap: Update to 0.5.10
Major changes:
0.5.9
* github issue #18: Possible segmentation fault or at least memory leaks when
the *_header acls are used
* Minor leaks while c-icap server shutdowns
* Implement the following new command/handler types:
- CI_CMD_CHILD_CLEANUP
- CI_CMD_POST_CONFIG
- CI_CMD_MONITOR_START
- CI_CMD_MONITOR_ONDEMAN
0.5.10
* Bug fix: Commands scheduled with the ci_command_schedule[on] API function
may not executed. This bug was introduced with the c-icap-0.5.9 release
Full changelogs:
https://sourceforge.net/p/c-icap/news/2021/09/the-c-icap-059-is-released/https://sourceforge.net/p/c-icap/news/2021/10/the-c-icap-0510-is-released/
www/c-icap: Upgrade to 0.5.7
Major changes:
- Fix brotli performance
- Fix various memory leaks
- c-icap-stretch utility: Fix HTTP response status line
- c-icap-stretch: send always an HTTP/1.1 request
- Update accepted flags for tls-options option of TlsPort cfg parameter
- ICAP client: support SSL connections to hostnames that contain IP addresses
- Bug fix: False accepting connection errors
www/c-icap: update to 0.5.6
Changelog:
* Possible buffer overflow if an ipv6 address is used with TlsPort
* Possible buffer overflow while building memcached key
* Not correctly initialized array, can cause undefined behavior to
c-icap-stretch utility
* Bug 116: The CI_CONNECTION_CONNECTED ci_connection_t flag is not set properly
* Bug 115: Fix incorrect prototype for ci_client_get_server_options_nonblocking
* c-icap may crash while parsing wrong formated ICAP request line
* Fix many issues reported by clang analyzer, which may result to c-icap
crashes or malfunction
* Using port with memcached server hostname, may result to c-icap crash
* Bug fix: Numeric as group/user id in Group/User cfg parameter does not work
* Many other fixes
PR: 242794
Submitted by: Franco Fichtner <franco@opnsense.org>
Upgrade c-icap to 0.5.5
- Update c-icap to 0.5.5
- Move USES to a better place and silence portlint
- Remove 'ListenAddress 127.0.0.1' parameter from sample c-icap.conf since it
doesn't work. Instead, replace the change to 'Port 127.0.0.1:1344'. More
references about this problem at https://redmine.pfsense.org/issues/8832#note-10
- Regenerate patches with 'make makepatch'
c-icap-0.5.5 changes
- c-icap may crash with a SIGBUS while using mmap to map files to memory.
- Fix multiple brotli decoding bugs
- c-icap-client does not send the ";ieof" preview termination sequence when
sends zero sized files
PR: 231377
Submitted by: garga
Upgrade www/c-icap from 0.4.4 to 0.5.3
Since I'm here take maintenership of this port
Major changes for 0.5.2:
Bug fix: c-icap crashes when converting ci_simple_file_t to a memory object
Document the forceUnload=off option for Service/Module configuration parameter
ci_headers_value* functions should remove spaces at the beginning of the
returned value
Major changes for 0.5.1 :
TLS/SSL support. This feature sponsored by Ergon Informatik AG.
A non-blocking ICAP client API. This feature sponsored by Ergon Informatik AG.
Allow 204 response on preview handler even if the ICAP client does not support
preview.
New API functions
www/c-icap{-modules}: 0.4.2 -> 0.4.3
c-icap-0.4.3 changes
- ci_membuf_write: do not warn user about writting after eof, if
not actualy someone try to write
- Man pages spelling errors
- Fix ModulesDir and ServicesDir default locations for some architectures
- Crashes for modules if null argument passed to ci_list_first,
ci_list_head and ci_list_tail macros
- Fix allow204 outside preview responses
- Use poll instead of select for polling network sockets and pipes
- Fix core dumps inside client_parse_icap_header()
c-icap-modules-0.4.3 changes
- Fix content_filtering service config and template file permissions
- Bug fixes in srv_content_filtering body data structures
- Bug fix: The second argument of srv_content_filtering.Action never accepted
www/c-icap: add ListenAddress directive to conf
- include ListenAddress directive and set it to 127.0.0.1 in c-icap.conf
PR: 208374
Submitted by: Marko Cupac <marko.cupac@mimar.rs>
Berkeley DB cleanup, remove versions 4.0 ... 4.7.
- Mk/bsd.database.mk rewrite, new default to db5.
- db6 is eligible by default only if installed on the system.
- Bump PORTREVISION of all ports that directly depend on BerkeleyDB or
where USE_BDB is found in the port's directory
- Patch a few ports such that they will pick up or work with newer
versions.
- Add UPDATING entry
- Drive-by format fix for pks
- Drop BerkeleyDB option from mail/popular for now, requires more work.
- Exp-run logs linked from the PR below.
- Ports that do not build (IGNORE, BROKEN, etc.) have pro-forma changes
for new Berkeley DB, but are untested.
NOTE: please read UPDATING and the Wiki page before proceeding!
Announcement: http://lists.freebsd.org/pipermail/freebsd-ports-announce/2014-August/000090.html
Wiki reference: https://wiki.freebsd.org/Ports/BerkeleyDBCleanup
PR: 192690
Approved by: portmgr (implicit, PORTREVISION bump on unstaged ports)
net/openldap24-*:
- Convert to USES=libtool and bump dependent ports
- Avoid USE_AUTOTOOLS
- Don't use PTHREAD_LIBS
- Use MAKE_CMD
databases/glom:
- Drop :keepla
- Add INSTALL_TARGET=install-strip
databases/libgda4* databases/libgda5*:
- Convert to USES=libtool and bump dependent ports
- USES=tar:xz
- Use INSTALL_TARGET=install-strip
- Use @sample
(Only the first 15 lines of the commit message are shown above )
Fix installation of ports that rely on cp -n for installing files. r245960
changed cp to exit with a non-zero exit code if the file exists and is not
overwritten thus causing ports to fail installing when e.g. trying to cp
.default -> .conf files that already exist.
We just ignore the error and continue, as we used to.
Reported by: jaset
Approved by: portmgr (bapt)
In the rc.d scripts, change assignments to rcvar to use the
literal name_enable wherever possible, and ${name}_enable
when it's not, to prepare for the demise of set_rcvar().
In cases where I had to hand-edit unusual instances also
modify formatting slightly to be more uniform (and in
some cases, correct). This includes adding some $FreeBSD$
tags, and most importantly moving rcvar= to right after
name= so it's clear that one is derived from the other.
- Add LDFLAGS to CONFIGURE_ENV and MAKE_ENV (as it was done with LDFLAGS)
- Fix all ports that add {CPP,LD}FLAGS to *_ENV to modify flags instead
PR: 157936
Submitted by: myself
Exp-runs by: pav
Approved by: pav
Convert LDCONFIG_DIRS to USE_LDCONFIG.
PR: based on ports/146365
Submitted by: Alex Kozlov <spam at rm-rf.kiev.ua>
Approved by: maintainers timeout (two weeks)
-Repocopy devel/libtool15 -> libtool22 and libltdl15 -> libltdl22.
-Update libtool and libltdl to 2.2.6a.
-Remove devel/libtool15 and devel/libltdl15.
-Fix ports build with libtool22/libltdl22.
-Bump ports that depend on libltdl22 due to shared library version change.
-Explain what to do update in the UPDATING.
It has been tested with GNOME2, XFCE4, KDE3, KDE4 and other many wm/desktop
and applications in the runtime.
With help: marcus and kwm
Pointyhat-exp: a few times by pav
Tested by: pgollucci, "Romain Tartière" <romain@blogreen.org>, and
a few MarcusCom CVS users. Also, I might have missed a few.
Repocopy by: marcus
Approved by: portmgr
Fix a few "bad example" problems in the rc.d scripts that have been
propogated by copy and paste.
1. Primarily the "empty variable" default assignment, which is mostly
${name}_flags="", but fix a few others as well.
2. Where they are not already documented, add the existence of the _flags
(or other deleted empties) option to the comments, and in some cases add
comments from scratch.
3. Replace things that look like:
prefix=%%PREFIX%%
command=${prefix}/sbin/foo
to just use %%PREFIX%%. In many cases the $prefix variable is only used
once, and in some cases it is not used at all.
4. In a few cases remove ${name}_flags from command_args
5. Remove a long-stale comment about putting the port's rc.d script in
/etc/rc.d (which is no longer necessary).
No PORTREVISION bumps because all of these changes are noops.
- Update security/clamav to 0.94 [1] and fix a remote DoS [2]
- Chase libclamav version bump on all dependant ports
- Bump necessary PORTREVISIONS
- Fix some BROKEN messages from ports that were already broken with clamav-0.93
- Mark security/klamav as BROKEN since it doesn't build with clamav-0.94
PR: ports/127122 [1], ports/127310 [2]
Submitted by: Gary Palmer <freebsd-gnats@in-addr.com> [1], delphij [2]
Approved by: portmgr (pav)
Update CONFIGURE_ARGS for how we pass CONFIGURE_TARGET to configure script.
Specifically, newer autoconf (> 2.13) has different semantic of the
configure target. In short, one should use --build=CONFIGURE_TARGET
instead of CONFIGURE_TARGET directly. Otherwise, you will get a warning
and the old semantic may be removed in later autoconf releases.
To workaround this issue, many ports hack the CONFIGURE_TARGET variable
so that it contains the ``--build='' prefix.
To solve this issue, under the fact that some ports still have
configure script generated by the old autoconf, we use runtime detection
in the do-configure target so that the proper argument can be used.
Changes to Mk/*:
- Add runtime detection magic in bsd.port.mk
(Only the first 15 lines of the commit message are shown above )
- Chase clamav library to version 4
- Bump PORTREVISION
Following ports are marked as BROKEN since they don't build with new clamav
0.93:
www/c-icap
mail/claws-mail-clamav
www/gurlchecker
www/havp
security/klamav
devel/p5-Mail-ClamAV
devel/py-clamav
www/squidclam
This clamav version needed to be updated without wait other ports fixes
because it fixes important vulnerabilities.
- Update security/clamav to 0.92
- Add a new OPTION (RAR) because unrar code is optional to fix a license
issue
- Some cosmetic changes
- Chase library version bump and bump PORTREVISION of all dependant ports
Approved by: portmgr (pav)
Security: CVE-2007-6335, CVE-2007-6336, CVE-2007-6337
- Update clamav to 0.90.1
- Use -lthr to build clamav since it has problems with libpthread
- Bump PORTREVISION of dependant ports, libclamav version was bumped
- Fix clamcour to build with clamav-0.90.x using patch sent by maintainer
- Fixed serious bug in utf8 web pages recognition causing c-icap to enters an
endless loop
- Fixed typo in pkg-install
- Added to Makefile LOG_DIR, RUN_DIR and TMP_DIR variables
PR: ports/101296
Submitted by: Elisey Savateev <b3k at mail.ru> (maintainer)
c-icap is an implementation of an ICAP server. It can be used with HTTP proxies
that support the ICAP protocol such as the Shweby or Squid proxy server.
c-icap allows the addition of modules, which can extend its functionality and
services. For instance, such modules can be loggers, authenticators and
authentication methods or access controlers.
WWW: http://www.chtsanti.net/c-icap
PR: ports/92760
Submitted by: Elisey O. Savateev <b3k@mail.ru>