cvs commit: apache-apr/pthreads/src/modules/standard mod_mime_magic.c

1999-02-03 Thread manoj
manoj   99/02/02 23:49:02

  Modified:pthreads/src/modules/standard mod_mime_magic.c
  Log:
  Compilation fix.
  
  Revision  ChangesPath
  1.3   +1 -1  apache-apr/pthreads/src/modules/standard/mod_mime_magic.c
  
  Index: mod_mime_magic.c
  ===
  RCS file: 
/home/cvs/apache-apr/pthreads/src/modules/standard/mod_mime_magic.c,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -u -r1.2 -r1.3
  --- mod_mime_magic.c  1999/01/27 16:15:47 1.2
  +++ mod_mime_magic.c  1999/02/03 07:49:02 1.3
  @@ -1,4 +1,4 @@
  -2/* 
  +/* 
* Copyright (c) 1995-1998 The Apache Group.  All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
  
  
  


cvs commit: apache-site/info known_bugs.html

1999-02-03 Thread pcs
pcs 99/02/03 07:30:02

  Modified:info known_bugs.html
  Log:
  Some known bugs in 1.3.4.
  
  Revision  ChangesPath
  1.12  +15 -0 apache-site/info/known_bugs.html
  
  Index: known_bugs.html
  ===
  RCS file: /export/home/cvs/apache-site/info/known_bugs.html,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- known_bugs.html   1998/06/05 06:57:42 1.11
  +++ known_bugs.html   1999/02/03 15:30:01 1.12
  @@ -37,6 +37,21 @@
   problems/A./P
   HR
   
  +H2Apache 1.3.4 Bugs/H2
  +
  +OL
  +LISTRONGWin32 only/STRONG Apache will not serve filenames starting 
  +with CODECOM/CODE or containing CODE.COM/CODE. Instead
  +it will respond with a 403 Forbidden message, and log the error
  +CODEFilename is not valid/CODE.  See A
  +HREF=http://bugs.apache.org/index/full/3769;PR#3769/A.
  +LISTRONGUnix only/STRONG CODEmake install/CODE fails on
  +some operating systems. This occurs when the operating system
  +version of tar does not support the h option. It has been reported
  +on SCO and BSDI. It does not affect systems which use GNU tar.
  +See A HREF=http://bugs.apache.org/index/full/3807;PR#3807/A.
  +/OL
  +
   H2Apache 1.3.0 Bugs/H2
   
   OL
  
  
  


cvs commit: apache-1.3/src/support htpasswd.c httpd.exp

1999-02-03 Thread coar
coar99/02/03 08:22:34

  Modified:.STATUS
   src  ApacheCore.def CHANGES
   src/ap   ap_md5c.c
   src/include ap_md5.h ap_mmn.h
   src/modules/standard mod_auth.c mod_auth_db.c mod_auth_dbm.c
   src/support htpasswd.c httpd.exp
  Log:
Rework the ap_MD5Encode() routine to use FreeBSD's algorithm
and a private significator ($apr1); also make it reentrant.
Abstract the password checking into a new routine,
ap_validate_password(plaintext, hashed), and modify mod_auth*.c
to use it instead of each doing the algorithm check.
  
  Obtained from:FreeBSD 3.0 /usr/src/lib/libcrypt/crypt.c (MD5)
  
  Revision  ChangesPath
  1.610 +1 -2  apache-1.3/STATUS
  
  Index: STATUS
  ===
  RCS file: /home/cvs/apache-1.3/STATUS,v
  retrieving revision 1.609
  retrieving revision 1.610
  diff -u -r1.609 -r1.610
  --- STATUS1999/02/02 16:15:50 1.609
  +++ STATUS1999/02/03 16:22:25 1.610
  @@ -1,5 +1,5 @@
 1.3 STATUS:
  -  Last modified at [$Date: 1999/02/02 16:15:50 $]
  +  Last modified at [$Date: 1999/02/03 16:22:25 $]
   
   Release:
   
  @@ -15,7 +15,6 @@
   
   RELEASE SHOWSTOPPERS:
   
  -* md5 passwd stuff incompatible with FreeBSD implementation.
   
   RELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:
   
  
  
  
  1.9   +1 -0  apache-1.3/src/ApacheCore.def
  
  Index: ApacheCore.def
  ===
  RCS file: /home/cvs/apache-1.3/src/ApacheCore.def,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- ApacheCore.def1999/01/29 14:28:53 1.8
  +++ ApacheCore.def1999/02/03 16:22:27 1.9
  @@ -326,4 +326,5 @@
ap_os_is_filename_valid   @319
ap_find_opaque_token   @320
ap_MD5Encode   @321
  + ap_validate_password   @322
   
  
  
  
  1.1229+5 -0  apache-1.3/src/CHANGES
  
  Index: CHANGES
  ===
  RCS file: /home/cvs/apache-1.3/src/CHANGES,v
  retrieving revision 1.1228
  retrieving revision 1.1229
  diff -u -r1.1228 -r1.1229
  --- CHANGES   1999/01/30 19:19:23 1.1228
  +++ CHANGES   1999/02/03 16:22:28 1.1229
  @@ -1,5 +1,10 @@
   Changes with Apache 1.3.5
   
  +  *) Rework the MD5 authentication scheme to use FreeBSD's algorithm,
  + and use a private significator ('$apr1$') to mark passwords as
  + being smashed with our own algorithm.  Also abstract the password
  + checking into a new ap_validate_password() routine.  [Ken Coar]
  +
 *) Win32: The filename validity checker now allows COM but refuses 
access to COM1 through COM4. This allows filenames such
as com.name to be served. [Paul Sutton] PR#3769.
  
  
  
  1.19  +217 -43   apache-1.3/src/ap/ap_md5c.c
  
  Index: ap_md5c.c
  ===
  RCS file: /home/cvs/apache-1.3/src/ap/ap_md5c.c,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- ap_md5c.c 1999/01/25 22:55:36 1.18
  +++ ap_md5c.c 1999/02/03 16:22:30 1.19
  @@ -88,6 +88,17 @@
*
*/
   
  +/*
  + * The ap_MD5Encode() routine uses much code obtained from the FreeBSD 3.0
  + * MD5 crypt() function, which is licenced as follows:
  + * 

  + * THE BEER-WARE LICENSE (Revision 42):
  + * [EMAIL PROTECTED] wrote this file.  As long as you retain this notice 
you
  + * can do whatever you want with this stuff. If we meet some day, and you 
think
  + * this stuff is worth it, you can buy me a beer in return.   Poul-Henning 
Kamp
  + * 

  + */
  +
   #include string.h
   
   #include ap_config.h
  @@ -381,7 +392,7 @@
   }
   
   /* Decodes input (unsigned char) into output (UINT4). Assumes len is
  -   a multiple of 4.
  + * a multiple of 4.
*/
   static void Decode(UINT4 *output, const unsigned char *input, unsigned int 
len)
   {
  @@ -391,47 +402,210 @@
output[i] = ((UINT4) input[j]) | (((UINT4) input[j + 1])  8) |
(((UINT4) input[j + 2])  16) | (((UINT4) input[j + 3])  24);
   }
  +
  +/*
  + * Define the Magic String prefix that identifies a password as being
  + * hashed using our algorithm.
  + */
  +static const char *apr1_id = $apr1$;
  +
  +/*
  + * The following MD5 password encryption code was largely borrowed from
  + * the FreeBSD 3.0 /usr/src/lib/libcrypt/crypt.c file, which is
  + * licenced as stated at the top of this file.
  + */
  +
  +static void to64 __P((char *, unsigned long, int));
  +
  +static void to64(char *s, unsigned long v, int n)
  +{
  +static void to64 __P((char *, unsigned long, int));
  +static unsigned char 

cvs commit: apache-apr/pthreads/src/os/unix multithread.c

1999-02-03 Thread rbb
rbb 99/02/03 09:50:15

  Modified:pthreads/src/main Makefile.tmpl alloc.c http_main.c
   pthreads/src/modules/standard mod_autoindex.c
   pthreads/src/os/unix multithread.c
  Added:   pthreads/src/include fdqueue.h
   pthreads/src/main fdqueue.c
  Log:
  Port to hybrid process/thread model.  Doesn't work fully, but it will serve 
one request before dying.  Basically the process that serves the first request 
becomes a zombie, so the subsequent requests are never picked up off the fd 
queue.
  Submitted by: fdqueue.[ch] submitted by Manoj KAsichainula
  
  Revision  ChangesPath
  1.1  apache-apr/pthreads/src/include/fdqueue.h
  
  Index: fdqueue.h
  ===
  #ifndef FDQUEUE_H
  #define FDQUEUE_H
  #include stdlib.h
  #include unistd.h
  #include pthread.h
  #include sys/types.h
  #include sys/socket.h
  
  /* Bleccch. 0 on success always rubbed me the wrong way */
  /* All failures are unrecoverable */
  #define FD_QUEUE_SUCCESS 0
  #define FD_QUEUE_FAILURE -1 /* Needs to be an invalid file descriptor because
 of queue_pop semantics */
  
  typedef struct fd_queue_elem {
  int fd;
  struct sockaddr addr;
  } FDQueueElement;
  
  typedef struct fd_queue {
  int head;
  int tail;
  FDQueueElement *data;
  int bounds;
  pthread_mutex_t one_big_mutex;
  pthread_cond_t not_empty;
  pthread_cond_t not_full;
  } FDQueue;
  
  int queue_init(FDQueue *queue, size_t bounds);
  void queue_destroy(FDQueue *queue);
  int queue_push(FDQueue *queue, int fd, struct sockaddr *addr);
  int queue_pop(FDQueue *queue, struct sockaddr *addr);
  int queue_size(FDQueue *queue);
  
  #endif /* FDQUEUE_H */
  
  
  
  1.2   +1 -1  apache-apr/pthreads/src/main/Makefile.tmpl
  
  Index: Makefile.tmpl
  ===
  RCS file: /home/cvs/apache-apr/pthreads/src/main/Makefile.tmpl,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- Makefile.tmpl 1999/01/21 23:08:32 1.1
  +++ Makefile.tmpl 1999/02/03 17:50:08 1.2
  @@ -11,7 +11,7 @@
 http_config.o http_core.o http_log.o \
 http_main.o http_protocol.o http_request.o http_vhost.o \
 util.o util_date.o util_script.o util_uri.o util_md5.o \
  -  md5c.o rfc1413.o
  +  md5c.o rfc1413.o fdqueue.o
   
   .c.o:
$(CC) -c $(INCLUDES) $(CFLAGS) $
  
  
  
  1.2   +7 -7  apache-apr/pthreads/src/main/alloc.c
  
  Index: alloc.c
  ===
  RCS file: /home/cvs/apache-apr/pthreads/src/main/alloc.c,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- alloc.c   1999/01/21 23:08:32 1.1
  +++ alloc.c   1999/02/03 17:50:09 1.2
  @@ -1975,14 +1975,14 @@
if (pipe_in) {
close(in_fds[0]);
close(in_fds[1]);
  - }
  + }
