#ifndef PROJECT_H_INCLUDED
#define PROJECT_H_INCLUDED
/** Version string. */
-#define PROJECT_H_VERSION "$Id: project.h,v 1.71 2002/05/12 21:39:36 jongfoster Exp $"
+#define PROJECT_H_VERSION "$Id: project.h,v 1.72.2.2 2002/11/28 18:15:44 oes Exp $"
/*********************************************************************
*
- * File : $Source: /cvsroot/ijbswa/current/project.h,v $
+ * File : $Source: /cvsroot/ijbswa/current/Attic/project.h,v $
*
* Purpose : Defines data structures which are widely used in the
* project. Does not define any variables or functions
*
* Revisions :
* $Log: project.h,v $
+ * Revision 1.72.2.2 2002/11/28 18:15:44 oes
+ * Added flag to each cgi_dispatcher that allows or denies
+ * external linking and removed const qualifier from
+ * struct list_entry.str.
+ *
+ * Revision 1.72.2.1 2002/08/10 11:25:18 oes
+ * - Include config.h for access to config data
+ * - Include <pcre*.h> depending on where they are
+ *
+ * Revision 1.72 2002/05/14 21:35:49 oes
+ * Split HELP_LINK_PREFIX into ACTIONS_HELP_PREFIX and CONFIG_HELP_PREFIX
+ * because of split in user-manual
+ *
* Revision 1.71 2002/05/12 21:39:36 jongfoster
* - Adding Doxygen-style comments to structures and #defines.
*
/* Need time_t for file_list */
#include <time.h>
+/* Needed for pcre choice */
+#include "config.h"
/*
* Include appropriate regular expression libraries.
#ifdef STATIC_PCRE
# include "pcre.h"
#else
-# include <pcre.h>
+# ifdef PCRE_H_IN_SUBDIR
+# include <pcre/pcre.h>
+# else
+# include <pcre.h>
+# endif
#endif
#ifdef STATIC_PCRS
#ifdef STATIC_PCRE
# include "pcreposix.h"
#else
-# include <pcreposix.h>
+# ifdef PCRE_H_IN_SUBDIR
+# include <pcre/pcreposix.h>
+# else
+# include <pcreposix.h>
+# endif
#endif
#ifdef AMIGA
struct list_entry
{
/**
- * The string. The "const" is only to discourage modification,
- * you can actually change it if you *really* want to.
- * You can even freez() it and replace it with another
- * malloc()d string. If you replace it with NULL, the list
- * functions will work, just be careful next time you iterate
- * through the list in your own code.
- *
- * FIXME: Should we remove the "const"?
+ * The string pointer. It must point to a dynamically malloc()ed
+ * string or be NULL for the list functions to work. In the latter
+ * case, just be careful next time you iterate through the list in
+ * your own code.
*/
- const char *str;
+ char *str;
/** Next entry in the linked list, or NULL if no more. */
struct list_entry *next;
#define CSP_FLAG_TOGGLED_ON 0x20
+/*
+ * Flags for use in return codes of child processes
+ */
+
+/**
+ * Flag for process return code: Set if exiting porcess has been toggled
+ * during its lifetime.
+ */
+#define RC_FLAG_TOGGLED 0x10
+
+/**
+ * Flag for process return code: Set if exiting porcess has blocked its
+ * request.
+ */
+#define RC_FLAG_BLOCKED 0x20
+
/**
* Maximum number of actions files. This limit is arbitrary - it's just used
* to size an array.
/** The description of the CGI, to appear on the main menu, or NULL to hide it. */
const char * const description;
+
+ /** A flag that indicates whether unintentional calls to this CGI can cause damage */
+ int harmless;
};