summaryrefslogtreecommitdiff
path: root/usr.sbin/httpd
diff options
context:
space:
mode:
authorNiall O'Higgins <niallo@cvs.openbsd.org>2005-03-28 23:26:52 +0000
committerNiall O'Higgins <niallo@cvs.openbsd.org>2005-03-28 23:26:52 +0000
commit21c6490fb7cda38e0868ff418bc084f407930697 (patch)
treeff0ee8c0b12eea12f0b77d6ed62012166829807a /usr.sbin/httpd
parent5631ce7bb78608891dade531ca5431bce809cd21 (diff)
KNF
no binary changes.
Diffstat (limited to 'usr.sbin/httpd')
-rw-r--r--usr.sbin/httpd/src/include/ap.h27
-rw-r--r--usr.sbin/httpd/src/include/ap_alloc.h102
-rw-r--r--usr.sbin/httpd/src/include/ap_ctx.h10
-rw-r--r--usr.sbin/httpd/src/include/ap_ctype.h2
-rw-r--r--usr.sbin/httpd/src/include/ap_ebcdic.h4
-rw-r--r--usr.sbin/httpd/src/include/ap_hook.h37
-rw-r--r--usr.sbin/httpd/src/include/ap_md5.h37
-rw-r--r--usr.sbin/httpd/src/include/ap_mm.h8
-rw-r--r--usr.sbin/httpd/src/include/ap_sha1.h9
-rw-r--r--usr.sbin/httpd/src/include/buff.h46
-rw-r--r--usr.sbin/httpd/src/include/compat.h2
-rw-r--r--usr.sbin/httpd/src/include/conf.h2
-rw-r--r--usr.sbin/httpd/src/include/explain.h1
-rw-r--r--usr.sbin/httpd/src/include/fnmatch.h2
-rw-r--r--usr.sbin/httpd/src/include/hsregex.h2
-rw-r--r--usr.sbin/httpd/src/include/http_conf_globals.h2
-rw-r--r--usr.sbin/httpd/src/include/http_config.h345
-rw-r--r--usr.sbin/httpd/src/include/http_log.h26
-rw-r--r--usr.sbin/httpd/src/include/http_main.h9
-rw-r--r--usr.sbin/httpd/src/include/http_protocol.h11
-rw-r--r--usr.sbin/httpd/src/include/http_request.h12
-rw-r--r--usr.sbin/httpd/src/include/http_vhost.h8
-rw-r--r--usr.sbin/httpd/src/include/httpd.h489
-rw-r--r--usr.sbin/httpd/src/include/multithread.h2
-rw-r--r--usr.sbin/httpd/src/include/rfc1413.h4
-rw-r--r--usr.sbin/httpd/src/include/scoreboard.h50
-rw-r--r--usr.sbin/httpd/src/include/util_date.h2
-rw-r--r--usr.sbin/httpd/src/include/util_md5.h2
-rw-r--r--usr.sbin/httpd/src/include/util_script.h20
-rw-r--r--usr.sbin/httpd/src/include/util_uri.h70
30 files changed, 710 insertions, 633 deletions
diff --git a/usr.sbin/httpd/src/include/ap.h b/usr.sbin/httpd/src/include/ap.h
index e4e6ea871de..4a3b554221e 100644
--- a/usr.sbin/httpd/src/include/ap.h
+++ b/usr.sbin/httpd/src/include/ap.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: ap.h,v 1.13 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -81,13 +83,13 @@ API_EXPORT(long) ap_strtol(const char *nptr, char **endptr, int base);
/* small utility macros to make things easier to read */
-#define ap_killpg(x, y) (killpg ((x), (y)))
+#define ap_killpg(x, y) (killpg ((x), (y)))
/* ap_vformatter() is a generic printf-style formatting routine
* with some extensions. The extensions are:
*
- * %pA takes a struct in_addr *, and prints it as a.b.c.d
- * %pI takes a struct sockaddr_in * and prints it as a.b.c.d:port
+ * %pA takes a struct in_addr *, and prints it as a.b.c.d
+ * %pI takes a struct sockaddr_in * and prints it as a.b.c.d:port
* %pp takes a void * and outputs it in hex
*
* The %p hacks are to force gcc's printf warning code to skip
@@ -133,8 +135,8 @@ API_EXPORT(long) ap_strtol(const char *nptr, char **endptr, int base);
*/
typedef struct {
- char *curpos;
- char *endpos;
+ char *curpos;
+ char *endpos;
} ap_vformatter_buff;
API_EXPORT(int) ap_vformatter(int (*flush_func)(ap_vformatter_buff *),
@@ -157,10 +159,10 @@ API_EXPORT(int) ap_vformatter(int (*flush_func)(ap_vformatter_buff *),
*
* In no event does ap_snprintf return a negative number.
*/
-API_EXPORT_NONSTD(int) ap_snprintf(char *buf, size_t len, const char *format,...)
- __attribute__((format(printf,3,4)));
+API_EXPORT_NONSTD(int) ap_snprintf(char *buf, size_t len,
+ const char *format,...) __attribute__((format(printf,3,4)));
API_EXPORT(int) ap_vsnprintf(char *buf, size_t len, const char *format,
- va_list ap);
+ va_list ap);
/* Simple BASE64 encode/decode functions.
*
* As we might encode binary strings, hence we require the length of
@@ -174,12 +176,15 @@ API_EXPORT(int) ap_vsnprintf(char *buf, size_t len, const char *format,
*
*/
API_EXPORT(int) ap_base64encode_len(int len);
-API_EXPORT(int) ap_base64encode(char * coded_dst, const char *plain_src,int len_plain_src);
-API_EXPORT(int) ap_base64encode_binary(char * coded_dst, const unsigned char *plain_src,int len_plain_src);
+API_EXPORT(int) ap_base64encode(char * coded_dst, const char *plain_src,
+ int len_plain_src);
+API_EXPORT(int) ap_base64encode_binary(char * coded_dst,
+ const unsigned char *plain_src,int len_plain_src);
API_EXPORT(int) ap_base64decode_len(const char * coded_src);
API_EXPORT(int) ap_base64decode(char * plain_dst, const char *coded_src);
-API_EXPORT(int) ap_base64decode_binary(unsigned char * plain_dst, const char *coded_src);
+API_EXPORT(int) ap_base64decode_binary(unsigned char * plain_dst,
+ const char *coded_src);
/* Password validation, as used in AuthType Basic which is able to cope
* (based on the prefix) with the SHA1, Apache's internal MD5 and (depending
diff --git a/usr.sbin/httpd/src/include/ap_alloc.h b/usr.sbin/httpd/src/include/ap_alloc.h
index 6c8d1f1caaa..b9f24efc062 100644
--- a/usr.sbin/httpd/src/include/ap_alloc.h
+++ b/usr.sbin/httpd/src/include/ap_alloc.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: ap_alloc.h,v 1.8 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -80,16 +82,16 @@ extern "C" {
*/
/* Arenas for configuration info and transaction info
- * --- actual layout of the pool structure is private to
- * alloc.c.
+ * --- actual layout of the pool structure is private to
+ * alloc.c.
*/
typedef struct pool pool;
typedef struct pool ap_pool;
-API_EXPORT(pool *) ap_init_alloc(void); /* Set up everything */
+API_EXPORT(pool *) ap_init_alloc(void); /* Set up everything */
void ap_cleanup_alloc(void);
-API_EXPORT(pool *) ap_make_sub_pool(pool *); /* All pools are subpools of permanent_pool */
+API_EXPORT(pool *) ap_make_sub_pool(pool *); /* All pools are subpools of permanent_pool */
typedef enum { AP_POOL_RD, AP_POOL_RW } ap_pool_lock_mode;
int ap_shared_pool_possible(void);
void ap_init_alloc_shared(int);
@@ -164,7 +166,8 @@ API_EXPORT(void *) ap_pcalloc(struct pool *, int nbytes);
API_EXPORT(char *) ap_pstrdup(struct pool *, const char *s);
/* make a nul terminated copy of the n characters starting with s */
API_EXPORT(char *) ap_pstrndup(struct pool *, const char *s, int n);
-API_EXPORT_NONSTD(char *) ap_pstrcat(struct pool *,...); /* all '...' must be char* */
+API_EXPORT_NONSTD(char *) ap_pstrcat(struct pool *,...);
+/* all '...' must be char* */
API_EXPORT_NONSTD(char *) ap_psprintf(struct pool *, const char *fmt, ...)
__attribute__((format(printf,2,3)));
API_EXPORT(char *) ap_pvsprintf(struct pool *, const char *fmt, va_list);
@@ -174,18 +177,18 @@ API_EXPORT(char *) ap_pvsprintf(struct pool *, const char *fmt, va_list);
*/
typedef struct {
- ap_pool *pool;
- int elt_size;
- int nelts;
- int nalloc;
- char *elts;
+ ap_pool *pool;
+ int elt_size;
+ int nelts;
+ int nalloc;
+ char *elts;
} array_header;
API_EXPORT(array_header *) ap_make_array(pool *p, int nelts, int elt_size);
API_EXPORT(void *) ap_push_array(array_header *);
API_EXPORT(void) ap_array_cat(array_header *dst, const array_header *src);
API_EXPORT(array_header *) ap_append_arrays(pool *, const array_header *,
- const array_header *);
+ const array_header *);
/* ap_array_pstrcat generates a new string from the pool containing
* the concatenated sequence of substrings referenced as elements within
@@ -194,7 +197,7 @@ API_EXPORT(array_header *) ap_append_arrays(pool *, const array_header *,
* If sep is non-NUL, it will be inserted between elements as a separator.
*/
API_EXPORT(char *) ap_array_pstrcat(pool *p, const array_header *arr,
- const char sep);
+ const char sep);
/* copy_array copies the *entire* array. copy_array_hdr just copies
* the header, and arranges for the elements to be copied if (and only
@@ -217,10 +220,10 @@ API_EXPORT(array_header *) ap_copy_array_hdr(pool *p, const array_header *src);
typedef struct table table;
typedef struct {
- char *key; /* maybe NULL in future;
+ char *key; /* maybe NULL in future;
* check when iterating thru table_elts
*/
- char *val;
+ char *val;
} table_entry;
API_EXPORT(table *) ap_make_table(pool *p, int nelts);
@@ -229,15 +232,18 @@ API_EXPORT(void) ap_clear_table(table *);
API_EXPORT(const char *) ap_table_get(const table *, const char *);
API_EXPORT(void) ap_table_set(table *, const char *name, const char *val);
API_EXPORT(void) ap_table_setn(table *, const char *name, const char *val);
-API_EXPORT(void) ap_table_merge(table *, const char *name, const char *more_val);
-API_EXPORT(void) ap_table_mergen(table *, const char *name, const char *more_val);
+API_EXPORT(void) ap_table_merge(table *, const char *name,
+ const char *more_val);
+API_EXPORT(void) ap_table_mergen(table *, const char *name,
+ const char *more_val);
API_EXPORT(void) ap_table_unset(table *, const char *key);
API_EXPORT(void) ap_table_add(table *, const char *name, const char *val);
API_EXPORT(void) ap_table_addn(table *, const char *name, const char *val);
-API_EXPORT_NONSTD(void) ap_table_do(int (*comp) (void *, const char *, const char *),
- void *rec, const table *t,...);
+API_EXPORT_NONSTD(void) ap_table_do(int (*comp) (void *, const char *,
+ const char *), void *rec, const table *t,...);
-API_EXPORT(table *) ap_overlay_tables(pool *p, const table *overlay, const table *base);
+API_EXPORT(table *) ap_overlay_tables(pool *p, const table *overlay,
+ const table *base);
/* Conceptually, ap_overlap_tables does this:
@@ -246,12 +252,12 @@ API_EXPORT(table *) ap_overlay_tables(pool *p, const table *overlay, const table
int i;
for (i = 0; i < barr->nelts; ++i) {
- if (flags & AP_OVERLAP_TABLES_MERGE) {
- ap_table_mergen(a, belt[i].key, belt[i].val);
- }
- else {
- ap_table_setn(a, belt[i].key, belt[i].val);
- }
+ if (flags & AP_OVERLAP_TABLES_MERGE) {
+ ap_table_mergen(a, belt[i].key, belt[i].val);
+ }
+ else {
+ ap_table_setn(a, belt[i].key, belt[i].val);
+ }
}
Except that it is more efficient (less space and cpu-time) especially
@@ -271,7 +277,8 @@ API_EXPORT(void) ap_overlap_tables(table *a, const table *b, unsigned flags);
* written which assume that a table is the same as an array_header. -djg
*/
#define ap_table_elts(t) ((array_header *)(t))
-#define ap_is_empty_table(t) (((t) == NULL)||(((array_header *)(t))->nelts == 0))
+#define ap_is_empty_table(t) \
+ (((t) == NULL)||(((array_header *)(t))->nelts == 0))
/* routines to remember allocation of other sorts of things...
* generic interface first. Note that we want to have two separate
@@ -279,7 +286,7 @@ API_EXPORT(void) ap_overlap_tables(table *a, const table *b, unsigned flags);
* to keep CGI scripts and the like from inheriting access to things
* they shouldn't be able to touch, and one for actually cleaning up,
* when the actual server process wants to get rid of the thing,
- * whatever it is.
+ * whatever it is.
*
* kill_cleanup disarms a cleanup, presumably because the resource in
* question has been closed, freed, or whatever, and it's scarce
@@ -300,15 +307,15 @@ API_EXPORT(void) ap_overlap_tables(table *a, const table *b, unsigned flags);
*/
API_EXPORT(void) ap_register_cleanup(pool *p, void *data,
- void (*plain_cleanup) (void *),
- void (*child_cleanup) (void *));
+ void (*plain_cleanup) (void *), void (*child_cleanup) (void *));
API_EXPORT(void) ap_register_cleanup_ex(pool *p, void *data,
- void (*plain_cleanup) (void *),
- void (*child_cleanup) (void *),
- int (*magic_cleanup) (void *));
+ void (*plain_cleanup) (void *), void (*child_cleanup) (void *),
+ int (*magic_cleanup) (void *));
-API_EXPORT(void) ap_kill_cleanup(pool *p, void *data, void (*plain_cleanup) (void *));
-API_EXPORT(void) ap_run_cleanup(pool *p, void *data, void (*cleanup) (void *));
+API_EXPORT(void) ap_kill_cleanup(pool *p, void *data,
+ void (*plain_cleanup) (void *));
+API_EXPORT(void) ap_run_cleanup(pool *p, void *data,
+ void (*cleanup) (void *));
/* A "do-nothing" cleanup, for register_cleanup; it's faster to do
* things this way than to test for NULL. */
@@ -331,11 +338,13 @@ API_EXPORT(void) ap_unblock_alarms(void);
* the note_cleanups_for_foo routines are for
*/
-API_EXPORT(FILE *) ap_pfopen(struct pool *, const char *name, const char *fmode);
-API_EXPORT(FILE *) ap_pfdopen(struct pool *, int fd, const char *fmode);
+API_EXPORT(FILE *) ap_pfopen(struct pool *, const char *name,
+ const char *fmode);
+API_EXPORT(FILE *) ap_pfdopen(struct pool *, int fd,
+ const char *fmode);
API_EXPORT(int) ap_popenf(struct pool *, const char *name, int flg, int mode);
-API_EXPORT(int) ap_popenf_ex(struct pool *, const char *name, int flg,
- int mode, int domagic);
+API_EXPORT(int) ap_popenf_ex(struct pool *, const char *name, int flg, int mode,
+ int domagic);
API_EXPORT(void) ap_note_cleanups_for_file(pool *, FILE *);
API_EXPORT(void) ap_note_cleanups_for_file_ex(pool *, FILE *, int);
@@ -375,20 +384,19 @@ API_EXPORT(void) ap_pclosedir(pool *p, DIR * d);
*/
enum kill_conditions {
- kill_never, /* process is never sent any signals */
- kill_always, /* process is sent SIGKILL on pool cleanup */
- kill_after_timeout, /* SIGTERM, wait 3 seconds, SIGKILL */
- just_wait, /* wait forever for the process to complete */
- kill_only_once /* send SIGTERM and then wait */
+ kill_never, /* process is never sent any signals */
+ kill_always, /* process is sent SIGKILL on pool cleanup */
+ kill_after_timeout, /* SIGTERM, wait 3 seconds, SIGKILL */
+ just_wait, /* wait forever for the process to complete */
+ kill_only_once /* send SIGTERM and then wait */
};
typedef struct child_info child_info;
API_EXPORT(void) ap_note_subprocess(pool *a, pid_t pid,
- enum kill_conditions how);
+ enum kill_conditions how);
API_EXPORT(int) ap_spawn_child(pool *, int (*)(void *, child_info *),
- void *, enum kill_conditions,
- FILE **pipe_in, FILE **pipe_out,
- FILE **pipe_err);
+ void *, enum kill_conditions, FILE **pipe_in, FILE **pipe_out,
+ FILE **pipe_err);
int ap_close_fd_on_exec(int fd);
/* magic numbers --- min free bytes to consider a free pool block useable,
diff --git a/usr.sbin/httpd/src/include/ap_ctx.h b/usr.sbin/httpd/src/include/ap_ctx.h
index bdfb1b6357d..8f8d8402fcc 100644
--- a/usr.sbin/httpd/src/include/ap_ctx.h
+++ b/usr.sbin/httpd/src/include/ap_ctx.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: ap_ctx.h,v 1.6 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* Copyright (c) 1998-2000 The Apache Group. All rights reserved.
*
@@ -75,13 +77,13 @@
#define AP_CTX_MAX_ENTRIES 1024
typedef struct {
- char *ce_key;
- void *ce_val;
+ char *ce_key;
+ void *ce_val;
} ap_ctx_entry;
typedef struct {
- pool *cr_pool;
- ap_ctx_entry **cr_entry;
+ pool *cr_pool;
+ ap_ctx_entry **cr_entry;
} ap_ctx_rec;
typedef ap_ctx_rec ap_ctx;
diff --git a/usr.sbin/httpd/src/include/ap_ctype.h b/usr.sbin/httpd/src/include/ap_ctype.h
index 028c5bf09de..769ae24b05c 100644
--- a/usr.sbin/httpd/src/include/ap_ctype.h
+++ b/usr.sbin/httpd/src/include/ap_ctype.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: ap_ctype.h,v 1.7 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
diff --git a/usr.sbin/httpd/src/include/ap_ebcdic.h b/usr.sbin/httpd/src/include/ap_ebcdic.h
index e5fd5379822..402309f5274 100644
--- a/usr.sbin/httpd/src/include/ap_ebcdic.h
+++ b/usr.sbin/httpd/src/include/ap_ebcdic.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: ap_ebcdic.h,v 1.4 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -53,7 +55,7 @@
*/
#ifndef AP_EBCDIC_H
-#define AP_EBCDIC_H "$Id: ap_ebcdic.h,v 1.3 2003/08/21 13:11:35 henning Exp $"
+#define AP_EBCDIC_H "$Id: ap_ebcdic.h,v 1.4 2005/03/28 23:26:51 niallo Exp $"
#include <sys/types.h>
diff --git a/usr.sbin/httpd/src/include/ap_hook.h b/usr.sbin/httpd/src/include/ap_hook.h
index 2dd142605ac..e36f0f50e2a 100644
--- a/usr.sbin/httpd/src/include/ap_hook.h
+++ b/usr.sbin/httpd/src/include/ap_hook.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: ap_hook.h,v 1.5 2005/03/28 23:26:51 niallo Exp $ */
+
#if 0
=cut
#endif
@@ -293,27 +295,27 @@ typedef unsigned short int ap_hook_state;
/* the union holding the arbitrary decline values */
typedef union {
- char v_char;
- int v_int;
- long v_long;
- float v_float;
- double v_double;
- void *v_ptr;
+ char v_char;
+ int v_int;
+ long v_long;
+ float v_float;
+ double v_double;
+ void *v_ptr;
} ap_hook_value;
/* the structure holding one hook function and its context */
typedef struct {
- void *hf_ptr; /* function pointer */
- void *hf_ctx; /* function context */
+ void *hf_ptr; /* function pointer */
+ void *hf_ctx; /* function context */
} ap_hook_func;
/* the structure holding one hook entry with all its registered functions */
typedef struct {
- char *he_hook; /* hook name (=unique id) */
- ap_hook_sig he_sig; /* hook signature */
- int he_modeid; /* hook mode id */
- ap_hook_value he_modeval; /* hook mode value */
- ap_hook_func **he_func; /* hook registered funcs */
+ char *he_hook; /* hook name (=unique id) */
+ ap_hook_sig he_sig; /* hook signature */
+ int he_modeid; /* hook mode id */
+ ap_hook_value he_modeval; /* hook mode value */
+ ap_hook_func **he_func; /* hook registered funcs */
} ap_hook_entry;
/* the maximum number of hooks and functions per hook */
@@ -376,11 +378,14 @@ typedef struct {
API_EXPORT(void) ap_hook_init (void);
API_EXPORT(void) ap_hook_kill (void);
-API_EXPORT(int) ap_hook_configure (char *hook, ap_hook_sig sig, ap_hook_mode modeid, ...);
-API_EXPORT(int) ap_hook_register_I (char *hook, void *func, void *ctx);
+API_EXPORT(int) ap_hook_configure (char *hook, ap_hook_sig sig,
+ ap_hook_mode modeid, ...);
+API_EXPORT(int) ap_hook_register_I (char *hook, void *func,
+ void *ctx);
API_EXPORT(int) ap_hook_unregister_I (char *hook, void *func);
API_EXPORT(ap_hook_state) ap_hook_status (char *hook);
-API_EXPORT(int) ap_hook_use (char *hook, ap_hook_sig sig, ap_hook_mode modeid, ...);
+API_EXPORT(int) ap_hook_use (char *hook, ap_hook_sig sig,
+ ap_hook_mode modeid, ...);
API_EXPORT(int) ap_hook_call (char *hook, ...);
#endif /* AP_HOOK_H */
diff --git a/usr.sbin/httpd/src/include/ap_md5.h b/usr.sbin/httpd/src/include/ap_md5.h
index e66ebdc8f63..91d8e545538 100644
--- a/usr.sbin/httpd/src/include/ap_md5.h
+++ b/usr.sbin/httpd/src/include/ap_md5.h
@@ -1,32 +1,4 @@
-/*
- * This is work is derived from material Copyright RSA Data Security, Inc.
- *
- * The RSA copyright statement and Licence for that original material is
- * included below. This is followed by the Apache copyright statement and
- * licence for the modifications made to that material.
- */
-
-/* Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All
- rights reserved.
-
- License to copy and use this software is granted provided that it
- is identified as the "RSA Data Security, Inc. MD5 Message-Digest
- Algorithm" in all material mentioning or referencing this software
- or this function.
-
- License is also granted to make and use derivative works provided
- that such works are identified as "derived from the RSA Data
- Security, Inc. MD5 Message-Digest Algorithm" in all material
- mentioning or referencing the derived work.
-
- RSA Data Security, Inc. makes no representations concerning either
- the merchantability of this software or the suitability of this
- software for any particular purpose. It is provided "as is"
- without express or implied warranty of any kind.
-
- These notices must be retained in any copies of any part of this
- documentation and/or software.
- */
+/* $OpenBSD: ap_md5.h,v 1.9 2005/03/28 23:26:51 niallo Exp $ */
/* ====================================================================
* The Apache Software License, Version 1.1
@@ -110,12 +82,11 @@ typedef unsigned int UINT4;
API_EXPORT(void) ap_MD5Init(AP_MD5_CTX *context);
API_EXPORT(void) ap_MD5Update(AP_MD5_CTX *context, const unsigned char *input,
- unsigned int inputLen);
+ unsigned int inputLen);
API_EXPORT(void) ap_MD5Final(unsigned char digest[MD5_DIGESTSIZE],
- AP_MD5_CTX *context);
+ AP_MD5_CTX *context);
API_EXPORT(void) ap_MD5Encode(const unsigned char *password,
- const unsigned char *salt,
- char *result, size_t nbytes);
+ const unsigned char *salt, char *result, size_t nbytes);
API_EXPORT(void) ap_to64(char *s, unsigned long v, int n);
#ifdef __cplusplus
diff --git a/usr.sbin/httpd/src/include/ap_mm.h b/usr.sbin/httpd/src/include/ap_mm.h
index ca471935d5e..b7d17f5b392 100644
--- a/usr.sbin/httpd/src/include/ap_mm.h
+++ b/usr.sbin/httpd/src/include/ap_mm.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: ap_mm.h,v 1.4 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* Copyright (c) 1999-2000 The Apache Group. All rights reserved.
*
@@ -91,7 +93,8 @@ API_EXPORT(char *) ap_MM_error(void);
/* Standard Malloc-Style API */
API_EXPORT(AP_MM *) ap_mm_create(size_t size, char *file);
-API_EXPORT(int) ap_mm_permission(AP_MM *mm, mode_t mode, uid_t owner, gid_t group);
+API_EXPORT(int) ap_mm_permission(AP_MM *mm, mode_t mode, uid_t owner,
+ gid_t group);
API_EXPORT(void) ap_mm_destroy(AP_MM *mm);
API_EXPORT(int) ap_mm_lock(AP_MM *mm, ap_mm_lock_mode mode);
API_EXPORT(int) ap_mm_unlock(AP_MM *mm);
@@ -108,7 +111,8 @@ API_EXPORT(void) ap_mm_display_info(AP_MM *mm);
/* Low-Level Shared Memory API */
API_EXPORT(void *) ap_mm_core_create(size_t size, char *file);
-API_EXPORT(int) ap_mm_core_permission(void *core, mode_t mode, uid_t owner, gid_t group);
+API_EXPORT(int) ap_mm_core_permission(void *core, mode_t mode, uid_t owner,
+ gid_t group);
API_EXPORT(void) ap_mm_core_delete(void *core);
API_EXPORT(size_t) ap_mm_core_size(void *core);
API_EXPORT(int) ap_mm_core_lock(void *core, ap_mm_lock_mode mode);
diff --git a/usr.sbin/httpd/src/include/ap_sha1.h b/usr.sbin/httpd/src/include/ap_sha1.h
index 80e62071346..5a0eeadccf5 100644
--- a/usr.sbin/httpd/src/include/ap_sha1.h
+++ b/usr.sbin/httpd/src/include/ap_sha1.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: ap_sha1.h,v 1.7 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -89,12 +91,11 @@ typedef u_int32_t AP_LONG; /* a 32-bit quantity */
API_EXPORT(void) ap_sha1_base64(const char *clear, int len, char *out);
API_EXPORT(void) ap_SHA1Init(AP_SHA1_CTX *context);
API_EXPORT(void) ap_SHA1Update(AP_SHA1_CTX *context, const char *input,
- unsigned int inputLen);
+ unsigned int inputLen);
API_EXPORT(void) ap_SHA1Update_binary(AP_SHA1_CTX *context,
- const unsigned char *input,
- unsigned int inputLen);
+ const unsigned char *input, unsigned int inputLen);
API_EXPORT(void) ap_SHA1Final(unsigned char digest[SHA_DIGESTSIZE],
- AP_SHA1_CTX *context);
+ AP_SHA1_CTX *context);
#ifdef __cplusplus
}
diff --git a/usr.sbin/httpd/src/include/buff.h b/usr.sbin/httpd/src/include/buff.h
index 6345c6beb13..3a2b5a5d7dd 100644
--- a/usr.sbin/httpd/src/include/buff.h
+++ b/usr.sbin/httpd/src/include/buff.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: buff.h,v 1.12 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -92,33 +94,32 @@ extern "C" {
typedef struct buff_struct BUFF;
struct buff_struct {
- int flags; /* flags */
- unsigned char *inptr; /* pointer to next location to read */
- int incnt; /* number of bytes left to read from input buffer;
+ int flags; /* flags */
+ unsigned char *inptr; /* pointer to next location to read */
+ int incnt; /* number of bytes left to read from input buffer;
* always 0 if had a read error */
- int outchunk; /* location of chunk header when chunking */
- int outcnt; /* number of byte put in output buffer */
- unsigned char *inbase;
- unsigned char *outbase;
- int bufsiz;
- void (*error) (BUFF *fb, int op, void *data);
- void *error_data;
- long int bytes_sent; /* number of bytes actually written */
+ int outchunk; /* location of chunk header when chunking */
+ int outcnt; /* number of byte put in output buffer */
+ unsigned char *inbase;
+ unsigned char *outbase;
+ int bufsiz;
+ void (*error) (BUFF *fb, int op, void *data);
+ void *error_data;
+ long int bytes_sent; /* number of bytes actually written */
- ap_pool *pool;
+ ap_pool *pool;
-/* could also put pointers to the basic I/O routines here */
- int fd; /* the file descriptor */
- int fd_in; /* input file descriptor, if different */
+ /* could also put pointers to the basic I/O routines here */
+ int fd; /* the file descriptor */
+ int fd_in; /* input file descriptor, if different */
- /* transport handle, for RPC binding handle or some such */
- void *t_handle;
+ /* transport handle, for RPC binding handle or some such */
+ void *t_handle;
- ap_ctx *ctx;
+ ap_ctx *ctx;
- void *callback_data;
- void (*filter_callback)(BUFF *, const void *, int );
-
+ void *callback_data;
+ void (*filter_callback)(BUFF *, const void *, int );
};
/* Options to bset/getopt */
@@ -175,8 +176,7 @@ struct child_info {
int dummy;
};
API_EXPORT(int) ap_bspawn_child(pool *, int (*)(void *, child_info *), void *,
- enum kill_conditions, BUFF **pipe_in, BUFF **pipe_out,
- BUFF **pipe_err);
+ enum kill_conditions, BUFF **pipe_in, BUFF **pipe_out, BUFF **pipe_err);
/* enable non-blocking operations */
API_EXPORT(int) ap_bnonblock(BUFF *fb, int direction);
diff --git a/usr.sbin/httpd/src/include/compat.h b/usr.sbin/httpd/src/include/compat.h
index 7b0f1931206..ab21c0fe63e 100644
--- a/usr.sbin/httpd/src/include/compat.h
+++ b/usr.sbin/httpd/src/include/compat.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: compat.h,v 1.2 2005/03/28 23:26:51 niallo Exp $ */
+
/*
* compat.h -- backward compatibility header for ap_compat.h
*/
diff --git a/usr.sbin/httpd/src/include/conf.h b/usr.sbin/httpd/src/include/conf.h
index 493365a21f3..b50b8c852e1 100644
--- a/usr.sbin/httpd/src/include/conf.h
+++ b/usr.sbin/httpd/src/include/conf.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: conf.h,v 1.2 2005/03/28 23:26:51 niallo Exp $ */
+
/*
* conf.h -- backward compatibility header for ap_config.h
*/
diff --git a/usr.sbin/httpd/src/include/explain.h b/usr.sbin/httpd/src/include/explain.h
index 217e999b9f1..4ab6bc7cbb0 100644
--- a/usr.sbin/httpd/src/include/explain.h
+++ b/usr.sbin/httpd/src/include/explain.h
@@ -1,3 +1,4 @@
+/* $OpenBSD: explain.h,v 1.2 2005/03/28 23:26:51 niallo Exp $ */
#ifdef __cplusplus
extern "C" {
diff --git a/usr.sbin/httpd/src/include/fnmatch.h b/usr.sbin/httpd/src/include/fnmatch.h
index 84af844262f..5795a2241b5 100644
--- a/usr.sbin/httpd/src/include/fnmatch.h
+++ b/usr.sbin/httpd/src/include/fnmatch.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: fnmatch.h,v 1.3 2005/03/28 23:26:51 niallo Exp $ */
+
/*-
* Copyright (c) 1992, 1993
* The Regents of the University of California. All rights reserved.
diff --git a/usr.sbin/httpd/src/include/hsregex.h b/usr.sbin/httpd/src/include/hsregex.h
index 4918042562c..9e5b8479e79 100644
--- a/usr.sbin/httpd/src/include/hsregex.h
+++ b/usr.sbin/httpd/src/include/hsregex.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: hsregex.h,v 1.7 2005/03/28 23:26:51 niallo Exp $ */
+
/* DON'T EVEN THINK ABOUT EDITING THIS, go see regex/Makefile,
* search for mkh */
#ifndef _REGEX_H_
diff --git a/usr.sbin/httpd/src/include/http_conf_globals.h b/usr.sbin/httpd/src/include/http_conf_globals.h
index 0b3f7bb7c43..9d08788761c 100644
--- a/usr.sbin/httpd/src/include/http_conf_globals.h
+++ b/usr.sbin/httpd/src/include/http_conf_globals.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: http_conf_globals.h,v 1.15 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
diff --git a/usr.sbin/httpd/src/include/http_config.h b/usr.sbin/httpd/src/include/http_config.h
index 51dd5079261..21482a9cc1a 100644
--- a/usr.sbin/httpd/src/include/http_config.h
+++ b/usr.sbin/httpd/src/include/http_config.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: http_config.h,v 1.12 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -75,36 +77,36 @@ extern "C" {
* RAW_ARGS.
*/
enum cmd_how {
- RAW_ARGS, /* cmd_func parses command line itself */
- TAKE1, /* one argument only */
- TAKE2, /* two arguments only */
- ITERATE, /* one argument, occuring multiple times
+ RAW_ARGS, /* cmd_func parses command line itself */
+ TAKE1, /* one argument only */
+ TAKE2, /* two arguments only */
+ ITERATE, /* one argument, occuring multiple times
* (e.g., IndexIgnore)
*/
- ITERATE2, /* two arguments, 2nd occurs multiple times
+ ITERATE2, /* two arguments, 2nd occurs multiple times
* (e.g., AddIcon)
*/
- FLAG, /* One of 'On' or 'Off' */
- NO_ARGS, /* No args at all, e.g. </Directory> */
- TAKE12, /* one or two arguments */
- TAKE3, /* three arguments only */
- TAKE23, /* two or three arguments */
- TAKE123, /* one, two or three arguments */
- TAKE13 /* one or three arguments */
+ FLAG, /* One of 'On' or 'Off' */
+ NO_ARGS, /* No args at all, e.g. </Directory> */
+ TAKE12, /* one or two arguments */
+ TAKE3, /* three arguments only */
+ TAKE23, /* two or three arguments */
+ TAKE123, /* one, two or three arguments */
+ TAKE13 /* one or three arguments */
};
typedef struct command_struct {
- const char *name; /* Name of this command */
- const char *(*func) (); /* Function invoked */
- void *cmd_data; /* Extra data, for functions which
+ const char *name; /* Name of this command */
+ const char *(*func) (); /* Function invoked */
+ void *cmd_data; /* Extra data, for functions which
* implement multiple commands...
*/
- int req_override; /* What overrides need to be allowed to
+ int req_override; /* What overrides need to be allowed to
* enable this command.
*/
- enum cmd_how args_how; /* What the command expects as arguments */
+ enum cmd_how args_how; /* What the command expects as arguments */
- const char *errmsg; /* 'usage' message, in case of syntax errors */
+ const char *errmsg; /* 'usage' message, in case of syntax errors */
} command_rec;
/* The allowed locations for a configuration directive are the union of
@@ -148,30 +150,31 @@ typedef struct command_struct {
*/
typedef struct {
- void *info; /* Argument to command from cmd_table */
- int override; /* Which allow-override bits are set */
- int limited; /* Which methods are <Limit>ed */
+ void *info; /* Argument to command from cmd_table */
+ int override; /* Which allow-override bits are set */
+ int limited; /* Which methods are <Limit>ed */
- configfile_t *config_file; /* Config file structure from pcfg_openfile() */
+ /* Config file structure from pcfg_openfile() */
+ configfile_t *config_file;
- ap_pool *pool; /* Pool to allocate new storage in */
- struct pool *temp_pool; /* Pool for scratch memory; persists during
+ ap_pool *pool; /* Pool to allocate new storage in */
+ struct pool *temp_pool; /* Pool for scratch memory; persists during
* configuration, but wiped before the first
* request is served...
*/
- server_rec *server; /* Server_rec being configured for */
- char *path; /* If configuring for a directory,
+ server_rec *server; /* Server_rec being configured for */
+ char *path; /* If configuring for a directory,
* pathname of that directory.
* NOPE! That's what it meant previous to the
* existance of <Files>, <Location> and regex
* matching. Now the only usefulness that can
- * be derived from this field is whether a command
- * is being called in a server context (path == NULL)
- * or being called in a dir context (path != NULL).
+ * be derived from this field is whether a command
+ * is being called in a server context (path == NULL)
+ * or being called in a dir context (path != NULL).
*/
- const command_rec *cmd; /* configuration command */
- const char *end_token; /* end token required to end a nested section */
- void *context; /* per_dir_config vector passed
+ const command_rec *cmd; /* configuration command */
+ const char *end_token; /* end token required to end a nested section */
+ void *context; /* per_dir_config vector passed
* to handle_command */
} cmd_parms;
@@ -189,129 +192,130 @@ typedef struct {
*/
typedef struct module_struct {
- int version; /* API version, *not* module version;
+ int version; /* API version, *not* module version;
* check that module is compatible with this
* version of the server.
*/
- int minor_version; /* API minor version. Provides API feature
- * milestones. Not checked during module init
+ int minor_version; /* API minor version. Provides API feature
+ * milestones. Not checked during module init
*/
- int module_index; /* Index to this modules structures in
+ int module_index; /* Index to this modules structures in
* config vectors.
*/
- const char *name;
- void *dynamic_load_handle;
-
- struct module_struct *next;
-
- unsigned long magic; /* Magic Cookie to identify a module structure;
- * It's mainly important for the DSO facility
- * (see also mod_so).
- */
-
- /* init() occurs after config parsing, but before any children are
- * forked.
- * Modules should not rely on the order in which create_server_config
- * and create_dir_config are called.
- */
- void (*init) (server_rec *, pool *);
- void *(*create_dir_config) (pool *p, char *dir);
- void *(*merge_dir_config) (pool *p, void *base_conf, void *new_conf);
- void *(*create_server_config) (pool *p, server_rec *s);
- void *(*merge_server_config) (pool *p, void *base_conf, void *new_conf);
-
- const command_rec *cmds;
- const handler_rec *handlers;
-
- /* Hooks for getting into the middle of server ops...
-
- * translate_handler --- translate URI to filename
- * access_checker --- check access by host address, etc. All of these
- * run; if all decline, that's still OK.
- * check_user_id --- get and validate user id from the HTTP request
- * auth_checker --- see if the user (from check_user_id) is OK *here*.
- * If all of *these* decline, the request is rejected
- * (as a SERVER_ERROR, since the module which was
- * supposed to handle this was configured wrong).
- * type_checker --- Determine MIME type of the requested entity;
- * sets content_type, _encoding and _language fields.
- * logger --- log a transaction.
- * post_read_request --- run right after read_request or internal_redirect,
- * and not run during any subrequests.
- */
-
- int (*translate_handler) (request_rec *);
- int (*ap_check_user_id) (request_rec *);
- int (*auth_checker) (request_rec *);
- int (*access_checker) (request_rec *);
- int (*type_checker) (request_rec *);
- int (*fixer_upper) (request_rec *);
- int (*logger) (request_rec *);
- int (*header_parser) (request_rec *);
-
- /* Regardless of the model the server uses for managing "units of
- * execution", i.e. multi-process, multi-threaded, hybrids of those,
- * there is the concept of a "heavy weight process". That is, a
- * process with its own memory space, file spaces, etc. This method,
- * child_init, is called once for each heavy-weight process before
- * any requests are served. Note that no provision is made yet for
- * initialization per light-weight process (i.e. thread). The
- * parameters passed here are the same as those passed to the global
- * init method above.
- */
- void (*child_init) (server_rec *, pool *);
- void (*child_exit) (server_rec *, pool *);
- int (*post_read_request) (request_rec *);
-
- /*
- * ANSI C guarantees us that we can at least _extend_ the module structure
- * with additional hooks without the need to change all existing modules.
- * Because: ``If there are fewer initializers in the list than members of
- * the structure, the trailing members are initialized with 0.'' (The C
- * Programming Language, 2nd Ed., A8.7 Initialization). So we just
- * have to put our additional hooks here:
- *
- * add_module:
- * Called from within ap_add_module() right after the module structure
- * was linked into the Apache internal module list. It is mainly
- * intended to be used to define configuration defines (<IfDefine>)
- * which have to be available directly after a LoadModule/AddModule.
- * Actually this is the earliest possible hook a module can use.
- *
- * remove_module:
- * Called from within ap_remove_module() right before the module
- * structure is kicked out from the Apache internal module list.
- * Actually this is last possible hook a module can use and exists for
- * consistency with the add_module hook.
- *
- * rewrite_command:
- * Called right after a configuration directive line was read and
- * before it is processed. It is mainly intended to be used for
- * rewriting directives in order to provide backward compatibility to
- * old directive variants.
- *
- * new_connection:
- * Called from within the internal new_connection() function, right
- * after the conn_rec structure for the new established connection was
- * created and before Apache starts processing the request with
- * ap_read_request(). It is mainly intended to be used to setup/run
- * connection dependent things like sending start headers for
- * on-the-fly compression, etc.
- *
- * close_connection:
- * Called from within the Apache dispatching loop just before any
- * ap_bclose() is performed on the socket connection, but a long time
- * before any pool cleanups are done for the connection (which can be
- * too late for some applications). It is mainly intended to be used
- * to close/finalize connection dependent things like sending end
- * headers for on-the-fly compression, etc.
- */
- void (*add_module) (struct module_struct *);
- void (*remove_module) (struct module_struct *);
- char *(*rewrite_command) (cmd_parms *, void *config, const char *);
- void (*new_connection) (conn_rec *);
- void (*close_connection) (conn_rec *);
+ const char *name;
+ void *dynamic_load_handle;
+
+ struct module_struct *next;
+
+ unsigned long magic; /* Magic Cookie to identify a module structure;
+ * It's mainly important for the DSO facility
+ * (see also mod_so).
+ */
+
+ /* init() occurs after config parsing, but before any children are
+ * forked.
+ * Modules should not rely on the order in which create_server_config
+ * and create_dir_config are called.
+ */
+ void (*init) (server_rec *, pool *);
+ void *(*create_dir_config) (pool *p, char *dir);
+ void *(*merge_dir_config) (pool *p, void *base_conf, void *new_conf);
+ void *(*create_server_config) (pool *p, server_rec *s);
+ void *(*merge_server_config) (pool *p, void *base_conf, void *new_conf);
+
+ const command_rec *cmds;
+ const handler_rec *handlers;
+
+ /* Hooks for getting into the middle of server ops...
+
+ * translate_handler --- translate URI to filename
+ * access_checker --- check access by host address, etc. All of these
+ * run; if all decline, that's still OK.
+ * check_user_id --- get and validate user id from the HTTP request
+ * auth_checker --- see if the user (from check_user_id) is OK *here*.
+ * If all of *these* decline, the request is rejected
+ * (as a SERVER_ERROR, since the module which was
+ * supposed to handle this was configured wrong).
+ * type_checker --- Determine MIME type of the requested entity;
+ * sets content_type, _encoding and _language fields.
+ * logger --- log a transaction.
+ * post_read_request --- run right after read_request or
+ * internal_redirect, and not run during any subrequests.
+ */
+
+ int (*translate_handler) (request_rec *);
+ int (*ap_check_user_id) (request_rec *);
+ int (*auth_checker) (request_rec *);
+ int (*access_checker) (request_rec *);
+ int (*type_checker) (request_rec *);
+ int (*fixer_upper) (request_rec *);
+ int (*logger) (request_rec *);
+ int (*header_parser) (request_rec *);
+
+ /* Regardless of the model the server uses for managing "units of
+ * execution", i.e. multi-process, multi-threaded, hybrids of those,
+ * there is the concept of a "heavy weight process". That is, a
+ * process with its own memory space, file spaces, etc. This method,
+ * child_init, is called once for each heavy-weight process before
+ * any requests are served. Note that no provision is made yet for
+ * initialization per light-weight process (i.e. thread). The
+ * parameters passed here are the same as those passed to the global
+ * init method above.
+ */
+ void (*child_init) (server_rec *, pool *);
+ void (*child_exit) (server_rec *, pool *);
+ int (*post_read_request) (request_rec *);
+
+ /*
+ * ANSI C guarantees us that we can at least extend the module structure
+ * with additional hooks without the need to change all existing modules.
+ * Because: ``If there are fewer initializers in the list than members of
+ * the structure, the trailing members are initialized with 0.'' (The C
+ * Programming Language, 2nd Ed., A8.7 Initialization). So we just
+ * have to put our additional hooks here:
+ *
+ * add_module:
+ * Called from within ap_add_module() right after the module
+ * structure was linked into the Apache internal module list.
+ * It is mainly intended to be used to define configuration defines
+ * (<IfDefine>) which have to be available directly after a
+ * LoadModule/AddModule. Actually this is the earliest possible
+ * hook a module can use.
+ *
+ * remove_module:
+ * Called from within ap_remove_module() right before the module
+ * structure is kicked out from the Apache internal module list.
+ * Actually this is last possible hook a module can use and exists
+ * for consistency with the add_module hook.
+ *
+ * rewrite_command:
+ * Called right after a configuration directive line was read and
+ * before it is processed. It is mainly intended to be used for
+ * rewriting directives in order to provide backward compatibility to
+ * old directive variants.
+ *
+ * new_connection:
+ * Called from within the internal new_connection() function, right
+ * after the conn_rec structure for the new established connection
+ * was created and before Apache starts processing the request with
+ * ap_read_request(). It is mainly intended to be used to setup/run
+ * connection dependent things like sending start headers for
+ * on-the-fly compression, etc.
+ *
+ * close_connection:
+ * Called from within the Apache dispatching loop just before any
+ * ap_bclose() is performed on the socket connection, but a long time
+ * before any pool cleanups are done for the connection (which can be
+ * too late for some applications). It is mainly intended to be used
+ * to close/finalize connection dependent things like sending end
+ * headers for on-the-fly compression, etc.
+ */
+ void (*add_module) (struct module_struct *);
+ void (*remove_module) (struct module_struct *);
+ char *(*rewrite_command) (cmd_parms *, void *config, const char *);
+ void (*new_connection) (conn_rec *);
+ void (*close_connection) (conn_rec *);
} module;
/* Initializer for the first few module slots, which are only
@@ -347,7 +351,8 @@ API_EXPORT(void) ap_set_module_config(void *conf_vector, module *m, void *val);
/* Generic command handling function... */
API_EXPORT_NONSTD(const char *) ap_set_string_slot(cmd_parms *, char *, char *);
-API_EXPORT_NONSTD(const char *) ap_set_string_slot_lower(cmd_parms *, char *, char *);
+API_EXPORT_NONSTD(const char *) ap_set_string_slot_lower(cmd_parms *, char *,
+ char *);
API_EXPORT_NONSTD(const char *) ap_set_flag_slot(cmd_parms *, char *, int);
API_EXPORT_NONSTD(const char *) ap_set_file_slot(cmd_parms *, char *, char *);
@@ -386,7 +391,8 @@ API_EXPORT(void) ap_single_module_configure(pool *p, server_rec *s, module *m);
/* For http_main.c... */
-API_EXPORT(server_rec *) ap_read_config(pool *conf_pool, pool *temp_pool, char *config_name);
+API_EXPORT(server_rec *) ap_read_config(pool *conf_pool, pool *temp_pool,
+ char *config_name);
API_EXPORT(void) ap_init_modules(pool *p, server_rec *s);
API_EXPORT(void) ap_child_init_modules(pool *p, server_rec *s);
API_EXPORT(void) ap_child_exit_modules(pool *p, server_rec *s);
@@ -404,14 +410,16 @@ CORE_EXPORT(void *) ap_merge_per_dir_configs(pool *p, void *base, void *new);
/* For http_core.c... (<Directory> command and virtual hosts) */
CORE_EXPORT(int) ap_parse_htaccess(void **result, request_rec *r, int override,
- const char *path, const char *access_name);
+ const char *path, const char *access_name);
CORE_EXPORT(const char *) ap_init_virtual_host(pool *p, const char *hostname,
- server_rec *main_server, server_rec **);
-CORE_EXPORT(void) ap_process_resource_config(server_rec *s, char *fname, pool *p, pool *ptemp);
+ server_rec *main_server, server_rec **);
+CORE_EXPORT(void) ap_process_resource_config(server_rec *s, char *fname,
+ pool *p, pool *ptemp);
/* ap_check_cmd_context() definitions: */
-API_EXPORT(const char *) ap_check_cmd_context(cmd_parms *cmd, unsigned forbidden);
+API_EXPORT(const char *) ap_check_cmd_context(cmd_parms *cmd,
+ unsigned forbidden);
/* ap_check_cmd_context(): Forbidden in: */
#define NOT_IN_VIRTUALHOST 0x01 /* <Virtualhost> */
@@ -420,17 +428,22 @@ API_EXPORT(const char *) ap_check_cmd_context(cmd_parms *cmd, unsigned forbidden
#define NOT_IN_LOCATION 0x08 /* <Location> */
#define NOT_IN_FILES 0x10 /* <Files> */
#define NOT_IN_DIR_LOC_FILE (NOT_IN_DIRECTORY|NOT_IN_LOCATION|NOT_IN_FILES) /* <Directory>/<Location>/<Files>*/
-#define GLOBAL_ONLY (NOT_IN_VIRTUALHOST|NOT_IN_LIMIT|NOT_IN_DIR_LOC_FILE)
+#define GLOBAL_ONLY (NOT_IN_VIRTUALHOST|NOT_IN_LIMIT|NOT_IN_DIR_LOC_FILE)
/* Module-method dispatchers, also for http_request.c */
API_EXPORT(int) ap_translate_name(request_rec *);
-API_EXPORT(int) ap_check_access(request_rec *); /* check access on non-auth basis */
-API_EXPORT(int) ap_check_user_id(request_rec *); /* obtain valid username from client auth */
-API_EXPORT(int) ap_check_auth(request_rec *); /* check (validated) user is authorized here */
-API_EXPORT(int) ap_find_types(request_rec *); /* identify MIME type */
-API_EXPORT(int) ap_run_fixups(request_rec *); /* poke around for other metainfo, etc.... */
+/* check access on non-auth basis */
+API_EXPORT(int) ap_check_access(request_rec *);
+/* obtain valid username from client auth */
+API_EXPORT(int) ap_check_user_id(request_rec *);
+/* check (validated) user is authorized here */
+API_EXPORT(int) ap_check_auth(request_rec *);
+/* identify MIME type */
+API_EXPORT(int) ap_find_types(request_rec *);
+/* poke around for other metainfo, etc.... */
+API_EXPORT(int) ap_run_fixups(request_rec *);
API_EXPORT(int) ap_invoke_handler(request_rec *);
API_EXPORT(int) ap_log_transaction(request_rec *r);
API_EXPORT(int) ap_header_parse(request_rec *);
@@ -438,10 +451,14 @@ API_EXPORT(int) ap_run_post_read_request(request_rec *);
/* for mod_perl */
-CORE_EXPORT(const command_rec *) ap_find_command(const char *name, const command_rec *cmds);
-CORE_EXPORT(const command_rec *) ap_find_command_in_modules(const char *cmd_name, module **mod);
-CORE_EXPORT(void *) ap_set_config_vectors(cmd_parms *parms, void *config, module *mod);
-CORE_EXPORT(const char *) ap_handle_command(cmd_parms *parms, void *config, const char *l);
+CORE_EXPORT(const command_rec *) ap_find_command(const char *name,
+ const command_rec *cmds);
+CORE_EXPORT(const command_rec *) ap_find_command_in_modules(const char
+ *cmd_name, module **mod);
+CORE_EXPORT(void *) ap_set_config_vectors(cmd_parms *parms, void *config,
+ module *mod);
+CORE_EXPORT(const char *) ap_handle_command(cmd_parms *parms, void *config,
+ const char *l);
#endif
diff --git a/usr.sbin/httpd/src/include/http_log.h b/usr.sbin/httpd/src/include/http_log.h
index 780017b7a3c..9c280047907 100644
--- a/usr.sbin/httpd/src/include/http_log.h
+++ b/usr.sbin/httpd/src/include/http_log.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: http_log.h,v 1.10 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -95,12 +97,12 @@ API_EXPORT(void) ap_open_logs (server_rec *, pool *p);
* like "%s", followed by the string containing the untrusted data.
*/
API_EXPORT_NONSTD(void) ap_log_error(const char *file, int line, int level,
- const server_rec *s, const char *fmt, ...)
- __attribute__((format(printf,5,6)));
+ const server_rec *s, const char *fmt, ...)
+ __attribute__((format(printf,5,6)));
API_EXPORT_NONSTD(void) ap_log_rerror(const char *file, int line, int level,
- const request_rec *s, const char *fmt, ...)
- __attribute__((format(printf,5,6)));
-API_EXPORT(void) ap_error_log2stderr (server_rec *);
+ const request_rec *s, const char *fmt, ...)
+ __attribute__((format(printf,5,6)));
+API_EXPORT(void) ap_error_log2stderr (server_rec *);
API_EXPORT(void) ap_log_pid (pool *p, char *fname);
/* These are for legacy code, new code should use ap_log_error,
@@ -108,17 +110,17 @@ API_EXPORT(void) ap_log_pid (pool *p, char *fname);
*/
API_EXPORT(void) ap_log_error_old(const char *err, server_rec *s);
API_EXPORT(void) ap_log_unixerr(const char *routine, const char *file,
- const char *msg, server_rec *s);
+ const char *msg, server_rec *s);
API_EXPORT_NONSTD(void) ap_log_printf(const server_rec *s, const char *fmt, ...)
- __attribute__((format(printf,2,3)));
+ __attribute__((format(printf,2,3)));
API_EXPORT(void) ap_log_reason(const char *reason, const char *fname,
- request_rec *r);
+ request_rec *r);
typedef struct piped_log {
- pool *p;
- char *program;
- int pid;
- int fds[2];
+ pool *p;
+ char *program;
+ int pid;
+ int fds[2];
} piped_log;
API_EXPORT(piped_log *) ap_open_piped_log (pool *p, const char *program);
diff --git a/usr.sbin/httpd/src/include/http_main.h b/usr.sbin/httpd/src/include/http_main.h
index 7db612a6015..11292755170 100644
--- a/usr.sbin/httpd/src/include/http_main.h
+++ b/usr.sbin/httpd/src/include/http_main.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: http_main.h,v 1.12 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -123,7 +125,8 @@ API_EXPORT(void) ap_reset_timeout(request_rec *);
API_EXPORT(void) ap_child_terminate(request_rec *r);
API_EXPORT(void) ap_sync_scoreboard_image(void);
-API_EXPORT(int) ap_update_child_status(int child_num, int status, request_rec *r);
+API_EXPORT(int) ap_update_child_status(int child_num, int status,
+ request_rec *r);
void ap_time_process_request(int child_num, int status);
API_EXPORT(unsigned int) ap_set_callback_and_alarm(void (*fn) (int), int x);
API_EXPORT(int) ap_check_alarm(void);
@@ -152,8 +155,8 @@ char *ap_init_mutex_method(char *t);
* disable this feature, use -1 for write_fd.
*/
API_EXPORT(void) ap_register_other_child(int pid,
- void (*maintenance) (int reason, void *data, ap_wait_t status), void *data,
- int write_fd);
+ void (*maintenance) (int reason, void *data, ap_wait_t status),
+ void *data, int write_fd);
#define OC_REASON_DEATH 0 /* child has died, caller must call
* unregister still */
#define OC_REASON_UNWRITABLE 1 /* write_fd is unwritable */
diff --git a/usr.sbin/httpd/src/include/http_protocol.h b/usr.sbin/httpd/src/include/http_protocol.h
index 97df961e556..7afa88a497e 100644
--- a/usr.sbin/httpd/src/include/http_protocol.h
+++ b/usr.sbin/httpd/src/include/http_protocol.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: http_protocol.h,v 1.11 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -74,8 +76,8 @@ API_EXPORT(request_rec *) ap_read_request(conn_rec *c);
/* Send a single HTTP header field */
-API_EXPORT_NONSTD(int) ap_send_header_field(request_rec *r, const char *fieldname,
- const char *fieldval);
+API_EXPORT_NONSTD(int) ap_send_header_field(request_rec *r,
+ const char *fieldname, const char *fieldval);
/* Send the minimal part of an HTTP response header... but modules should be
* very careful about using this, and should prefer ap_send_http_header().
@@ -151,7 +153,7 @@ API_EXPORT(int) ap_rwrite(const void *buf, int nbyte, request_rec *r);
API_EXPORT_NONSTD(int) ap_rvputs(request_rec *r,...);
API_EXPORT(int) ap_vrprintf(request_rec *r, const char *fmt, va_list vlist);
API_EXPORT_NONSTD(int) ap_rprintf(request_rec *r, const char *fmt,...)
- __attribute__((format(printf,2,3)));
+ __attribute__((format(printf,2,3)));
API_EXPORT(int) ap_rflush(request_rec *r);
/*
@@ -205,7 +207,8 @@ API_EXPORT(int) ap_get_basic_auth_pw(request_rec *r, const char **pw);
* Also, a wrapup function to keep the internal accounting straight.
*/
-API_EXPORT(void) ap_set_sub_req_protocol(request_rec *rnew, const request_rec *r);
+API_EXPORT(void) ap_set_sub_req_protocol(request_rec *rnew,
+ const request_rec *r);
API_EXPORT(void) ap_finalize_sub_req_protocol(request_rec *sub_r);
/* This is also useful for putting sub_reqs and internal_redirects together */
diff --git a/usr.sbin/httpd/src/include/http_request.h b/usr.sbin/httpd/src/include/http_request.h
index 2ddf002e1e0..a2463b5290c 100644
--- a/usr.sbin/httpd/src/include/http_request.h
+++ b/usr.sbin/httpd/src/include/http_request.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: http_request.h,v 1.8 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -84,12 +86,11 @@ extern "C" {
*/
API_EXPORT(request_rec *) ap_sub_req_lookup_uri(const char *new_file,
- const request_rec *r);
+ const request_rec *r);
API_EXPORT(request_rec *) ap_sub_req_lookup_file(const char *new_file,
- const request_rec *r);
+ const request_rec *r);
API_EXPORT(request_rec *) ap_sub_req_method_uri(const char *method,
- const char *new_file,
- const request_rec *r);
+ const char *new_file, const request_rec *r);
API_EXPORT(int) ap_run_sub_req(request_rec *r);
API_EXPORT(void) ap_destroy_sub_req(request_rec *r);
@@ -100,7 +101,8 @@ API_EXPORT(void) ap_destroy_sub_req(request_rec *r);
*/
API_EXPORT(void) ap_internal_redirect(const char *new_uri, request_rec *);
-API_EXPORT(void) ap_internal_redirect_handler(const char *new_uri, request_rec *);
+API_EXPORT(void) ap_internal_redirect_handler(const char *new_uri,
+ request_rec *);
API_EXPORT(int) ap_some_auth_required(request_rec *r);
API_EXPORT(int) ap_is_initial_req(request_rec *r);
API_EXPORT(time_t) ap_update_mtime(request_rec *r, time_t dependency_mtime);
diff --git a/usr.sbin/httpd/src/include/http_vhost.h b/usr.sbin/httpd/src/include/http_vhost.h
index 456efee5d13..0677e51654f 100644
--- a/usr.sbin/httpd/src/include/http_vhost.h
+++ b/usr.sbin/httpd/src/include/http_vhost.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: http_vhost.h,v 1.7 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -70,10 +72,12 @@ API_EXPORT(void) ap_init_vhost_config(pool *p);
API_EXPORT(void) ap_fini_vhost_config(pool *p, server_rec *main_server);
/* handle addresses in <VirtualHost> statement */
-API_EXPORT(const char *) ap_parse_vhost_addrs(pool *p, const char *hostname, server_rec *s);
+API_EXPORT(const char *) ap_parse_vhost_addrs(pool *p, const char *hostname,
+ server_rec *s);
/* handle NameVirtualHost directive */
-API_EXPORT_NONSTD(const char *) ap_set_name_virtual_host (cmd_parms *cmd, void *dummy, char *arg);
+API_EXPORT_NONSTD(const char *) ap_set_name_virtual_host (cmd_parms *cmd,
+ void *dummy, char *arg);
/* given an ip address only, give our best guess as to what vhost it is */
API_EXPORT(void) ap_update_vhost_given_ip(conn_rec *conn);
diff --git a/usr.sbin/httpd/src/include/httpd.h b/usr.sbin/httpd/src/include/httpd.h
index 3a968b81be3..2a6d4b0d5c9 100644
--- a/usr.sbin/httpd/src/include/httpd.h
+++ b/usr.sbin/httpd/src/include/httpd.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: httpd.h,v 1.25 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -75,7 +77,7 @@ extern "C" {
/*
* Include the Extended API headers.
* Don't move the position. It has to be after ap_alloc.h because it uses the
- * pool stuff but before buff.h because the buffer stuff uses the EAPI, too.
+ * pool stuff but before buff.h because the buffer stuff uses the EAPI, too.
*/
#include "ap_hook.h"
#include "ap_ctx.h"
@@ -111,11 +113,11 @@ extern "C" {
#define TARGET "httpd"
#endif
-/*
+/*
* --------- You shouldn't have to edit anything below this line ----------
*
* Any modifications to any defaults not defined above should be done in the
- * respective config. file.
+ * respective config. file.
*
*/
@@ -132,8 +134,12 @@ extern "C" {
#define DEFAULT_HTTP_PORT 80
#define DEFAULT_HTTPS_PORT 443
#define ap_is_default_port(port,r) ((port) == ap_default_port(r))
-#define ap_http_method(r) (((r)->ctx != NULL && ap_ctx_get((r)->ctx, "ap::http::method") != NULL) ? ((char *)ap_ctx_get((r)->ctx, "ap::http::method")) : "http")
-#define ap_default_port(r) (((r)->ctx != NULL && ap_ctx_get((r)->ctx, "ap::default::port") != NULL) ? atoi((char *)ap_ctx_get((r)->ctx, "ap::default::port")) : DEFAULT_HTTP_PORT)
+#define ap_http_method(r) (((r)->ctx != NULL && ap_ctx_get((r)->ctx, \
+ "ap::http::method") != NULL) ? ((char *)ap_ctx_get((r)->ctx, \
+ "ap::http::method")) : "http")
+#define ap_default_port(r) (((r)->ctx != NULL && ap_ctx_get((r)->ctx, \
+ "ap::default::port") != NULL) ? atoi((char *)ap_ctx_get((r)->ctx, \
+ "ap::default::port")) : DEFAULT_HTTP_PORT)
/* --------- Default user name and group name running standalone ---------- */
/* --- These may be specified as numbers by placing a # before a number --- */
@@ -299,7 +305,7 @@ extern "C" {
* A fatal error, resulting in the whole server aborting.
* If a child exits with this error, the parent process
* considers this a server-wide fatal error and aborts.
- *
+ *
*/
#define APEXIT_OK 0x0
#define APEXIT_INIT 0x2
@@ -323,7 +329,7 @@ extern "C" {
/*
* Unix only:
- * Path to Shared Memory Files
+ * Path to Shared Memory Files
*/
#ifndef EAPI_MM_CORE_PATH
#define EAPI_MM_CORE_PATH "logs/mm"
@@ -352,8 +358,8 @@ extern "C" {
* by listen(2). Under some systems, it should be increased if you
* are experiencing a heavy TCP SYN flood attack.
*
- * It defaults to 511 instead of 512 because some systems store it
- * as an 8-bit datatype; 512 truncated to 8-bits is 0, while 511 is
+ * It defaults to 511 instead of 512 because some systems store it
+ * as an 8-bit datatype; 512 truncated to 8-bits is 0, while 511 is
* 255 when truncated.
*/
@@ -388,7 +394,7 @@ extern "C" {
#endif /* default limit on number of request header fields */
/*
- * The default default character set name to add if AddDefaultCharset is
+ * The default default character set name to add if AddDefaultCharset is
* enabled. Overridden with AddDefaultCharsetName.
*/
#define DEFAULT_ADD_DEFAULT_CHARSET_NAME "iso-8859-1"
@@ -400,7 +406,7 @@ extern "C" {
* The tokens are listed in order of their significance for identifying the
* application.
*
- * "Product tokens should be short and to the point -- use of them for
+ * "Product tokens should be short and to the point -- use of them for
* advertizing or other non-essential information is explicitly forbidden."
*
* Example: "Apache/1.1.0 MrWidget/0.1-alpha"
@@ -415,10 +421,10 @@ extern "C" {
#define SERVER_REVISION SERVER_BASEREVISION
#define SERVER_VERSION SERVER_PRODUCT "/" SERVER_REVISION
enum server_token_type {
- SrvTk_MIN, /* eg: Apache/1.3.0 */
- SrvTk_OS, /* eg: Apache/1.3.0 (UNIX) */
- SrvTk_FULL, /* eg: Apache/1.3.0 (UNIX) PHP/3.0 FooBar/1.2b */
- SrvTk_PRODUCT_ONLY /* eg: Apache */
+ SrvTk_MIN, /* eg: Apache/1.3.0 */
+ SrvTk_OS, /* eg: Apache/1.3.0 (UNIX) */
+ SrvTk_FULL, /* eg: Apache/1.3.0 (UNIX) PHP/3.0 FooBar/1.2b */
+ SrvTk_PRODUCT_ONLY /* eg: Apache */
};
API_EXPORT(const char *) ap_get_server_version(void);
@@ -438,7 +444,7 @@ API_EXPORT(void) ap_add_config_define(const char *define);
#endif
#define DECLINED -1 /* Module declines to handle */
-#define DONE -2 /* Module has served the response completely
+#define DONE -2 /* Module has served the response completely
* - it's safe to die() with no more output
*/
#define OK 0 /* Module has handled this stage. */
@@ -619,11 +625,11 @@ API_EXPORT(void) ap_add_config_define(const char *define);
* each request.
*/
struct htaccess_result {
- char *dir; /* the directory to which this applies */
- int override; /* the overrides allowed for the .htaccess file */
- void *htaccess; /* the configuration directives */
-/* the next one, or NULL if no more; N.B. never change this */
- const struct htaccess_result *next;
+ char *dir; /* the directory to which this applies */
+ int override; /* the overrides allowed for the .htaccess file */
+ void *htaccess; /* the configuration directives */
+ /* the next one, or NULL if no more; N.B. never change this */
+ const struct htaccess_result *next;
};
typedef struct conn_rec conn_rec;
@@ -641,47 +647,48 @@ enum proxyreqtype {
struct request_rec {
- ap_pool *pool;
- conn_rec *connection;
- server_rec *server;
+ ap_pool *pool;
+ conn_rec *connection;
+ server_rec *server;
- request_rec *next; /* If we wind up getting redirected,
+ request_rec *next; /* If we wind up getting redirected,
* pointer to the request we redirected to.
*/
- request_rec *prev; /* If this is an internal redirect,
+ request_rec *prev; /* If this is an internal redirect,
* pointer to where we redirected *from*.
*/
- request_rec *main; /* If this is a sub_request (see request.h)
+ request_rec *main; /* If this is a sub_request (see request.h)
* pointer back to the main request.
*/
- /* Info about the request itself... we begin with stuff that only
- * protocol.c should ever touch...
- */
+ /* Info about the request itself... we begin with stuff that only
+ * protocol.c should ever touch...
+ */
- char *the_request; /* First line of request, so we can log it */
- int assbackwards; /* HTTP/0.9, "simple" request */
- enum proxyreqtype proxyreq;/* A proxy request (calculated during
+ char *the_request; /* First line of request, so we can log it */
+ int assbackwards; /* HTTP/0.9, "simple" request */
+ enum proxyreqtype proxyreq;/* A proxy request (calculated during
* post_read_request or translate_name) */
- int header_only; /* HEAD request, as opposed to GET */
- char *protocol; /* Protocol, as given to us, or HTTP/0.9 */
- int proto_num; /* Number version of protocol; 1.1 = 1001 */
- const char *hostname; /* Host, as set by full URI or Host: */
+ int header_only; /* HEAD request, as opposed to GET */
+ char *protocol; /* Protocol, as given to us, or HTTP/0.9 */
+ int proto_num; /* Number version of protocol; 1.1 = 1001 */
+ const char *hostname; /* Host, as set by full URI or Host: */
- time_t request_time; /* When the request started */
+ time_t request_time; /* When the request started */
- const char *status_line; /* Status line, if set by script */
- int status; /* In any case */
+ const char *status_line; /* Status line, if set by script */
+ int status; /* In any case */
- /* Request method, two ways; also, protocol, etc.. Outside of protocol.c,
- * look, but don't touch.
- */
+ /* Request method, two ways; also, protocol, etc..
+ * Outside of protocol.c,
+ * look, but don't touch.
+ */
- const char *method; /* GET, HEAD, POST, etc. */
- int method_number; /* M_GET, M_POST, etc. */
+ const char *method; /* GET, HEAD, POST, etc. */
+ int method_number; /* M_GET, M_POST, etc. */
- /*
+ /*
allowed is a bitvector of the allowed methods.
A handler must ensure that the request method is one that
@@ -700,107 +707,109 @@ struct request_rec {
module which does *not* implement GET should probably return
METHOD_NOT_ALLOWED. Unfortunately this means that a Script GET
handler can't be installed by mod_actions.
- */
- int allowed; /* Allowed methods - for 405, OPTIONS, etc */
-
- int sent_bodyct; /* byte count in stream is for body */
- long bytes_sent; /* body byte count, for easy access */
- time_t mtime; /* Time the resource was last modified */
-
- /* HTTP/1.1 connection-level features */
-
- int chunked; /* sending chunked transfer-coding */
- int byterange; /* number of byte ranges */
- char *boundary; /* multipart/byteranges boundary */
- const char *range; /* The Range: header */
- long clength; /* The "real" content length */
-
- long remaining; /* bytes left to read */
- long read_length; /* bytes that have been read */
- int read_body; /* how the request body should be read */
- int read_chunked; /* reading chunked transfer-coding */
- unsigned expecting_100; /* is client waiting for a 100 response? */
-
- /* MIME header environments, in and out. Also, an array containing
- * environment variables to be passed to subprocesses, so people can
- * write modules to add to that environment.
- *
- * The difference between headers_out and err_headers_out is that the
- * latter are printed even on error, and persist across internal redirects
- * (so the headers printed for ErrorDocument handlers will have them).
- *
- * The 'notes' table is for notes from one module to another, with no
- * other set purpose in mind...
- */
-
- table *headers_in;
- table *headers_out;
- table *err_headers_out;
- table *subprocess_env;
- table *notes;
-
- /* content_type, handler, content_encoding, content_language, and all
- * content_languages MUST be lowercased strings. They may be pointers
- * to static strings; they should not be modified in place.
- */
- const char *content_type; /* Break these out --- we dispatch on 'em */
- const char *handler; /* What we *really* dispatch on */
-
- const char *content_encoding;
- const char *content_language; /* for back-compat. only -- do not use */
- array_header *content_languages; /* array of (char*) */
-
- char *vlist_validator; /* variant list validator (if negotiated) */
-
- int no_cache;
- int no_local_copy;
-
- /* What object is being requested (either directly, or via include
- * or content-negotiation mapping).
- */
-
- char *unparsed_uri; /* the uri without any parsing performed */
- char *uri; /* the path portion of the URI */
- char *filename; /* filename if found, otherwise NULL */
- char *path_info;
- char *args; /* QUERY_ARGS, if any */
- struct stat finfo; /* ST_MODE set to zero if no such file */
- uri_components parsed_uri; /* components of uri, dismantled */
-
- /* Various other config info which may change with .htaccess files
- * These are config vectors, with one void* pointer for each module
- * (the thing pointed to being the module's business).
- */
-
- void *per_dir_config; /* Options set in config files, etc. */
- void *request_config; /* Notes on *this* request */
-
-/*
- * a linked list of the configuration directives in the .htaccess files
- * accessed by this request.
- * N.B. always add to the head of the list, _never_ to the end.
- * that way, a sub request's list can (temporarily) point to a parent's list
- */
- const struct htaccess_result *htaccess;
-
- /* On systems with case insensitive file systems (Windows, OS/2, etc.),
- * r->filename is case canonicalized (folded to either lower or upper
- * case, depending on the specific system) to accomodate file access
- * checking. case_preserved_filename is the same as r->filename
- * except case is preserved. There is at least one instance where Apache
- * needs access to the case preserved filename: Java class files published
- * with WebDAV need to preserve filename case to make the Java compiler
- * happy.
- */
- char *case_preserved_filename;
-
-/* Things placed at the end of the record to avoid breaking binary
- * compatibility. It would be nice to remember to reorder the entire
- * record to improve 64bit alignment the next time we need to break
- * binary compatibility for some other reason.
- */
-
- ap_ctx *ctx;
+ */
+ int allowed; /* Allowed methods - for 405, OPTIONS, etc */
+
+ int sent_bodyct; /* byte count in stream is for body */
+ long bytes_sent; /* body byte count, for easy access */
+ time_t mtime; /* Time the resource was last modified */
+
+ /* HTTP/1.1 connection-level features */
+
+ int chunked; /* sending chunked transfer-coding */
+ int byterange; /* number of byte ranges */
+ char *boundary; /* multipart/byteranges boundary */
+ const char *range; /* The Range: header */
+ long clength; /* The "real" content length */
+
+ long remaining; /* bytes left to read */
+ long read_length; /* bytes that have been read */
+ int read_body; /* how the request body should be read */
+ int read_chunked; /* reading chunked transfer-coding */
+ unsigned expecting_100; /* is client waiting for a 100 response? */
+
+ /* MIME header environments, in and out. Also, an array containing
+ * environment variables to be passed to subprocesses, so people can
+ * write modules to add to that environment.
+ *
+ * The difference between headers_out and err_headers_out is that the
+ * latter are printed even on error, and persist across internal
+ * redirects (so the headers printed for ErrorDocument handlers will
+ * have them).
+ *
+ * The 'notes' table is for notes from one module to another, with no
+ * other set purpose in mind...
+ */
+
+ table *headers_in;
+ table *headers_out;
+ table *err_headers_out;
+ table *subprocess_env;
+ table *notes;
+
+ /* content_type, handler, content_encoding, content_language, and all
+ * content_languages MUST be lowercased strings. They may be pointers
+ * to static strings; they should not be modified in place.
+ */
+ const char *content_type; /* Break these out we dispatch on 'em */
+ const char *handler; /* What we *really* dispatch on */
+
+ const char *content_encoding;
+ const char *content_language; /* for back-compat. only- do not use */
+ array_header *content_languages; /* array of (char*) */
+
+ char *vlist_validator; /* variant list validator (if negotiated) */
+
+ int no_cache;
+ int no_local_copy;
+
+ /* What object is being requested (either directly, or via include
+ * or content-negotiation mapping).
+ */
+
+ char *unparsed_uri; /* the uri without any parsing performed */
+ char *uri; /* the path portion of the URI */
+ char *filename; /* filename if found, otherwise NULL */
+ char *path_info;
+ char *args; /* QUERY_ARGS, if any */
+ struct stat finfo; /* ST_MODE set to zero if no such file */
+ uri_components parsed_uri; /* components of uri, dismantled */
+
+ /* Various other config info which may change with .htaccess files
+ * These are config vectors, with one void* pointer for each module
+ * (the thing pointed to being the module's business).
+ */
+
+ void *per_dir_config; /* Options set in config files, etc. */
+ void *request_config; /* Notes on *this* request */
+
+ /*
+ * a linked list of the configuration directives in the .htaccess files
+ * accessed by this request.
+ * N.B. always add to the head of the list, _never_ to the end.
+ * that way, a sub request's list can (temporarily) point to a parent's
+ * list
+ */
+ const struct htaccess_result *htaccess;
+
+ /* On systems with case insensitive file systems (Windows, OS/2, etc.),
+ * r->filename is case canonicalized (folded to either lower or upper
+ * case, depending on the specific system) to accomodate file access
+ * checking. case_preserved_filename is the same as r->filename
+ * except case is preserved. There is at least one instance where Apache
+ * needs access to the case preserved filename: Java class files
+ * published with WebDAV need to preserve filename case to make the
+ * Java compiler happy.
+ */
+ char *case_preserved_filename;
+
+ /* Things placed at the end of the record to avoid breaking binary
+ * compatibility. It would be nice to remember to reorder the entire
+ * record to improve 64bit alignment the next time we need to break
+ * binary compatibility for some other reason.
+ */
+
+ ap_ctx *ctx;
};
@@ -809,47 +818,47 @@ struct request_rec {
struct conn_rec {
- ap_pool *pool;
- server_rec *server;
- server_rec *base_server; /* Physical vhost this conn come in on */
- void *vhost_lookup_data; /* used by http_vhost.c */
+ ap_pool *pool;
+ server_rec *server;
+ server_rec *base_server;/* Physical vhost this conn come in on */
+ void *vhost_lookup_data; /* used by http_vhost.c */
- /* Information about the connection itself */
+ /* Information about the connection itself */
- int child_num; /* The number of the child handling conn_rec */
- BUFF *client; /* Connection to the guy */
+ int child_num; /* The number of the child handling conn_rec */
+ BUFF *client; /* Connection to the guy */
- /* Who is the client? */
+ /* Who is the client? */
- struct sockaddr_in local_addr; /* local address */
- struct sockaddr_in remote_addr; /* remote address */
- char *remote_ip; /* Client's IP address */
- char *remote_host; /* Client's DNS name, if known.
+ struct sockaddr_in local_addr; /* local address */
+ struct sockaddr_in remote_addr; /* remote address */
+ char *remote_ip; /* Client's IP address */
+ char *remote_host; /* Client's DNS name, if known.
* NULL if DNS hasn't been checked,
* "" if it has and no address was found.
* N.B. Only access this though
* get_remote_host() */
- char *remote_logname; /* Only ever set if doing rfc1413 lookups.
+ char *remote_logname; /* Only ever set if doing rfc1413 lookups.
* N.B. Only access this through
* get_remote_logname() */
- char *user; /* If an authentication check was made,
+ char *user; /* If an authentication check was made,
* this gets set to the user name. We assume
* that there's only one user per connection(!)
*/
- char *ap_auth_type; /* Ditto. */
+ char *ap_auth_type; /* Ditto. */
- unsigned aborted:1; /* Are we still talking? */
- signed int keepalive:2; /* Are we using HTTP Keep-Alive?
+ unsigned aborted:1; /* Are we still talking? */
+ signed int keepalive:2; /* Are we using HTTP Keep-Alive?
* -1 fatal error, 0 undecided, 1 yes */
- unsigned keptalive:1; /* Did we use HTTP Keep-Alive? */
- signed int double_reverse:2;/* have we done double-reverse DNS?
+ unsigned keptalive:1; /* Did we use HTTP Keep-Alive? */
+ signed int double_reverse:2;/* have we done double-reverse DNS?
* -1 yes/failure, 0 not yet, 1 yes/success */
- int keepalives; /* How many times have we used it? */
- char *local_ip; /* server IP address */
- char *local_host; /* used for ap_get_server_name when
+ int keepalives; /* How many times have we used it? */
+ char *local_ip; /* server IP address */
+ char *local_host; /* used for ap_get_server_name when
* UseCanonicalName is set to DNS
* (ignores setting of HostnameLookups) */
- ap_ctx *ctx;
+ ap_ctx *ctx;
};
/* Per-vhost config... */
@@ -861,78 +870,78 @@ struct conn_rec {
typedef struct server_addr_rec server_addr_rec;
struct server_addr_rec {
- server_addr_rec *next;
- struct in_addr host_addr; /* The bound address, for this server */
- unsigned short host_port; /* The bound port, for this server */
- char *virthost; /* The name given in <VirtualHost> */
+ server_addr_rec *next;
+ struct in_addr host_addr; /* The bound address, for this server */
+ unsigned short host_port; /* The bound port, for this server */
+ char *virthost; /* The name given in <VirtualHost> */
};
struct server_rec {
- server_rec *next;
+ server_rec *next;
- /* description of where the definition came from */
- const char *defn_name;
- unsigned defn_line_number;
+ /* description of where the definition came from */
+ const char *defn_name;
+ unsigned defn_line_number;
- /* Full locations of server config info */
+ /* Full locations of server config info */
- char *srm_confname;
- char *access_confname;
+ char *srm_confname;
+ char *access_confname;
- /* Contact information */
+ /* Contact information */
- char *server_admin;
- char *server_hostname;
- unsigned short port; /* for redirects, etc. */
+ char *server_admin;
+ char *server_hostname;
+ unsigned short port; /* for redirects, etc. */
- /* Log files --- note that transfer log is now in the modules... */
+ /* Log files --- note that transfer log is now in the modules... */
- char *error_fname;
- FILE *error_log;
- int loglevel;
+ char *error_fname;
+ FILE *error_log;
+ int loglevel;
- /* Module-specific configuration for server, and defaults... */
+ /* Module-specific configuration for server, and defaults... */
- int is_virtual; /* true if this is the virtual server */
- void *module_config; /* Config vector containing pointers to
+ int is_virtual; /* true if this is the virtual server */
+ void *module_config; /* Config vector containing pointers to
* modules' per-server config structures.
*/
- void *lookup_defaults; /* MIME type info, etc., before we start
+ void *lookup_defaults; /* MIME type info, etc., before we start
* checking per-directory info.
*/
- /* Transaction handling */
-
- server_addr_rec *addrs;
- int timeout; /* Timeout, in seconds, before we give up */
- int keep_alive_timeout; /* Seconds we'll wait for another request */
- int keep_alive_max; /* Maximum requests per connection */
- int keep_alive; /* Use persistent connections? */
- int send_buffer_size; /* size of TCP send buffer (in bytes) */
-
- char *path; /* Pathname for ServerPath */
- int pathlen; /* Length of path */
-
- array_header *names; /* Normal names for ServerAlias servers */
- array_header *wild_names; /* Wildcarded names for ServerAlias servers */
-
- uid_t server_uid; /* effective user id when calling exec wrapper */
- gid_t server_gid; /* effective group id when calling exec wrapper */
-
- int limit_req_line; /* limit on size of the HTTP request line */
- int limit_req_fieldsize; /* limit on size of any request header field */
- int limit_req_fields; /* limit on number of request header fields */
-
- ap_ctx *ctx;
-};
-
-/* These are more like real hosts than virtual hosts */
-struct listen_rec {
- listen_rec *next;
- struct sockaddr_in local_addr; /* local IP address and port */
- int fd;
- int used; /* Only used during restart */
-/* more stuff here, like which protocol is bound to the port */
+ /* Transaction handling */
+
+ server_addr_rec *addrs;
+ int timeout; /* Timeout, in seconds, before we give up */
+ int keep_alive_timeout; /* Seconds we'll wait for another request */
+ int keep_alive_max; /* Maximum requests per connection */
+ int keep_alive; /* Use persistent connections? */
+ int send_buffer_size; /* size of TCP send buffer (in bytes) */
+
+ char *path; /* Pathname for ServerPath */
+ int pathlen; /* Length of path */
+
+ array_header *names; /* Normal names for ServerAlias servers */
+ array_header *wild_names;/* Wildcarded names for ServerAlias servers */
+
+ uid_t server_uid; /* effective user id when calling exec wrapper */
+ gid_t server_gid; /* effective group id when calling exec wrapper */
+
+ int limit_req_line; /* limit on size of the HTTP request line */
+ int limit_req_fieldsize; /* limit on size of any request header field */
+ int limit_req_fields; /* limit on number of request header fields */
+
+ ap_ctx *ctx;
+ };
+
+ /* These are more like real hosts than virtual hosts */
+ struct listen_rec {
+ listen_rec *next;
+ struct sockaddr_in local_addr; /* local IP address and port */
+ int fd;
+ int used; /* Only used during restart */
+ /* more stuff here, like which protocol is bound to the port */
};
/* Prototypes for utilities... util.c.
@@ -967,7 +976,8 @@ API_EXPORT(const char *) ap_size_list_item(const char **field, int *len);
API_EXPORT(char *) ap_get_list_item(pool *p, const char **field);
API_EXPORT(int) ap_find_list_item(pool *p, const char *line, const char *tok);
-API_EXPORT(char *) ap_get_token(pool *p, const char **accept_line, int accept_white);
+API_EXPORT(char *) ap_get_token(pool *p, const char **accept_line,
+ int accept_white);
API_EXPORT(int) ap_find_token(pool *p, const char *line, const char *tok);
API_EXPORT(int) ap_find_last_token(pool *p, const char *line, const char *tok);
@@ -980,10 +990,10 @@ API_EXPORT(char *) ap_os_escape_path(pool *p, const char *path, int partial);
#define ap_escape_uri(ppool,path) ap_os_escape_path(ppool,path,1)
API_EXPORT(char *) ap_escape_html(pool *p, const char *s);
API_EXPORT(char *) ap_construct_server(pool *p, const char *hostname,
- unsigned port, const request_rec *r);
+ unsigned port, const request_rec *r);
API_EXPORT(char *) ap_escape_logitem(pool *p, const char *str);
API_EXPORT(size_t) ap_escape_errorlog_item(char *dest, const char *source,
- size_t buflen);
+ size_t buflen);
API_EXPORT(char *) ap_escape_shell_cmd(pool *p, const char *s);
API_EXPORT(int) ap_count_dirs(const char *path);
@@ -999,16 +1009,16 @@ API_EXPORT(int) ap_strcasecmp_match(const char *str, const char *exp);
API_EXPORT(char *) ap_stripprefix(const char *bigstring, const char *prefix);
API_EXPORT(char *) ap_strcasestr(const char *s1, const char *s2);
API_EXPORT(char *) ap_pbase64decode(pool *p, const char *bufcoded);
-API_EXPORT(char *) ap_pbase64encode(pool *p, char *string);
+API_EXPORT(char *) ap_pbase64encode(pool *p, char *string);
API_EXPORT(char *) ap_uudecode(pool *p, const char *bufcoded);
-API_EXPORT(char *) ap_uuencode(pool *p, char *string);
+API_EXPORT(char *) ap_uuencode(pool *p, char *string);
API_EXPORT(int) ap_regexec(const regex_t *preg, const char *string,
- size_t nmatch, regmatch_t pmatch[], int eflags);
-API_EXPORT(size_t) ap_regerror(int errcode, const regex_t *preg,
- char *errbuf, size_t errbuf_size);
+ size_t nmatch, regmatch_t pmatch[], int eflags);
+API_EXPORT(size_t) ap_regerror(int errcode, const regex_t *preg,
+ char *errbuf, size_t errbuf_size);
API_EXPORT(char *) ap_pregsub(pool *p, const char *input, const char *source,
- size_t nmatch, regmatch_t pmatch[]);
+ size_t nmatch, regmatch_t pmatch[]);
API_EXPORT(void) ap_content_type_tolower(char *);
API_EXPORT(void) ap_str_tolower(char *);
@@ -1021,7 +1031,8 @@ API_EXPORT(void) ap_remove_spaces(char *dest, char *src);
/* Common structure for reading of config files / passwd files etc. */
typedef struct {
int (*getch) (void *param); /* a getc()-like function */
- void *(*getstr) (void *buf, size_t bufsiz, void *param); /* a fgets()-like function */
+ /* a fgets()-like function */
+ void *(*getstr) (void *buf, size_t bufsiz, void *param);
int (*close) (void *param); /* a close hander function */
void *param; /* the argument passed to getch/getstr/close */
const char *name; /* the filename / description */
@@ -1033,8 +1044,7 @@ API_EXPORT(configfile_t *) ap_pcfg_openfile(pool *p, const char *name);
/* Allocate a configfile_t handle with user defined functions and params */
API_EXPORT(configfile_t *) ap_pcfg_open_custom(pool *p, const char *descr,
- void *param,
- int(*getc_func)(void*),
+ void *param, int(*getc_func)(void*),
void *(*gets_func) (void *buf, size_t bufsiz, void *param),
int(*close_func)(void *param));
@@ -1071,7 +1081,8 @@ API_EXPORT(char *) ap_os_canonical_filename(pool *p, const char *file);
API_EXPORT(char *) ap_get_local_host(pool *);
-API_EXPORT(unsigned long) ap_get_virthost_addr(char *hostname, unsigned short *port);
+API_EXPORT(unsigned long) ap_get_virthost_addr(char *hostname,
+ unsigned short *port);
extern API_VAR_EXPORT time_t ap_restart_time;
@@ -1105,7 +1116,7 @@ API_EXPORT(char *) ap_escape_quotes(pool *p, const char *instr);
* Redefine assert() to something more useful for an Apache...
*/
API_EXPORT(void) ap_log_assert(const char *szExp, const char *szFile, int nLine)
- __attribute__((noreturn));
+ __attribute__((noreturn));
#define ap_assert(exp) ((exp) ? (void)0 : ap_log_assert(#exp,__FILE__,__LINE__))
#define OPTIMIZE_TIMEOUTS
diff --git a/usr.sbin/httpd/src/include/multithread.h b/usr.sbin/httpd/src/include/multithread.h
index 2060a9a1a43..86a429e7575 100644
--- a/usr.sbin/httpd/src/include/multithread.h
+++ b/usr.sbin/httpd/src/include/multithread.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: multithread.h,v 1.6 2005/03/28 23:26:51 niallo Exp $ */
+
#ifndef APACHE_MULTITHREAD_H
#define APACHE_MULTITHREAD_H
diff --git a/usr.sbin/httpd/src/include/rfc1413.h b/usr.sbin/httpd/src/include/rfc1413.h
index 76c3d221913..43e6bfd1707 100644
--- a/usr.sbin/httpd/src/include/rfc1413.h
+++ b/usr.sbin/httpd/src/include/rfc1413.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: rfc1413.h,v 1.7 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -69,4 +71,4 @@ API_EXPORT(extern char *) ap_rfc1413(conn_rec *conn, server_rec *srv);
}
#endif
-#endif /* !APACHE_RFC1413_H */
+#endif /* !APACHE_RFC1413_H */
diff --git a/usr.sbin/httpd/src/include/scoreboard.h b/usr.sbin/httpd/src/include/scoreboard.h
index de6eb0174d3..cf3696ac1fc 100644
--- a/usr.sbin/httpd/src/include/scoreboard.h
+++ b/usr.sbin/httpd/src/include/scoreboard.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: scoreboard.h,v 1.11 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -126,41 +128,41 @@ typedef int ap_generation_t;
/* stuff which the children generally write, and the parent mainly reads */
typedef struct {
- vtime_t cur_vtime; /* the child's current vtime */
- unsigned short timeout_len; /* length of the timeout */
- unsigned char status;
- unsigned long access_count;
- unsigned long bytes_served;
- unsigned long my_access_count;
- unsigned long my_bytes_served;
- unsigned long conn_bytes;
- unsigned short conn_count;
- struct timeval start_time;
- struct timeval stop_time;
- struct tms times;
- char client[32]; /* Keep 'em small... */
- char request[64]; /* We just want an idea... */
- server_rec *vhostrec; /* What virtual host is being accessed? */
- /* SEE ABOVE FOR SAFE USAGE! */
+ vtime_t cur_vtime; /* the child's current vtime */
+ unsigned short timeout_len; /* length of the timeout */
+ unsigned char status;
+ unsigned long access_count;
+ unsigned long bytes_served;
+ unsigned long my_access_count;
+ unsigned long my_bytes_served;
+ unsigned long conn_bytes;
+ unsigned short conn_count;
+ struct timeval start_time;
+ struct timeval stop_time;
+ struct tms times;
+ char client[32]; /* Keep 'em small... */
+ char request[64]; /* We just want an idea... */
+ server_rec *vhostrec; /* What virtual host is being accessed? */
+ /* SEE ABOVE FOR SAFE USAGE! */
} short_score;
typedef struct {
- ap_generation_t running_generation; /* the generation of children which
+ ap_generation_t running_generation;/* the generation of children which
* should still be serving requests. */
} global_score;
/* stuff which the parent generally writes and the children rarely read */
typedef struct {
- pid_t pid;
- time_t last_rtime; /* time(0) of the last change */
- vtime_t last_vtime; /* the last vtime the parent has seen */
- ap_generation_t generation; /* generation of this child */
+ pid_t pid;
+ time_t last_rtime; /* time(0) of the last change */
+ vtime_t last_vtime; /* the last vtime the parent has seen */
+ ap_generation_t generation; /* generation of this child */
} parent_score;
typedef struct {
- short_score servers[HARD_SERVER_LIMIT];
- parent_score parent[HARD_SERVER_LIMIT];
- global_score global;
+ short_score servers[HARD_SERVER_LIMIT];
+ parent_score parent[HARD_SERVER_LIMIT];
+ global_score global;
} scoreboard;
#define SCOREBOARD_SIZE sizeof(scoreboard)
diff --git a/usr.sbin/httpd/src/include/util_date.h b/usr.sbin/httpd/src/include/util_date.h
index 8e7f6037511..d9538914655 100644
--- a/usr.sbin/httpd/src/include/util_date.h
+++ b/usr.sbin/httpd/src/include/util_date.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: util_date.h,v 1.7 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
diff --git a/usr.sbin/httpd/src/include/util_md5.h b/usr.sbin/httpd/src/include/util_md5.h
index 37ca1b380d6..a9c22a879f6 100644
--- a/usr.sbin/httpd/src/include/util_md5.h
+++ b/usr.sbin/httpd/src/include/util_md5.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: util_md5.h,v 1.8 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
diff --git a/usr.sbin/httpd/src/include/util_script.h b/usr.sbin/httpd/src/include/util_script.h
index 4d0980f4a22..35d40a6b955 100644
--- a/usr.sbin/httpd/src/include/util_script.h
+++ b/usr.sbin/httpd/src/include/util_script.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: util_script.h,v 1.7 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -75,19 +77,17 @@ API_EXPORT(char **) ap_create_environment(pool *p, table *t);
API_EXPORT(int) ap_find_path_info(const char *uri, const char *path_info);
API_EXPORT(void) ap_add_cgi_vars(request_rec *r);
API_EXPORT(void) ap_add_common_vars(request_rec *r);
-API_EXPORT(int) ap_scan_script_header_err(request_rec *r, FILE *f, char *buffer);
+API_EXPORT(int) ap_scan_script_header_err(request_rec *r, FILE *f,
+ char *buffer);
API_EXPORT(int) ap_scan_script_header_err_buff(request_rec *r, BUFF *f,
- char *buffer);
+ char *buffer);
API_EXPORT(int) ap_scan_script_header_err_core(request_rec *r, char *buffer,
- int (*getsfunc) (char *, int, void *),
- void *getsfunc_data);
-API_EXPORT_NONSTD(int) ap_scan_script_header_err_strs(request_rec *r,
- char *buffer,
- const char **termch,
- int *termarg, ...);
+ int (*getsfunc) (char *, int, void *), void *getsfunc_data);
+API_EXPORT_NONSTD(int) ap_scan_script_header_err_strs(request_rec *r,
+ char *buffer, const char **termch, int *termarg, ...);
API_EXPORT(void) ap_send_size(size_t size, request_rec *r);
-API_EXPORT(int) ap_call_exec(request_rec *r, child_info *pinfo, char *argv0, char **env,
- int shellcmd);
+API_EXPORT(int) ap_call_exec(request_rec *r, child_info *pinfo, char *argv0,
+ char **env, int shellcmd);
#ifdef __cplusplus
}
diff --git a/usr.sbin/httpd/src/include/util_uri.h b/usr.sbin/httpd/src/include/util_uri.h
index 8b2f8d1d326..cd47d801980 100644
--- a/usr.sbin/httpd/src/include/util_uri.h
+++ b/usr.sbin/httpd/src/include/util_uri.h
@@ -1,3 +1,5 @@
+/* $OpenBSD: util_uri.h,v 1.6 2005/03/28 23:26:51 niallo Exp $ */
+
/* ====================================================================
* The Apache Software License, Version 1.1
*
@@ -68,8 +70,8 @@ extern "C" {
#endif
typedef struct {
- const char *name;
- unsigned short default_port;
+ const char *name;
+ unsigned short default_port;
} schemes_t;
#define DEFAULT_FTP_DATA_PORT 20
@@ -83,33 +85,43 @@ typedef struct {
#define DEFAULT_URI_SCHEME "http"
/* Flags passed to unparse_uri_components(): */
-#define UNP_OMITSITEPART (1U<<0) /* suppress "scheme://user@site:port" */
-#define UNP_OMITUSER (1U<<1) /* Just omit user */
-#define UNP_OMITPASSWORD (1U<<2) /* Just omit password */
-#define UNP_OMITUSERINFO (UNP_OMITUSER|UNP_OMITPASSWORD) /* omit "user:password@" part */
-#define UNP_REVEALPASSWORD (1U<<3) /* Show plain text password (default: show XXXXXXXX) */
-#define UNP_OMITPATHINFO (1U<<4) /* Show "scheme://user@site:port" only */
-#define UNP_OMITQUERY (1U<<5) /* Omit the "?queryarg" from the path */
+
+/* suppress "scheme://user@site:port" */
+#define UNP_OMITSITEPART (1U<<0)
+/* Just omit user */
+#define UNP_OMITUSER (1U<<1)
+/* Just omit password */
+#define UNP_OMITPASSWORD (1U<<2)
+/* omit "user:password@" part */
+#define UNP_OMITUSERINFO (UNP_OMITUSER|UNP_OMITPASSWORD)
+/* Show plain text password (default: show XXXXXXXX) */
+#define UNP_REVEALPASSWORD (1U<<3)
+/* Show "scheme://user@site:port" only */
+#define UNP_OMITPATHINFO (1U<<4)
+/* Omit the "?queryarg" from the path */
+#define UNP_OMITQUERY (1U<<5)
typedef struct {
- char *scheme; /* scheme ("http"/"ftp"/...) */
- char *hostinfo; /* combined [user[:password]@]host[:port] */
- char *user; /* user name, as in http://user:passwd@host:port/ */
- char *password; /* password, as in http://user:passwd@host:port/ */
- char *hostname; /* hostname from URI (or from Host: header) */
- char *port_str; /* port string (integer representation is in "port") */
- char *path; /* the request path (or "/" if only scheme://host was given) */
- char *query; /* Everything after a '?' in the path, if present */
- char *fragment; /* Trailing "#fragment" string, if present */
+ char *scheme; /* scheme ("http"/"ftp"/...) */
+ char *hostinfo; /* combined [user[:password]@]host[:port] */
+ char *user; /* user name, as in http://user:passwd@host:port/ */
+ char *password; /* password, as in http://user:passwd@host:port/ */
+ char *hostname; /* hostname from URI (or from Host: header) */
+ char *port_str; /* port string (integer representation is in "port") */
+ char *path;/* request path (or "/" if only scheme://host was given)*/
+ char *query; /* Everything after a '?' in the path, if present */
+ char *fragment; /* Trailing "#fragment" string, if present */
+
+ struct hostent *hostent;
- struct hostent *hostent;
+ unsigned short port; /* The port number, numeric, valid only if
+ * port_str != NULL
+ */
- unsigned short port; /* The port number, numeric, valid only if port_str != NULL */
-
- unsigned is_initialized:1;
+ unsigned is_initialized:1;
- unsigned dns_looked_up:1;
- unsigned dns_resolved:1;
+ unsigned dns_looked_up:1;
+ unsigned dns_resolved:1;
} uri_components;
@@ -118,10 +130,12 @@ API_EXPORT(unsigned short) ap_default_port_for_scheme(const char *scheme_str);
API_EXPORT(unsigned short) ap_default_port_for_request(const request_rec *r);
API_EXPORT(struct hostent *) ap_pduphostent(pool *p, const struct hostent *hp);
API_EXPORT(struct hostent *) ap_pgethostbyname(pool *p, const char *hostname);
-API_EXPORT(char *) ap_unparse_uri_components(pool *p, const uri_components *uptr,
- unsigned flags);
-API_EXPORT(int) ap_parse_uri_components(pool *p, const char *uri, uri_components *uptr);
-API_EXPORT(int) ap_parse_hostinfo_components(pool *p, const char *hostinfo, uri_components *uptr);
+API_EXPORT(char *) ap_unparse_uri_components(pool *p,
+ const uri_components *uptr, unsigned flags);
+API_EXPORT(int) ap_parse_uri_components(pool *p, const char *uri,
+ uri_components *uptr);
+API_EXPORT(int) ap_parse_hostinfo_components(pool *p, const char *hostinfo,
+ uri_components *uptr);
/* called by the core in main() */
extern void ap_util_uri_init(void);