manoj       99/12/08 15:03:21

  Modified:    src      CHANGES
               src/include ap_config.h
               src/main buff.c
               src/modules/proxy proxy_cache.c proxy_ftp.c proxy_http.c
                        proxy_util.c
               src/os/tpf TPFExport
  Log:
  Make mod_proxy work on TPF.
  
  Submitted by: Joe Moenich <[EMAIL PROTECTED]>
  
  Revision  Changes    Path
  1.1474    +3 -0      apache-1.3/src/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /home/cvs/apache-1.3/src/CHANGES,v
  retrieving revision 1.1473
  retrieving revision 1.1474
  diff -u -d -u -r1.1473 -r1.1474
  --- CHANGES   1999/12/08 19:01:13     1.1473
  +++ CHANGES   1999/12/08 23:01:46     1.1474
  @@ -1,5 +1,8 @@
   Changes with Apache 1.3.10
   
  +  *) mod_proxy now works on TPF.
  +     [Joe Moenich <[EMAIL PROTECTED]>]
  +
     *) Enhance mod_actions' Script handling to be able to deal with
        arbitrary methods and not just the well-known ones.  This allows
        experimental or organisation-private methods to be used without
  
  
  
  1.278     +3 -0      apache-1.3/src/include/ap_config.h
  
  Index: ap_config.h
  ===================================================================
  RCS file: /home/cvs/apache-1.3/src/include/ap_config.h,v
  retrieving revision 1.277
  retrieving revision 1.278
  diff -u -d -u -r1.277 -r1.278
  --- ap_config.h       1999/12/07 12:19:50     1.277
  +++ ap_config.h       1999/12/08 23:02:23     1.278
  @@ -937,6 +937,9 @@
   /*#define USE_TPF_DAEMON*/
   #define USE_TPF_SCOREBOARD
   #define USE_TPF_SELECT
  +#define S_IREAD S_IRUSR
  +#define S_IWRITE S_IWUSR
  +#define S_IEXEC S_IXUSR
   #define crypt(buf,salt) ((char *)buf)
   #undef  offsetof
   #define offsetof(s_type,field) ((size_t)&(((s_type*)0)->field))
  
  
  
  1.92      +1 -2      apache-1.3/src/main/buff.c
  
  Index: buff.c
  ===================================================================
  RCS file: /home/cvs/apache-1.3/src/main/buff.c,v
  retrieving revision 1.91
  retrieving revision 1.92
  diff -u -d -u -r1.91 -r1.92
  --- buff.c    1999/12/01 20:24:56     1.91
  +++ buff.c    1999/12/08 23:02:34     1.92
  @@ -285,10 +285,9 @@
   
       ap_check_signals();
       if (fb->flags & B_SOCKET) {
  -        alarm(rv = alarm(0));
           FD_ZERO(&fds);
           FD_SET(fb->fd_in, &fds);
  -        tv.tv_sec = rv+1;
  +        tv.tv_sec = 1;
           tv.tv_usec = 0;
           rv = ap_select(fb->fd_in + 1, &fds, NULL, NULL, &tv);
           if (rv > 0)
  
  
  
  1.65      +29 -6     apache-1.3/src/modules/proxy/proxy_cache.c
  
  Index: proxy_cache.c
  ===================================================================
  RCS file: /home/cvs/apache-1.3/src/modules/proxy/proxy_cache.c,v
  retrieving revision 1.64
  retrieving revision 1.65
  diff -u -d -u -r1.64 -r1.65
  --- proxy_cache.c     1999/10/21 20:45:03     1.64
  +++ proxy_cache.c     1999/12/08 23:02:43     1.65
  @@ -73,6 +73,9 @@
   #include <sys/types.h>
   #include <sys/stat.h>
   #endif
  +#ifdef TPF
  +#include "os.h"
  +#endif
   
   DEF_Explain
   
  @@ -123,7 +126,7 @@
                            const char *cachedir, const char *cachesubdir);
   static void help_proxy_garbage_coll(request_rec *r);
   static int should_proxy_garbage_coll(request_rec *r);
  -#if !defined(WIN32) && !defined(MPE) && !defined(OS2) && !defined(NETWARE)
  +#if !defined(WIN32) && !defined(MPE) && !defined(OS2) && !defined(NETWARE) 
