#ifndef PARSERS_H_INCLUDED
#define PARSERS_H_INCLUDED
-#define PARSERS_H_VERSION "$Id: parsers.h,v 1.42 2008/04/17 14:40:49 fabiankeil Exp $"
+#define PARSERS_H_VERSION "$Id: parsers.h,v 1.43 2008/05/10 13:23:38 fabiankeil Exp $"
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/parsers.h,v $
*
* Revisions :
* $Log: parsers.h,v $
+ * Revision 1.43 2008/05/10 13:23:38 fabiankeil
+ * Don't provide get_header() with the whole client state
+ * structure when it only needs access to csp->iob.
+ *
* Revision 1.42 2008/04/17 14:40:49 fabiankeil
* Provide get_http_time() with the buffer size so it doesn't
* have to blindly assume that the buffer is big enough.
extern "C" {
#endif
+/**
+ * List of functions to run on a list of headers.
+ * XXX: make parsers local to parsers.c.
+ */
+struct parsers
+{
+ /** The header prefix to match */
+ const char *str;
+
+ /** The length of the prefix to match */
+ const size_t len;
+
+ /** The function to apply to this line */
+ const parser_func_ptr parser;
+};
+
extern const struct parsers client_patterns[];
extern const struct parsers server_patterns[];
extern const struct parsers server_patterns_light[];
#ifndef PROJECT_H_INCLUDED
#define PROJECT_H_INCLUDED
/** Version string. */
-#define PROJECT_H_VERSION "$Id: project.h,v 1.114 2008/04/11 16:35:39 fabiankeil Exp $"
+#define PROJECT_H_VERSION "$Id: project.h,v 1.115 2008/05/19 16:57:20 fabiankeil Exp $"
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/project.h,v $
*
* Revisions :
* $Log: project.h,v $
+ * Revision 1.115 2008/05/19 16:57:20 fabiankeil
+ * Declare all members of the parsers structure immutable.
+ *
* Revision 1.114 2008/04/11 16:35:39 fabiankeil
* Oops, I forgot to shorten the URL_SPEC_INITIALIZER in my last commit.
*
typedef jb_err (*parser_func_ptr )(struct client_state *, char **);
-/**
- * List of functions to run on a list of headers
- */
-struct parsers
-{
- /** The header prefix to match */
- const char *str;
-
- /** The length of the prefix to match */
- const size_t len;
-
- /** The function to apply to this line */
- const parser_func_ptr parser;
-};
-
-
/**
* List of available CGI functions.
*/