if (pipe_out) {
close(out_fds[0]);
close(out_fds[1]);
  - }
  + }
errno = save_errno;
return 0;
  -}
  + }
   
   #ifdef WIN32
   
  @@ -2077,10 +2077,10 @@
close(out_fds[0]);
close(out_fds[1]);
}
  - if (pipe_err) {
  + if (pipe_err) {
close(err_fds[0]);
close(err_fds[1]);
  - }
  + }
errno = save_errno;
return 0;
   }
  @@ -2101,11 +2101,11 @@
close(in_fds[0]);
}
   
  - if (pipe_err) {
  + if (pipe_err) {
close(err_fds[0]);
dup2(err_fds[1], STDERR_FILENO);
close(err_fds[1]);
  - }
  + }
   
/* HP-UX SIGCHLD fix goes here, if someone will remind me what it is... 
*/
signal(SIGCHLD, SIG_DFL);   /* Was that it? */
  
  
  
  1.5   +272 -157  apache-apr/pthreads/src/main/http_main.c
  
  Index: http_main.c
  ===
  RCS file: /home/cvs/apache-apr/pthreads/src/main/http_main.c,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- http_main.c   1999/01/28 21:54:07 1.4
  +++ http_main.c   1999/02/03 17:50:09 1.5
  @@ -92,9 +92,16 @@
   #include util_script.h /* to force util_script.c linking */ 
   #include util_uri.h 
   #include scoreboard.h 
  +#include fdqueue.h 
   #include poll.h 
   #include netinet/tcp.h 
   #include stdio.h 
  +
  +#ifdef USE_SHMGET_SCOREBOARD
  +#include sys/types.h
  +#include sys/ipc.h
  +#include sys/shm.h
  +#endif

   #include pthread.h 
   /*#include initialization if any 
  @@ -149,7 +156,7 @@
   #ifdef MULTIPLE_GROUPS
   gid_t group_id_list[NGROUPS_MAX];
   #endif
  -int ap_threads_per_child;
  +int ap_threads_per_child = 5; /* Need to require this directive, or make a 
valid default */
 