&& !defined(TPF)
   static void detached_proxy_garbage_coll(request_rec *r);
   #endif
   
  @@ -143,7 +146,7 @@
   
       ap_block_alarms();               /* avoid SIGALRM on big cache cleanup */
       if (should_proxy_garbage_coll(r))
  -#if !defined(WIN32) && !defined(MPE) && !defined(OS2) && !defined(NETWARE)
  +#if !defined(WIN32) && !defined(MPE) && !defined(OS2) && !defined(NETWARE) 
&& !defined(TPF)
           detached_proxy_garbage_coll(r);
   #else
           help_proxy_garbage_coll(r);
  @@ -203,7 +206,7 @@
        return 0;
   }
   
  -#if !defined(WIN32) && !defined(MPE) && !defined(OS2) && !defined(NETWARE)
  +#if !defined(WIN32) && !defined(MPE) && !defined(OS2) && !defined(NETWARE) 
&& !defined(TPF)
   static void detached_proxy_garbage_coll(request_rec *r)
   {
       pid_t pid;
  @@ -465,9 +468,19 @@
        /*      if (strlen(ent->d_name) != HASH_LEN) continue; */
   
   /* under OS/2 use dirent's d_attr to identify a diretory */
  -#ifdef OS2
  +/* under TPF use stat to identify a directory */
  +#if defined(OS2) || defined(TPF)
   /* is it a directory? */
  +#ifdef OS2
        if (ent->d_attr & A_DIR) {
  +#elif defined(TPF)
  +    if (stat(filename, &buf) == -1) {
  +        if (errno != ENOENT)
  +            ap_log_error(APLOG_MARK, APLOG_ERR, r->server,
  +                 "proxy gc: stat(%s)", filename);
  +    }
  +    if (S_ISDIR(buf.st_mode)) {
  +#endif
            char newcachedir[HUGE_STRING_LEN];
            ap_snprintf(newcachedir, sizeof(newcachedir),
                        "%s%s/", cachesubdir, ent->d_name);
  @@ -500,8 +513,8 @@
            continue;
        }
   
  -/* In OS/2 this has already been done above */
  -#ifndef OS2
  +/* In OS/2 and TPF this has already been done above */
  +#if !defined(OS2) && !defined(TPF)
        if (S_ISDIR(buf.st_mode)) {
            char newcachedir[HUGE_STRING_LEN];
            close(fd);
  @@ -1029,6 +1042,7 @@
       buff[35] = ' ';
   
   /* open temporary file */
  +#ifndef TPF
   #define TMPFILESTR   "/tmpXXXXXX"
       if (conf->cache.root == NULL)
        return DECLINED;
  @@ -1037,6 +1051,15 @@
       strcat(c->tempfile, TMPFILESTR);
   #undef TMPFILESTR
       p = mktemp(c->tempfile);
  +#else
  +    if (conf->cache.root == NULL)
  +    return DECLINED;
  +    c->tempfile = ap_palloc(r->pool, strlen(conf->cache.root) +1+ L_tmpnam);
  +    strcpy(c->tempfile, conf->cache.root);
  +    strcat(c->tempfile, "/");
  +    p = tmpnam(NULL);
  +    strcat(c->tempfile, p);
  +#endif
       if (p == NULL)
        return DECLINED;
   
  
  
  
  1.79      +4 -0      apache-1.3/src/modules/proxy/proxy_ftp.c
  
  Index: proxy_ftp.c
  ===================================================================
  RCS file: /home/cvs/apache-1.3/src/modules/proxy/proxy_ftp.c,v
  retrieving revision 1.78
  retrieving revision 1.79
  diff -u -d -u -r1.78 -r1.79
  --- proxy_ftp.c       1999/08/14 08:35:53     1.78
  +++ proxy_ftp.c       1999/12/08 23:02:48     1.79
  @@ -564,6 +564,7 @@
        return HTTP_INTERNAL_SERVER_ERROR;
       }
   
  +#ifndef TPF
       if (conf->recv_buffer_size > 0
        && setsockopt(sock, SOL_SOCKET, SO_RCVBUF,
                       (const char *) &conf->recv_buffer_size, sizeof(int))
  @@ -571,6 +572,7 @@
            ap_log_rerror(APLOG_MARK, APLOG_ERR, r,
                         "setsockopt(SO_RCVBUF): Failed to set 
ProxyReceiveBufferSize, using default");
       }
  +#endif
   
       if (setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, (void *) &one,
                   sizeof(one)) == -1) {
  @@ -816,6 +818,7 @@
        return HTTP_INTERNAL_SERVER_ERROR;
       }
   
  +#ifndef TPF
       if (conf->recv_buffer_size) {
        if (setsockopt(dsock, SOL_SOCKET, SO_RCVBUF,
               (const char *) &conf->recv_buffer_size, sizeof(int)) == -1) {
  @@ -823,6 +826,7 @@
                         "setsockopt(SO_RCVBUF): Failed to set 
ProxyReceiveBufferSize, using default");
        }
       }
  +#endif
   
       ap_bputs("PASV" CRLF, f);
       ap_bflush(f);
  
  
  
  1.65      +2 -0      apache-1.3/src/modules/proxy/proxy_http.c
  
  Index: proxy_http.c
  ===================================================================
  RCS file: /home/cvs/apache-1.3/src/modules/proxy/proxy_http.c,v
  retrieving revision 1.64
  retrieving revision 1.65
  diff -u -d -u -r1.64 -r1.65
  --- proxy_http.c      1999/05/01 17:02:29     1.64
  +++ proxy_http.c      1999/12/08 23:02:52     1.65
  @@ -257,6 +257,7 @@
        return HTTP_INTERNAL_SERVER_ERROR;
       }
   
  +#ifndef TPF
       if (conf->recv_buffer_size) {
        if (setsockopt(sock, SOL_SOCKET, SO_RCVBUF,
                       (const char *) &conf->recv_buffer_size, sizeof(int))
  @@ -265,6 +266,7 @@
                         "setsockopt(SO_RCVBUF): Failed to set 
ProxyReceiveBufferSize, using default");
        }
       }
  +#endif
   
   #ifdef SINIX_D_RESOLVER_BUG
       {
  
  
  
  1.82      +2 -2      apache-1.3/src/modules/proxy/proxy_util.c
  
  Index: proxy_util.c
  ===================================================================
  RCS file: /home/cvs/apache-1.3/src/modules/proxy/proxy_util.c,v
  retrieving revision 1.81
  retrieving revision 1.82
  diff -u -d -u -r1.81 -r1.82
  --- proxy_util.c      1999/10/21 20:45:04     1.81
  +++ proxy_util.c      1999/12/08 23:02:56     1.82
  @@ -280,7 +280,7 @@
        if (!ap_isdigit(host[i]) && host[i] != '.')
            break;
       /* must be an IP address */
  -#if defined(WIN32) || defined(NETWARE)
  +#if defined(WIN32) || defined(NETWARE) || defined(TPF)
       if (host[i] == '\0' && (inet_addr(host) == -1))
   #else
       if (host[i] == '\0' && (ap_inet_addr(host) == -1 || inet_network(host) 
== -1))
  @@ -517,7 +517,7 @@
   
       ap_kill_timeout(r);
   
  -#ifdef WIN32
  +#if defined(WIN32) || defined(TPF)
       /* works fine under win32, so leave it */
       ap_hard_timeout("proxy send body", r);
       alternate_timeouts = 0;
  
  
  
  1.3       +2 -0      apache-1.3/src/os/tpf/TPFExport
  
  Index: TPFExport
  ===================================================================
  RCS file: /home/cvs/apache-1.3/src/os/tpf/TPFExport,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -d -u -r1.2 -r1.3
  --- TPFExport 1999/01/06 21:57:04     1.2
  +++ TPFExport 1999/12/08 23:03:11     1.3
  @@ -4,4 +4,6 @@
   # replace the following with the location of your TPF include files
   export _C89_INCDIRS="/u/tpf41/currentmaint/include 
/u/tpf41/currentmaint/include/oco" 
   export TPF=YES
  +export _C89_INCLIBS=""
  +export _C89_CSYSLIB=""
   echo "Done"
  
  
  

Reply via email to