cvs commit: apache-2.0/src/lib/apr/file_io/win32 open.c
stoddard99/11/03 14:01:48 Modified:src/lib/apr/file_io/win32 open.c Log: Win32 APR: Handle open for append correctly. Revision ChangesPath 1.10 +4 -0 apache-2.0/src/lib/apr/file_io/win32/open.c Index: open.c === RCS file: /home/cvs/apache-2.0/src/lib/apr/file_io/win32/open.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- open.c1999/10/21 00:31:09 1.9 +++ open.c1999/11/03 22:01:46 1.10 @@ -136,6 +136,10 @@ theerror = GetLastError(); return APR_EEXIST; } +if (flag & APR_APPEND) { +SetFilePointer((*dafile)->filehand, 0, NULL, FILE_END); +} + (*dafile)->stated = 0; /* we haven't called stat for this file yet. */ (*dafile)->eof_hit = 0; ap_register_cleanup((*dafile)->cntxt, (void *)(*dafile), file_cleanup,
cvs commit: apache-2.0/src/lib/apr/threadproc/beos proc.c
dreid 99/11/03 13:47:49 Modified:src/lib/apr/threadproc/beos proc.c Log: Thanks to Manuel J Petit de Gabriel for finding the problem with my pipes. This fix allows CGI to work on BeOS. Revision ChangesPath 1.11 +4 -0 apache-2.0/src/lib/apr/threadproc/beos/proc.c Index: proc.c === RCS file: /home/cvs/apache-2.0/src/lib/apr/threadproc/beos/proc.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- proc.c1999/11/03 16:01:53 1.10 +++ proc.c1999/11/03 21:47:44 1.11 @@ -223,6 +223,10 @@ return errno; } resume_thread(newproc); +ap_close (attr->child_in); +ap_close (attr->child_out); +ap_close (attr->child_err); + send_data(newproc, 0, (void*)sp, sizeof(struct send_pipe)); (*new)->tid = newproc;
cvs commit: apache-2.0/src/lib/apr/threadproc/beos proc.c
dreid 99/11/03 08:01:53 Modified:src/lib/apr/threadproc/beos proc.c Log: This allows ap_create_process to work again... Revision ChangesPath 1.10 +4 -5 apache-2.0/src/lib/apr/threadproc/beos/proc.c Index: proc.c === RCS file: /home/cvs/apache-2.0/src/lib/apr/threadproc/beos/proc.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- proc.c1999/11/03 07:29:05 1.9 +++ proc.c1999/11/03 16:01:53 1.10 @@ -67,7 +67,6 @@ int in; int out; int err; - char ** envp; }; ap_status_t ap_createprocattr_init(struct procattr_t **new, ap_context_t *cont) @@ -192,10 +191,9 @@ sp->in = attr->child_in?attr->child_in->filedes:-1; sp->out = attr->child_out?attr->child_out->filedes:-1; sp->err = attr->child_err?attr->child_err->filedes:-1; - sp->envp = env; - + i = 0; -while (args[i]) { +while (args && args[i]) { i++; } @@ -212,7 +210,8 @@ } newargs[2] = strdup(progname); i=0;nargs = 3; - while (args[i]) { + + while (args && args[i]) { newargs[nargs] = args[i]; i++;nargs++; }
cvs commit: apache-2.0/src/os/beos iol_socket.c
dreid 99/11/03 07:50:14 Modified:src/os/beos iol_socket.c Log: Fix a small problem with beos_writev. Revision ChangesPath 1.4 +3 -1 apache-2.0/src/os/beos/iol_socket.c Index: iol_socket.c === RCS file: /home/cvs/apache-2.0/src/os/beos/iol_socket.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- iol_socket.c 1999/11/02 12:26:42 1.3 +++ iol_socket.c 1999/11/03 15:50:13 1.4 @@ -98,6 +98,7 @@ return APR_SUCCESS; } + ap_status_t beos_write(ap_iol *viol, const char* buf, ap_size_t size, ap_ssize_t *nbytes) { @@ -108,7 +109,8 @@ ap_status_t beos_writev(ap_iol *viol, const struct iovec *vec, int nvec, ap_ssize_t *nbytes) { -return ap_send(((iol_socket *)viol)->sock, vec[0].iov_base, vec[0].iov_len); +*nbytes = vec[0].iov_len; +return ap_send(((iol_socket *)viol)->sock, vec[0].iov_base, nbytes); } ap_status_t beos_read(ap_iol *viol, char* buf, ap_size_t size,
cvs commit: apache-2.0/src/lib/apr/network_io/os2 networkio.h sendrecv.c sockets.c sockopt.c
bjh 99/11/03 06:03:27 Modified:src/lib/apr/network_io/os2 networkio.h sendrecv.c sockets.c sockopt.c Log: OS/2: Rework ap_send/ap_recv to time out properly on blocking sockets. Revision ChangesPath 1.6 +2 -1 apache-2.0/src/lib/apr/network_io/os2/networkio.h Index: networkio.h === RCS file: /home/cvs/apache-2.0/src/lib/apr/network_io/os2/networkio.h,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- networkio.h 1999/10/29 14:21:00 1.5 +++ networkio.h 1999/11/03 14:03:25 1.6 @@ -68,7 +68,8 @@ struct sockaddr_in *local_addr; struct sockaddr_in *remote_addr; int addr_len; -int timeout; +int timeout; +int nonblock; }; struct pollfd_t { 1.6 +68 -78apache-2.0/src/lib/apr/network_io/os2/sendrecv.c Index: sendrecv.c === RCS file: /home/cvs/apache-2.0/src/lib/apr/network_io/os2/sendrecv.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- sendrecv.c1999/10/29 14:21:01 1.5 +++ sendrecv.c1999/11/03 14:03:25 1.6 @@ -65,38 +65,34 @@ ap_status_t ap_send(struct socket_t *sock, const char *buf, ap_ssize_t *len) { ssize_t rv; - +int fds, err = 0; + do { -rv = send(sock->socketdes, buf, (*len), 0); -} while (rv == -1 && sock_errno() == SOCEINTR); +if (!sock->nonblock || err == SOCEWOULDBLOCK) { +fds = sock->socketdes; +rv = select(&fds, 0, 1, 0, sock->timeout >= 0 ? sock->timeout*1000 : -1); -if (rv == -1 && sock_errno() == SOCEWOULDBLOCK && sock->timeout != 0) { -int fds; -int srv; +if (rv != 1) { +*len = -1; +err = sock_errno(); -do { -fds = sock->socketdes; -srv = select(&fds, 0, 1, 0, sock->timeout >= 0 ? sock->timeout*1000 : -1); -} while (srv == -1 && sock_errno() == SOCEINTR); +if (rv == 0) +return APR_TIMEUP; -if (srv == 0) { -(*len) = -1; -return APR_TIMEUP; -} -else if (srv < 0) { -(*len) = -1; -return os2errno(sock_errno()); -} -else { -do { -rv = send(sock->socketdes, buf, (*len), 0); -} while (rv == -1 && sock_errno() == SOCEINTR); +if (err == SOCEINTR) +continue; + +return os2errno(err); +} } -} -if (rv < 0) { -*len = 0; -return os2errno(sock_errno()); +rv = send(sock->socketdes, buf, (*len), 0); +err = rv < 0 ? sock_errno() : 0; +} while (err == SOCEINTR || err == SOCEWOULDBLOCK); + +if (err) { +*len = -1; +return os2errno(err); } (*len) = rv; @@ -108,38 +104,34 @@ ap_status_t ap_recv(struct socket_t *sock, char *buf, ap_ssize_t *len) { ssize_t rv; - +int fds, err = 0; + do { -rv = recv(sock->socketdes, buf, (*len), 0); -} while (rv == -1 && sock_errno() == SOCEINTR); +if (!sock->nonblock || err == SOCEWOULDBLOCK) { +fds = sock->socketdes; +rv = select(&fds, 1, 0, 0, sock->timeout >= 0 ? sock->timeout*1000 : -1); -if (rv == -1 && sock_errno() == SOCEWOULDBLOCK && sock->timeout != 0) { -int fds; -int srv; +if (rv != 1) { +*len = -1; +err = sock_errno(); -do { -fds = sock->socketdes; -srv = select(&fds, 1, 0, 0, sock->timeout >= 0 ? sock->timeout*1000 : -1); -} while (srv == -1 && sock_errno() == SOCEINTR); +if (rv == 0) +return APR_TIMEUP; -if (srv == 0) { -(*len) = -1; -return APR_TIMEUP; -} -else if (srv < 0) { -(*len) = -1; -return os2errno(sock_errno()); -} -else { -do { -rv = recv(sock->socketdes, buf, (*len), 0); -} while (rv == -1 && sock_errno() == SOCEINTR); +if (err == SOCEINTR) +continue; + +return os2errno(err); +} } -} + +rv = recv(sock->socketdes, buf, (*len), 0); +err = rv < 0 ? sock_errno() : 0; +} while (err == SOCEINTR || err == SOCEWOULDBLOCK); -if (rv < 0) { -*len = 0; -return os2errno(sock_errno()); +if (err) { +*len = -1; +
cvs commit: apache-2.0/src/main http_protocol.c
bjh 99/11/03 04:47:24 Modified:src/lib/apr/file_io/os2 readwrite.c src/main http_protocol.c Log: OS/2: Don't return APR_EOF from ap_read(). EOF is indicated by a APR_SUCCESS status with nbytes set to 0. Revision ChangesPath 1.6 +10 -15apache-2.0/src/lib/apr/file_io/os2/readwrite.c Index: readwrite.c === RCS file: /home/cvs/apache-2.0/src/lib/apr/file_io/os2/readwrite.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- readwrite.c 1999/10/19 15:24:19 1.5 +++ readwrite.c 1999/11/03 12:47:22 1.6 @@ -85,8 +85,11 @@ while (rc == 0 && size > 0) { if (thefile->bufpos >= thefile->dataRead) { rc = DosRead(thefile->filedes, thefile->buffer, APR_FILE_BUFSIZE, &thefile->dataRead ); -if (thefile->dataRead == 0) +if (thefile->dataRead == 0) { +if (rc == 0) +thefile->eof_hit = TRUE; break; +} thefile->filePtr += thefile->dataRead; thefile->bufpos = 0; } @@ -99,15 +102,6 @@ } *nbytes = rc == 0 ? pos - (char *)buf : 0; - -// if an error occurred report it -// if we read some data but hit EOF before reading 'size' bytes, return Ok (0) -// if we hit EOF with no data read, return -1 -if (size && rc == 0 && pos == (char *)buf) { -thefile->eof_hit = TRUE; -*_errno() = APR_EOF; -return APR_EOF; -} return os2errno(rc); } else { rc = DosRead(thefile->filedes, buf, *nbytes, &bytesread); @@ -307,15 +301,16 @@ ap_status_t ap_fgets(char *str, int len, ap_file_t *thefile) { ssize_t readlen; -ap_status_t rv; +ap_status_t rv = APR_SUCCESS; int i; for (i = 0; i < len-1; i++) { readlen = 1; rv = ap_read(thefile, str+i, &readlen); - -if (rv != APR_SUCCESS) { -return rv; + +if (readlen != 1) { +rv = APR_EOF; +break; } if (str[i] == '\r') @@ -324,7 +319,7 @@ break; } str[i] = 0; -return APR_SUCCESS; +return rv; } 1.35 +1 -1 apache-2.0/src/main/http_protocol.c Index: http_protocol.c === RCS file: /home/cvs/apache-2.0/src/main/http_protocol.c,v retrieving revision 1.34 retrieving revision 1.35 diff -u -r1.34 -r1.35 --- http_protocol.c 1999/11/02 14:34:32 1.34 +++ http_protocol.c 1999/11/03 12:47:23 1.35 @@ -2111,7 +2111,7 @@ while (!ap_is_aborted(r->connection)) { rv = ap_bread(fb, buf, sizeof(buf), &n); if (n == 0) { -if (rv == APR_SUCCESS || rv == APR_EOF) {/* eof */ +if (rv == APR_SUCCESS) {/* eof */ (void) ap_rflush(r); break; }
cvs commit: apache-2.0/src/lib/apr/include apr_mmap.h
dreid 99/11/03 04:33:34 Modified:src/lib/apr/include apr_mmap.h Log: Add the new functions and also argument names :-) Revision ChangesPath 1.2 +11 -9 apache-2.0/src/lib/apr/include/apr_mmap.h Index: apr_mmap.h === RCS file: /home/cvs/apache-2.0/src/lib/apr/include/apr_mmap.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- apr_mmap.h1999/10/21 20:36:45 1.1 +++ apr_mmap.h1999/11/03 12:33:32 1.2 @@ -69,17 +69,19 @@ typedef struct mmap_tap_mmap_t; /* Function definitions */ -ap_status_t ap_mmap_create(ap_mmap_t **, const char *, ap_context_t *); -ap_status_t ap_mmap_open_create(ap_mmap_t **, ap_file_t *, ap_context_t *); -ap_status_t ap_mmap_delete(ap_mmap_t *); -ap_status_t ap_read_mmap(char *, ap_ssize_t *, ap_ssize_t *, -ap_ssize_t *, ap_mmap_t *, ap_context_t *); -ap_status_t ap_send_mmap(ap_socket_t *, ap_ssize_t *, ap_ssize_t *, -ap_mmap_t *, ap_context_t *); +/* creation */ +ap_status_t ap_mmap_create(ap_mmap_t ** newmmap, const char *fname, ap_context_t *cntxt); +ap_status_t ap_mmap_open_create(ap_mmap_t **newmmap, ap_file_t *file, ap_context_t *cntxt); -ap_status_t ap_first_mmap(struct mmap_t *, ap_context_t *); -ap_status_t ap_next_mmap(struct mmap_t *, struct mmap_t *, ap_context_t *); +/* destruction */ +ap_status_t ap_mmap_delete(ap_mmap_t *mmap); + +/* These are designed to be used in qsort, bsearch etc */ +ap_int32_t ap_mmap_inode_compare(const void *m1, const void *m2); +ap_int32_t ap_mmap_filename_compare(const void *m1, const void *m2); + +ap_status_t ap_mmap_offset(void **addr, ap_mmap_t *mmap, ap_size_t offset); #ifdef __cplusplus }
cvs commit: apache-2.0/src/lib/apr/mmap/unix common.c Makefile.in mmap.c
dreid 99/11/03 04:30:59 Modified:src/lib/apr/mmap/beos Makefile.in mmap.c src/lib/apr/mmap/unix Makefile.in mmap.c Added: src/lib/apr/mmap/beos common.c src/lib/apr/mmap/unix common.c Log: Add more functions to the APR mmap. Revision ChangesPath 1.3 +16 -1 apache-2.0/src/lib/apr/mmap/beos/Makefile.in Index: Makefile.in === RCS file: /home/cvs/apache-2.0/src/lib/apr/mmap/beos/Makefile.in,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- Makefile.in 1999/10/21 21:13:24 1.2 +++ Makefile.in 1999/11/03 12:30:55 1.3 @@ -15,7 +15,7 @@ LIB=libmmap.a -OBJS=mmap.o +OBJS=mmap.o common.o .c.o: $(CC) $(CFLAGS) -c $(INCLUDES) $< @@ -50,3 +50,18 @@ && rm Makefile.new # DO NOT REMOVE +common.o: common.c ../unix/common.c ../unix/../beos/mmap_h.h \ + ../../include/apr_general.h ../../include/apr_config.h \ + ../../include/apr_errno.h ../../include/apr_mmap.h \ + ../../include/apr_network_io.h ../../include/apr_portable.h \ + ../../include/apr_thread_proc.h ../../include/apr_file_io.h \ + ../../include/apr_win.h ../../include/apr_lock.h \ + ../../include/apr_time.h ../../file_io/unix/fileio.h \ + ../../include/apr_lib.h +mmap.o: mmap.c mmap_h.h ../../include/apr_general.h \ + ../../include/apr_config.h ../../include/apr_errno.h \ + ../../include/apr_mmap.h ../../include/apr_network_io.h \ + ../../include/apr_portable.h ../../include/apr_thread_proc.h \ + ../../include/apr_file_io.h ../../include/apr_win.h \ + ../../include/apr_lock.h ../../include/apr_time.h \ + ../../include/apr_lib.h ../../file_io/unix/fileio.h 1.3 +4 -4 apache-2.0/src/lib/apr/mmap/beos/mmap.c Index: mmap.c === RCS file: /home/cvs/apache-2.0/src/lib/apr/mmap/beos/mmap.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- mmap.c1999/10/21 21:13:26 1.2 +++ mmap.c1999/11/03 12:30:55 1.3 @@ -134,7 +134,7 @@ ap_status_t ap_mmap_open_create(struct mmap_t **new, ap_file_t *file, ap_context_t *cont) { -void *mm; +char *mm; area_id aid = -1; char *areaname = "apr_mmap\0"; uint32 size; @@ -164,8 +164,8 @@ size = ((file->size -1) / B_PAGE_SIZE) + 1; -aid = create_area(areaname, &mm, B_ANY_ADDRESS, size * B_PAGE_SIZE, -B_LAZY_LOCK, B_READ_AREA|B_WRITE_AREA); +aid = create_area(areaname, (void*)&mm, B_ANY_ADDRESS, size * B_PAGE_SIZE, +B_FULL_LOCK, B_READ_AREA|B_WRITE_AREA); free(areaname); if (aid < B_OK) { @@ -180,7 +180,7 @@ (*new)->size = file->size; (*new)->area = aid; (*new)->cntxt = cont; - + /* register the cleanup... */ ap_register_cleanup((*new)->cntxt, (void*)(*new), mmap_cleanup, ap_null_cleanup); 1.1 apache-2.0/src/lib/apr/mmap/beos/common.c Index: common.c === #include "../unix/common.c" 1.4 +1 -1 apache-2.0/src/lib/apr/mmap/unix/Makefile.in Index: Makefile.in === RCS file: /home/cvs/apache-2.0/src/lib/apr/mmap/unix/Makefile.in,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- Makefile.in 1999/10/30 05:59:24 1.3 +++ Makefile.in 1999/11/03 12:30:58 1.4 @@ -15,7 +15,7 @@ LIB=libmmap.a -OBJS=mmap.o +OBJS=mmap.o common.o .c.o: $(CC) $(CFLAGS) -c $(INCLUDES) $< 1.4 +1 -1 apache-2.0/src/lib/apr/mmap/unix/mmap.c Index: mmap.c === RCS file: /home/cvs/apache-2.0/src/lib/apr/mmap/unix/mmap.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- mmap.c1999/10/24 04:30:19 1.3 +++ mmap.c1999/11/03 12:30:59 1.4 @@ -111,7 +111,7 @@ (*new)->sinfo = st; (*new)->size = st.st_size; (*new)->cntxt = cont; - + /* register the cleanup... */ ap_register_cleanup((*new)->cntxt, (void*)(*new), mmap_cleanup, ap_null_cleanup); 1.1 apache-2.0/src/lib/apr/mmap/unix/common.c Index: common.c === /* * Copyright (c) 1999 The Apache Group. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following co
cvs commit: apache-2.0/src/lib/apr/threadproc/os2 proc.c
bjh 99/11/03 00:06:01 Modified:src/lib/apr/threadproc/os2 proc.c Log: Some fixes for OS/2 process creation: - Allow NULL environment block - Allow .exe extension to be omitted Revision ChangesPath 1.10 +20 -13apache-2.0/src/lib/apr/threadproc/os2/proc.c Index: proc.c === RCS file: /home/cvs/apache-2.0/src/lib/apr/threadproc/os2/proc.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- proc.c1999/10/26 15:16:56 1.9 +++ proc.c1999/11/03 08:06:00 1.10 @@ -261,15 +261,19 @@ interpreter[0] = 0; extension = strrchr(progname, '.'); -if (extension == NULL) +if (extension == NULL || strchr(extension, '/') || strchr(extension, '\\')) extension = ""; if (attr->cmdtype == APR_SHELLCMD || strcasecmp(extension, ".cmd") == 0) { strcpy(interpreter, "#!" SHELL_PATH); extra_arg = "/C"; -} else if (stricmp(progname, ".exe") != 0) { +} else if (stricmp(extension, ".exe") != 0) { status = ap_open(&progfile, progname, APR_READ|APR_BUFFERED, 0, cont); +if (status == APR_ENOENT) { +progname = ap_pstrcat(cont, progname, ".exe", NULL); +} + if (status == APR_SUCCESS) { status = ap_fgets(interpreter, sizeof(interpreter), progfile); @@ -350,18 +354,21 @@ } /* Create environment block from list of envariables */ -for (env_len=1, e=0; env[e]; e++) -env_len += strlen(env[e]) + 1; - -env_block = ap_palloc(cont, env_len); -env_block_pos = env_block; - -for (e=0; env[e]; e++) { -strcpy(env_block_pos, env[e]); -env_block_pos += strlen(env_block_pos) + 1; -} +if (env) { +for (env_len=1, e=0; env[e]; e++) +env_len += strlen(env[e]) + 1; + +env_block = ap_palloc(cont, env_len); +env_block_pos = env_block; + +for (e=0; env[e]; e++) { +strcpy(env_block_pos, env[e]); +env_block_pos += strlen(env_block_pos) + 1; +} -*env_block_pos = 0; /* environment block is terminated by a double null */ +*env_block_pos = 0; /* environment block is terminated by a double null */ +} else +env_block = NULL; status = DosExecPgm(error_object, sizeof(error_object), attr->detached ? EXEC_BACKGROUND : EXEC_ASYNC,
cvs commit: apache-2.0/src/lib/apr/threadproc/unix proc.c
manoj 99/11/02 23:29:07 Modified:.STATUS src/lib/apr/threadproc/beos proc.c src/lib/apr/threadproc/unix proc.c Log: Fix yet another APR bug. This one caused sporadic CGI failures. Revision ChangesPath 1.9 +3 -8 apache-2.0/STATUS Index: STATUS === RCS file: /home/cvs/apache-2.0/STATUS,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -u -r1.8 -r1.9 --- STATUS1999/11/02 23:18:28 1.8 +++ STATUS1999/11/03 07:29:02 1.9 @@ -1,5 +1,5 @@ Apache 2.0 STATUS: -Last modified at [$Date: 1999/11/02 23:18:28 $] +Last modified at [$Date: 1999/11/03 07:29:02 $] Release: @@ -12,14 +12,9 @@ RELEASE SHOWSTOPPERS: -* CGI programs will stop working after a little while -Status: Manoj is working on this - * suEXEC doesn't work -Status: Manoj has finished an implementation, but it needs -polishing. Specifically, it puts a bunch of Unix stuff into -portable code. Current patch will be sent to new-httpd upon -request. +Status: Manoj has posted an patch to fix this. +<[EMAIL PROTECTED]> * Windows NT port isn't done Status: Bill is working on this through his MPM work, and Ryan 1.9 +1 -0 apache-2.0/src/lib/apr/threadproc/beos/proc.c Index: proc.c === RCS file: /home/cvs/apache-2.0/src/lib/apr/threadproc/beos/proc.c,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -u -r1.8 -r1.9 --- proc.c1999/10/22 22:06:16 1.8 +++ proc.c1999/11/03 07:29:05 1.9 @@ -87,6 +87,7 @@ (*new)->child_err = NULL; (*new)->currdir = NULL; (*new)->cmdtype = APR_PROGRAM; +(*new)->detached = 0; return APR_SUCCESS; } 1.9 +1 -0 apache-2.0/src/lib/apr/threadproc/unix/proc.c Index: proc.c === RCS file: /home/cvs/apache-2.0/src/lib/apr/threadproc/unix/proc.c,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -u -r1.8 -r1.9 --- proc.c1999/10/20 18:27:48 1.8 +++ proc.c1999/11/03 07:29:06 1.9 @@ -89,6 +89,7 @@ (*new)->child_err = NULL; (*new)->currdir = NULL; (*new)->cmdtype = APR_PROGRAM; +(*new)->detached = 0; return APR_SUCCESS; }
cvs commit: apache-2.0/src/include ap_md5.h
ronald 99/11/02 22:17:17 Modified:src/include ap_md5.h Log: Added MD5_DIGESTSIZE constant. Revision ChangesPath 1.2 +4 -1 apache-2.0/src/include/ap_md5.h Index: ap_md5.h === RCS file: /home/cvs/apache-2.0/src/include/ap_md5.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- ap_md5.h 1999/08/24 05:50:43 1.1 +++ ap_md5.h 1999/11/03 06:17:16 1.2 @@ -94,6 +94,8 @@ /* MD5.H - header file for MD5C.C */ +#define MD5_DIGESTSIZE 16 + /* UINT4 defines a four byte word */ typedef unsigned int UINT4; @@ -114,7 +116,8 @@ 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); -API_EXPORT(void) ap_MD5Final(unsigned char digest[16], AP_MD5_CTX *context); +API_EXPORT(void) ap_MD5Final(unsigned char digest[MD5_DIGESTSIZE], + AP_MD5_CTX *context); API_EXPORT(void) ap_MD5Encode(const unsigned char *password, const unsigned char *salt, char *result, size_t nbytes);
cvs commit: apache-2.0/src/modules/mpm/winnt winnt.c
stoddard99/11/02 18:38:43 Modified:src/modules/mpm/winnt winnt.c Log: Fix bug setting localaddr and remoteaddr Revision ChangesPath 1.27 +8 -9 apache-2.0/src/modules/mpm/winnt/winnt.c Index: winnt.c === RCS file: /home/cvs/apache-2.0/src/modules/mpm/winnt/winnt.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- winnt.c 1999/11/02 22:04:14 1.26 +++ winnt.c 1999/11/03 02:38:42 1.27 @@ -801,7 +801,7 @@ return -1; } ap_create_context(&context->ptrans, p); -context->conn_io = ap_bcreate(context->ptrans, B_RDWR); +context->conn_io = ap_bcreate(context->ptrans, B_RDWR); context->recv_buf = context->conn_io->inbase; context->recv_buf_size = context->conn_io->bufsiz - 2*PADDED_ADDR_SIZE; ap_get_os_sock(&nsd, context->lr->sd); @@ -846,7 +846,8 @@ context->recv_buf_size = context->conn_io->bufsiz - 2*PADDED_ADDR_SIZE; ap_get_os_sock(&nsd, context->lr->sd); -if (!AcceptEx(nsd, context->accept_socket, +if (!AcceptEx(nsd, + context->accept_socket, context->recv_buf, context->recv_buf_size, PADDED_ADDR_SIZE, PADDED_ADDR_SIZE, &BytesRead, (LPOVERLAPPED) context)) { @@ -902,8 +903,8 @@ context->conn_io->incnt = BytesRead; -GetAcceptExSockaddrs(context->conn_io->inbase, - context->conn_io->bufsiz - 2*PADDED_ADDR_SIZE, +GetAcceptExSockaddrs(context->recv_buf, + context->recv_buf_size, PADDED_ADDR_SIZE, PADDED_ADDR_SIZE, &context->sa_server, @@ -968,12 +969,10 @@ closesocket(context->accept_socket); continue; } - ap_bpush_iol(context->conn_io, iol); - - current_conn = ap_new_connection(context->ptrans, server_conf, context->conn_io, - (struct sockaddr_in *) &context->sa_client, - (struct sockaddr_in *) &context->sa_server, +current_conn = ap_new_connection(context->ptrans, server_conf, context->conn_io, + (struct sockaddr_in *) context->sa_client, + (struct sockaddr_in *) context->sa_server, child_num); ap_process_connection(current_conn);