Projects / ffproxy

ffproxy

ffproxy is a filtering HTTP/HTTPS proxy server. It is able to filter by host, URL, and header. Custom header entries can be filtered and added. It can even drop its privileges and optionally chroot() to some directory. Logging to syslog() is supported, as is using another auxiliary proxy server. An HTTP accelerator feature (acting as a front-end to an HTTP server) is included. Contacting IPv6 servers as well as binding to IPv6 is supported and allows transparent IPv6 over IPv4 browsing (and vice versa).

Tags
Licenses
Operating Systems

RSS Recent releases

  •  05 Jan 2005 08:47

Release Notes: Support for HTTPS via CONNECT method was added. GNU autoconf is now used for configuration. Portability was improved and minor code cleanups were done. Changes after 1.6-RC2 include an updated README and manpages.

  •  31 Dec 2004 11:57

Release Notes: This release uses GNU autoconf configure-style configuration. Portability has been improved (minor code cleanups and the addition of missing includes). HTTPS proxying is now supported via the CONNECT method.

  •  15 Jun 2004 06:50

Release Notes: HTTPS proxying is now supported via the CONNECT method.

  •  18 Aug 2003 05:44

Release Notes: Changes were made to allow transparent operation (see the section entitled ``Transparent Operation'' in the ffproxy(8) man page) and to allow keep-alive client-to-proxy connections. A configuration option to disable keep-alive was added. The documentation manual pages were updated accordingly.

  •  09 Aug 2003 12:27

Release Notes: IPv6 binding support was added. Support for using the program as an HTTP accelerator was added. Compiling under Sun Solaris 8 is now supported. Comments are now allowed in db/ files. Code cleanups were made. More minor changes were made.

RSS Recent comments

17 Jun 2009 22:24 florentcueto

Hi,

ffproxy doesn't support http headers which size is > 2048 bytes, causing some web sites to return http 400 errors (bad request) to your browser.

But it's easy to fix.
You have to update 2 lines of code in request.c:

line 188 : char buf[2048]; ==> char buf[4096];
line 293 : char buf[4096]; ==> char buf[8192];

and recompile with "make"

Please note this is a quick & dirty fix, but it's doing the trick !!

Florent

Screenshot

Project Spotlight

GTKWave

A wave viewer for Verilog/VHDL simulation.

Screenshot

Project Spotlight

RPL/2

A programming language for computations.