You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by wr...@apache.org on 2002/07/21 11:19:19 UTC

cvs commit: httpd-2.0/modules/arch/win32 Makefile.in config.m4 .cvsignore mod_isapi.c mod_isapi.h

wrowe       2002/07/21 02:19:19

  Modified:    modules/arch/win32 .cvsignore mod_isapi.c mod_isapi.h
  Added:       modules/arch/win32 Makefile.in config.m4
  Log:
    A half hour to waste waiting for builds... this is what you get.
    mod_isapi will build and run on OSX... presume others as well unless
    I choose some awful errno values for portability.
  
  Revision  Changes    Path
  1.3       +11 -0     httpd-2.0/modules/arch/win32/.cvsignore
  
  Index: .cvsignore
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/arch/win32/.cvsignore,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- .cvsignore	5 Jun 2002 14:56:45 -0000	1.2
  +++ .cvsignore	21 Jul 2002 09:19:19 -0000	1.3
  @@ -1,5 +1,16 @@
  +.deps
  +.libs
  +*.la
  +modules.mk
  +Makefile
  +*.lo
  +*.slo
  +*.so
   Debug
   Release
  +*.plg
  +*.aps
  +*.dep
   *.mak
   *.rc
   BuildLog.htm
  
  
  
  1.83      +7 -6      httpd-2.0/modules/arch/win32/mod_isapi.c
  
  Index: mod_isapi.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/arch/win32/mod_isapi.c,v
  retrieving revision 1.82
  retrieving revision 1.83
  diff -u -r1.82 -r1.83
  --- mod_isapi.c	26 Jun 2002 19:45:06 -0000	1.82
  +++ mod_isapi.c	21 Jul 2002 09:19:19 -0000	1.83
  @@ -308,7 +308,7 @@
        * location, etc) they apply to.
        */
       isa->report_version = MAKELONG(0, 5); /* Revision 5.0 */
  -    isa->timeout = INFINITE; /* microsecs */
  +    isa->timeout = 300 * 1000000; /* microsecs, not used */
       
       rv = apr_dso_load(&isa->handle, isa->filename, p);
       if (rv)
  @@ -515,7 +515,7 @@
    **********************************************************/
   
   /* Our "Connection ID" structure */
  -typedef struct isapi_cid {
  +struct isapi_cid {
       EXTENSION_CONTROL_BLOCK *ecb;
       isapi_dir_conf           dconf;
       isapi_loaded            *isa;
  @@ -524,7 +524,7 @@
       PFN_HSE_IO_COMPLETION    completion;
       void                    *completion_arg;
       apr_thread_mutex_t      *completed;
  -} isapi_cid;
  +};
   
   int APR_THREAD_FUNC GetServerVariable (isapi_cid    *cid, 
                                          char         *variable_name,
  @@ -1158,17 +1158,18 @@
            */
           if (subreq->path_info && *subreq->path_info) {
               apr_cpystrn(info->lpszPath + info->cchMatchingPath, 
  -                        subreq->path_info, MAX_PATH - info->cchMatchingPath);
  +                        subreq->path_info, 
  +                        sizeof(info->lpszPath) - info->cchMatchingPath);
               info->cchMatchingURL -= strlen(subreq->path_info);
               if (subreq->finfo.filetype == APR_DIR
  -                 && info->cchMatchingPath < MAX_PATH - 1) {
  +                 && info->cchMatchingPath < sizeof(info->lpszPath) - 1) {
                   /* roll forward over path_info's first slash */
                   ++info->cchMatchingPath;
                   ++info->cchMatchingURL;
               }
           }
           else if (subreq->finfo.filetype == APR_DIR
  -                 && info->cchMatchingPath < MAX_PATH - 1) {
  +                 && info->cchMatchingPath < sizeof(info->lpszPath) - 1) {
               /* Add a trailing slash for directory */
               info->lpszPath[info->cchMatchingPath++] = '/';
               info->lpszPath[info->cchMatchingPath] = '\0';
  
  
  
  1.2       +24 -2     httpd-2.0/modules/arch/win32/mod_isapi.h
  
  Index: mod_isapi.h
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/arch/win32/mod_isapi.h,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- mod_isapi.h	14 May 2002 05:23:54 -0000	1.1
  +++ mod_isapi.h	21 Jul 2002 09:19:19 -0000	1.2
  @@ -78,7 +78,8 @@
   
   /* Our internal 'HCONN' representation, always opaque to the user.
    */
  -typedef struct isapi_cid isapi_cid, *HCONN;
  +typedef struct isapi_cid isapi_cid;
  +typedef struct isapi_cid *HCONN;
   
   /* Prototypes of the essential functions exposed by mod_isapi 
    * for the module to communicate with Apache.
  @@ -201,7 +202,7 @@
   } HSE_TF_INFO;
   
   typedef struct HSE_URL_MAPEX_INFO {
  -    char         lpszPath[MAX_PATH];
  +    char         lpszPath[260];
       apr_uint32_t dwFlags;
       apr_uint32_t cchMatchingPath;
       apr_uint32_t cchMatchingURL;
  @@ -250,6 +251,27 @@
   #define HSE_STATUS_SUCCESS_AND_KEEP_CONN  2 /* 1 vs 2 Ignored, we choose */
   #define HSE_STATUS_PENDING                3 /* Emulated (thread lock) */
   #define HSE_STATUS_ERROR                  4
  +
  +/* Anticipated error code for common faults within mod_isapi itself
  + */
  +#ifndef ERROR_INSUFFICIENT_BUFFER
  +#define ERROR_INSUFFICIENT_BUFFER ENOBUFS
  +#endif
  +#ifndef ERROR_INVALID_INDEX
  +#define ERROR_INVALID_INDEX EINVAL
  +#endif
  +#ifndef ERROR_INVALID_PARAMETER
  +#define ERROR_INVALID_PARAMETER EINVAL
  +#endif
  +#ifndef ERROR_READ_FAULT
  +#define ERROR_READ_FAULT EIO
  +#endif
  +#ifndef ERROR_WRITE_FAULT
  +#define ERROR_WRITE_FAULT EIO
  +#endif
  +#ifndef ERROR_SUCCESS
  +#define ERROR_SUCCESS 0
  +#endif
   
   /* Valid flags passed with TerminateExtension()
    */
  
  
  
  1.1                  httpd-2.0/modules/arch/win32/Makefile.in
  
  Index: Makefile.in
  ===================================================================
  # a modules Makefile has no explicit targets -- they will be defined by
  # whatever modules are enabled. just grab special.mk to deal with this.
  include $(top_srcdir)/build/special.mk
  
  
  
  1.1                  httpd-2.0/modules/arch/win32/config.m4
  
  Index: config.m4
  ===================================================================
  dnl modules enabled in this directory by default
  
  dnl APACHE_MODULE(name, helptext[, objects[, structname[, default[, config]]]])
  
  APACHE_MODPATH_INIT(arch/win32)
  
  APACHE_MODULE(isapi, isapi extension support, , , no)
  
  APR_ADDTO(LT_LDFLAGS,-export-dynamic)
  
  APACHE_MODPATH_FINISH