httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexei Kosut <ako...@hyperreal.org>
Subject cvs commit: apache/src mod_usertrack.c
Date Tue, 08 Jul 1997 21:18:52 GMT
akosut      97/07/08 14:18:51

  Modified:    src       mod_usertrack.c
  Log:
  Fix mod_usertrack to work with Windows.
  
  Revision  Changes    Path
  1.12      +18 -2     apache/src/mod_usertrack.c
  
  Index: mod_usertrack.c
  ===================================================================
  RCS file: /export/home/cvs/apache/src/mod_usertrack.c,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -c -C3 -r1.11 -r1.12
  *** mod_usertrack.c	1997/07/07 14:34:28	1.11
  --- mod_usertrack.c	1997/07/08 21:18:50	1.12
  ***************
  *** 97,103 ****
  --- 97,105 ----
    #include "httpd.h"
    #include "http_config.h"
    #include "http_core.h"
  + #ifndef WIN32
    #include <sys/time.h>
  + #endif
    
    module usertrack_module;
    
  ***************
  *** 106,111 ****
  --- 108,117 ----
        time_t expires;
    } cookie_log_state;
    
  + static const char month_names[12][4] = {
  +     "Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"
  + };
  + 
    /* Define this to allow post-2000 cookies. Cookies use two-digit dates,
     * so it might be dicey. (Netscape does it correctly, but others may not)
     */
  ***************
  *** 123,129 ****
    #if defined(NO_GETTIMEOFDAY)
        clock_t mpe_times;
        struct tms mpe_tms;
  ! #else
        struct timeval tv;
        struct timezone tz = { 0 , 0 };
    #endif
  --- 129,135 ----
    #if defined(NO_GETTIMEOFDAY)
        clock_t mpe_times;
        struct tms mpe_tms;
  ! #elif !defined(WIN32)
        struct timeval tv;
        struct timezone tz = { 0 , 0 };
    #endif
  ***************
  *** 146,151 ****
  --- 152,167 ----
    
        ap_snprintf(cookiebuf, 1024, "%s%d%ld%ld", rname, (int)getpid(),
                  (long)time(NULL), (long)mpe_tms.tms_utime);
  + #elif defined(WIN32)
  +     /* We lack gettimeofday() and we lack times(). So we'll use
  +      * a combination of time() and GetTickCount(), which returns
  +      * milliseconds since Windows was started. It should be relatively
  +      * unique.
  +      */
  + 
  +      ap_snprintf(cookiebuf, 1024, "%s%d%ld%ld", rname, (int)getpid(),
  +                  (long)time(NULL), (long)GetTickCount());
  + 
    #else
        gettimeofday(&tv, &tz);
    
  ***************
  *** 174,180 ****
          ap_snprintf(new_cookie, 1024,
    	   "%s%s; path=/; expires=%s, %.2d-%s-%.2d %.2d:%.2d:%.2d GMT",
    	      COOKIE_NAME, cookiebuf, days[tms->tm_wday],
  ! 	      tms->tm_mday, month_snames[tms->tm_mon],
    	      (tms->tm_year >= 100) ? tms->tm_year - 100 : tms->tm_year,
    	      tms->tm_hour, tms->tm_min, tms->tm_sec);
        }
  --- 190,196 ----
          ap_snprintf(new_cookie, 1024,
    	   "%s%s; path=/; expires=%s, %.2d-%s-%.2d %.2d:%.2d:%.2d GMT",
    	      COOKIE_NAME, cookiebuf, days[tms->tm_wday],
  ! 	      tms->tm_mday, month_names[tms->tm_mon],
    	      (tms->tm_year >= 100) ? tms->tm_year - 100 : tms->tm_year,
    	      tms->tm_hour, tms->tm_min, tms->tm_sec);
        }
  
  
  

Mime
View raw message