#ifndef PROJECT_H_INCLUDED
#define PROJECT_H_INCLUDED
/** Version string. */
-#define PROJECT_H_VERSION "$Id: project.h,v 1.188 2012/10/21 12:56:38 fabiankeil Exp $"
+#define PROJECT_H_VERSION "$Id: project.h,v 1.192 2012/11/11 12:38:42 fabiankeil Exp $"
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/project.h,v $
#define ACTION_OVERWRITE_LAST_MODIFIED 0x02000000UL
/** Action bitmap: Replace or block Accept-Language header */
#define ACTION_HIDE_ACCEPT_LANGUAGE 0x04000000UL
+/** Action bitmap: Limit the cookie lifetime */
+#define ACTION_LIMIT_COOKIE_LIFETIME 0x08000000UL
/** Action string index: How to deanimate GIFs */
#define ACTION_STRING_BLOCK 16
/** Action string index: what to do with the "X-Forwarded-For" header. */
#define ACTION_STRING_CHANGE_X_FORWARDED_FOR 17
+/** Action string index: how many minutes cookies should be valid. */
+#define ACTION_STRING_LIMIT_COOKIE_LIFETIME 18
/** Number of string actions. */
-#define ACTION_STRING_COUNT 18
+#define ACTION_STRING_COUNT 19
/* To make the ugly hack in sed easier to understand */
*/
#define CSP_FLAG_SERVER_CONNECTION_KEEP_ALIVE 0x00001000U
-#ifdef FEATURE_CONNECTION_KEEP_ALIVE
/**
* Flag for csp->flags: Set if the server specified the
* content length.
*/
#define CSP_FLAG_SERVER_KEEP_ALIVE_TIMEOUT_SET 0x00020000U
-#endif /* def FEATURE_CONNECTION_KEEP_ALIVE */
-
/**
* Flag for csp->flags: Set if we think we can't reuse
* the server socket. XXX: It's also set after sabotaging
* Maximum number of actions/filter files. This limit is arbitrary - it's just used
* to size an array.
*/
-#define MAX_AF_FILES 10
+#define MAX_AF_FILES 30
/**
* Maximum number of sockets to listen to. This limit is arbitrary - it's just used
/** socket to talk to client (web browser) */
jb_socket cfd;
+ /** Number of requests received on the client socket. */
+ unsigned int requests_received_total;
+
/** current connection to the server (may go through a proxy) */
struct reusable_connection server_connection;
/** Length after content modification. */
unsigned long long content_length;
-#ifdef FEATURE_CONNECTION_KEEP_ALIVE
/* XXX: is this the right location? */
/** Expected length of content after which we
* should stop reading from the client socket.
*/
unsigned long long expected_client_content_length;
-#endif /* def FEATURE_CONNECTION_KEEP_ALIVE */
#ifdef FEATURE_TRUST