cvs commit: apache-apr/pthreads/src/main http_main.c

1999-02-03 Thread stoddard
stoddard99/02/03 10:29:30

  Modified:pthreads/src/main http_main.c
  Log:
  Get rid of stupid comment
  
  Revision  ChangesPath
  1.6   +1 -1  apache-apr/pthreads/src/main/http_main.c
  
  Index: http_main.c
  ===
  RCS file: /export/home/cvs/apache-apr/pthreads/src/main/http_main.c,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- http_main.c   1999/02/03 17:50:09 1.5
  +++ http_main.c   1999/02/03 18:29:29 1.6
  @@ -2066,7 +2066,7 @@
   int rc; /*  */
   int configtestonly;
   
  -MONCONTROL(0); /* WTF is this? */
  +MONCONTROL(0);
   
   common_init();
   
  
  
  


cvs commit: apache-1.3/src/ap ap_md5c.c

1999-02-03 Thread coar
coar99/02/03 15:28:59

  Modified:src/ap   ap_md5c.c
  Log:
Fix #ifdef problem for Win32 and nuke __P() prototypes.
  
  Revision  ChangesPath
  1.20  +1 -3  apache-1.3/src/ap/ap_md5c.c
  
  Index: ap_md5c.c
  ===
  RCS file: /home/cvs/apache-1.3/src/ap/ap_md5c.c,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- ap_md5c.c 1999/02/03 16:22:30 1.19
  +++ ap_md5c.c 1999/02/03 23:28:58 1.20
  @@ -415,11 +415,8 @@
* licenced as stated at the top of this file.
*/
   
  -static void to64 __P((char *, unsigned long, int));
  -
   static void to64(char *s, unsigned long v, int n)
   {
  -static void to64 __P((char *, unsigned long, int));
   static unsigned char itoa64[] = /* 0 ... 63 = ASCII - 64 */
./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz;
   
  @@ -602,6 +599,7 @@
 */
   #ifdef WIN32
return crypt() unavailable on Win32, cannot validate password;
  +}
   #else
crypt_pw = crypt(passwd, hash);
ap_cpystrn(sample, crypt_pw, sizeof(sample) - 1);