Apache 2.0 STATUS:
-Last modified at [$Date: 2000/06/12 17:28:48 $]
+Last modified at [$Date: 2000/06/12 21:46:35 $]
Release:
to -ldl which is wrong).
Status:
- - reduce number of configuration items, which in turn reduces the
- amount of stuff in ap_config_auto.h.in
- Status: Ryan +1 (working on it), Greg +1
-
* suEXEC doesn't work
Status: Manoj has posted an patch to fix this.
<19991103003605.A20612@samosa.mindspring.com>
#include <string.h>
#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-
-#ifdef HAVE_SYS_RESOURCE_H
-#include <sys/resource.h>
-#endif
-
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-
-/* The next three are for inet_*() */
-
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-
-#ifdef HAVE_PWD_H /* XXX - For getpw*. This should be moved to unixd */
-#include <pwd.h>
-#endif
-
-#ifdef HAVE_GRP_H /* XXX - For getgr*. This should be moved to unixd */
-#include <grp.h>
-#endif
-
/* ap_ versions of ctype macros to make sure they deal with 8-bit chars */
#include "ap_ctype.h"
#define ap_sigwait(a,b) sigwait((a),(b))
#endif
-/* So that we can use inline on some critical functions, and use
- * GNUC attributes (such as to get -Wall warnings for printf-like
- * functions). Only do this in gcc 2.7 or later ... it may work
- * on earlier stuff, but why chance it.
- *
- * We've since discovered that the gcc shipped with NeXT systems
- * as "cc" is completely broken. It claims to be __GNUC__ and so
- * on, but it doesn't implement half of the things that __GNUC__
- * means. In particular it's missing inline and the __attribute__
- * stuff. So we hack around it. PR#1613. -djg
- */
-#if !defined(__GNUC__) || __GNUC__ < 2 || \
- (__GNUC__ == 2 && __GNUC_MINOR__ < 7) ||\
- defined(NEXT)
-#define ap_inline
-#define __attribute__(__x)
-#define ENUM_BITFIELD(e,n,w) signed int n : w
-#else
-#define ap_inline __inline__
-#define USE_GNU_INLINE
-#define ENUM_BITFIELD(e,n,w) e n : w
-#endif
-
/* EAGAIN apparently isn't defined on some systems */
#if !defined(HAVE_EAGAIN) && !defined(EAGAIN)
#define EAGAIN EWOULDBLOCK
#endif
#ifdef SCO5
-/* XXX - What's this for */
-#define SecureWare
-
-/* Although SCO 5 defines these in <strings.h> (note the "s") they don't have
- consts. Sigh. */
-extern int strcasecmp(const char *, const char *);
-extern int strncasecmp(const char *, const char *, unsigned);
-#endif /* SCO5 */
-
-/* If APR has OTHER_CHILD logic, use reliable piped logs.
+/* This allows Apache to run from a startup script on a SCO box in high
+ * security (C2) mode.
*/
-#if (APR_HAS_OTHER_CHILD)
-#define HAVE_RELIABLE_PIPED_LOGS TRUE
+#define SecureWare
#endif
/* XXX - The PHP4 comments say -D_HPUX_SOURCE is obsolete. */
#define USE_MEM_BASED_SCOREBOARD
#endif
+/* If APR has OTHER_CHILD logic, use reliable piped logs.
+ */
+#if (APR_HAS_OTHER_CHILD)
+#define HAVE_RELIABLE_PIPED_LOGS TRUE
+#endif
+
#if defined(CHARSET_EBCDIC) && !defined(APACHE_XLATE)
#define APACHE_XLATE
#endif
#ifdef HAVE_STRING_H
#include <string.h>
#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+
+#ifdef HAVE_ARPA_INET_H
+#include <arpa/inet.h>
+#endif
+
enum allowdeny_type {
T_ENV,
#include "http_core.h"
#include "http_log.h"
#include "http_protocol.h"
+#include "http_request.h" /* for ap_hook_(check_user_id | auth_check) */
#ifdef HAVE_DB_H
#include <db.h>
#endif
invalid_pw = ap_validate_password(sent_pw, real_pw);
if (invalid_pw != APR_SUCCESS) {
- char buf[120]
ap_log_rerror(APLOG_MARK, APLOG_NOERRNO|APLOG_ERR, 0, r,
- "DB user %s: authentication failure for \"%s\": %s",
- r->user, r->uri, ap_strerror(invalid_pw, buf, sizeof(buf)));
+ "DB user %s: authentication failure for \"%s\": "
+ "Password Mismatch",
+ r->user, r->uri);
ap_note_basic_auth_failure(r);
return AUTH_REQUIRED;
}
#include "http_core.h"
#include "http_log.h"
#include "http_protocol.h"
+#include "http_request.h" /* for ap_hook_(check_user_id | auth_checker)*/
#if defined(__GLIBC__) && defined(__GLIBC_MINOR__) \
&& __GLIBC__ >= 2 && __GLIBC_MINOR__ >= 1
#include <db1/ndbm.h>
invalid_pw = ap_validate_password(sent_pw, real_pw);
if (invalid_pw != APR_SUCCESS) {
ap_log_rerror(APLOG_MARK, APLOG_NOERRNO|APLOG_ERR, 0, r,
- "DBM user %s: authentication failure for \"%s\": %s",
- r->user, r->uri, invalid_pw);
+ "DBM user %s: authentication failure for \"%s\": "
+ "Password Mismatch",
+ r->user, r->uri);
ap_note_basic_auth_failure(r);
return AUTH_REQUIRED;
}
#include "ap_mpm.h"
#include "iol_socket.h"
#include "unixd.h"
+#include <sys/stat.h>
+#include <sys/socket.h> /* for sockaddr_un */
#include <sys/un.h> /* for sockaddr_un */
#include <sys/types.h>
#include <sys/stat.h>
#include "http_connection.h"
#include "util_ebcdic.h"
#include "mpm.h"
+#include <netdb.h>
/* Allow Apache to use ap_mmap */
#ifdef USE_MMAP_FILES
#include "util_charset.h"
#include "mpm_status.h"
#include <stdarg.h>
+#include <unistd.h>
AP_HOOK_STRUCT(
AP_HOOK_LINK(post_read_request)
#include "http_core.h" /* For REMOTE_NAME */
#include "http_log.h"
#include "http_protocol.h"
+#include <unistd.h>
#ifdef HAVE_LIMITS_H
#include <limits.h>
#endif
#include <sys/uio.h>
#endif
#endif
+#ifdef HAVE_PWD_H
+#include <pwd.h>
+#endif
+#ifdef HAVE_GRP_H
+#include <grp.h>
+#endif
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
/*
** +-------------------------------------------------------+
static char *subst_prefix_path(request_rec *r, char *input, char *match,
char *subst);
static int parseargline(char *str, char **a1, char **a2, char **a3);
-static int prefix_stat(const char *path, struct stat *sb);
+static int prefix_stat(const char *path, ap_finfo_t *sb);
static void add_env_variable(request_rec *r, char *s);
/* Lexicographic Comparison */
* both written by James Grinter <jrg@blodwen.demon.co.uk>.
*/
+#include "ap_hooks.h"
#include "httpd.h"
#include "http_config.h"
#include "http_core.h"
+#include "http_request.h" /* for ap_hook_translate_name */
module MODULE_VAR_EXPORT vhost_alias_module;
#include "http_log.h"
#include "http_protocol.h"
#include "util_script.h"
+#include <sys/stat.h>
+#include <unistd.h>
#ifdef HAVE_UTIME_H
#include <utime.h>
#endif
ap_pool_t *child_context = cntxt;
ap_procattr_t *procattr;
ap_proc_t *procnew = NULL;
- ap_file_t *file = NULL;
ap_iol *iol;
env = ap_create_environment(child_context, r->subprocess_env);
close(STDERR_FILENO);
}
- rc = ap_create_process(&procnew, compr[parm->method].argv[0],
+ rc = ap_create_process(procnew, compr[parm->method].argv[0],
new_argv, env, procattr, child_context);
if (rc != APR_SUCCESS) {
else {
ap_note_subprocess(child_context, procnew, kill_after_timeout);
/* Fill in BUFF structure for parents pipe to child's stdout */
- ap_get_childout(&file, procnew);
- iol = ap_create_file_iol(file);
+ iol = ap_create_file_iol(procnew->out);
if (!iol)
return APR_EBADF;
if (script_in) {
#include "httpd.h"
#include "http_config.h"
#include "http_log.h"
+#include "http_protocol.h" /* for ap_hook_post_read_request */
+
+#include <netdb.h>
+#include <unistd.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
typedef struct {
unsigned int stamp;
#include <pwd.h>
#include <sys/resource.h>
#include <sys/resource.h>
+#include <unistd.h>
+#include <grp.h>
unixd_config_rec unixd_config;
#include "http_config.h"
#include "http_vhost.h"
+#include <netinet/in.h>
+#include <arpa/inet.h>
+
AP_HOOK_STRUCT(
AP_HOOK_LINK(pre_connection)
AP_HOOK_LINK(process_connection)
#include "mpm.h"
#include "scoreboard.h"
+#include <unistd.h>
#include <poll.h>
+#include <sys/socket.h>
#ifdef HAVE_NETINET_TCP_H
#include <netinet/tcp.h>
#endif
#ifdef HAVE_NETINET_TCP_H
#include <netinet/tcp.h>
#endif
+#include <sys/socket.h>
#include <sys/wait.h>
#include <pthread.h>
#include <signal.h>
#include <sys/times.h>
#include <sys/types.h>
#include <sys/wait.h>
+#include <sys/socket.h>
+#include <unistd.h>
#ifdef HAVE_NETINET_TCP_H
#include <netinet/tcp.h> /* for TCP_NODELAY */
#include "http_config.h"
#include "util_ebcdic.h"
-#if defined(SUNOS4)
-/* stdio.h has been read in ap_config.h already. Add missing prototypes here: */
-extern int fgetc(FILE *);
-extern char *fgets(char *s, int, FILE*);
-extern int fclose(FILE *);
+#include <stdio.h>
+#include <unistd.h>
+#include <netinet/in.h>
+#include <netdb.h>
+#include <arpa/inet.h>
+#ifdef HAVE_PWD_H
+#include <pwd.h>
#endif
+#ifdef HAVE_GRP_H
+#include <grp.h>
+#endif
+
/* A bunch of functions in util.c scan strings looking for certain characters.
* To make that more efficient we encode a lookup table. The test_char_table
#include "http_log.h"
#include "util_uri.h"
#include <string.h>
+#include <netdb.h>
/* Some WWW schemes and their default ports; this is basically /etc/services */
/* This will become global when the protocol abstraction comes */
#include "http_protocol.h"
#include "http_core.h"
+#include <arpa/inet.h>
+#include <netinet/in.h>
+#include <netdb.h>
+
/*
* After all the definitions there's an explanation of how it's all put
* together.
#include "ap_config.h"
#include <ctype.h>
#include <stdio.h>
+#include <netdb.h>
#if !defined(MPE) && !defined(BEOS) && !defined(WIN32)
#include <arpa/inet.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
+#include <unistd.h>
#define BUFSIZE 65536