cvs commit: apache-2.0/src/modules/standard mod_autoindex.c mod_rewrite.c mod_usertrack.c
rbb 00/01/07 12:38:15 Modified:src/modules/standard mod_autoindex.c mod_rewrite.c mod_usertrack.c Log: Move some modules over to using ap_time_t instead of struct tm. Revision ChangesPath 1.18 +6 -3 apache-2.0/src/modules/standard/mod_autoindex.c Index: mod_autoindex.c === RCS file: /home/cvs/apache-2.0/src/modules/standard/mod_autoindex.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -r1.17 -r1.18 --- mod_autoindex.c 2000/01/06 19:19:34 1.17 +++ mod_autoindex.c 2000/01/07 20:38:05 1.18 @@ -1273,7 +1273,7 @@ autoindex_config_rec *d, request_rec *r, int autoindex_opts, char keyid, char direction) { -int x; +int x, rv; char *name = r->uri; char *tp; int static_columns = (autoindex_opts & SUPPRESS_COLSORT); @@ -1404,8 +1404,11 @@ if (!(autoindex_opts & SUPPRESS_LAST_MOD)) { if (ar[x]->lm != -1) { char time_str[MAX_STRING_LEN]; - struct tm *ts = localtime(&ar[x]->lm); - strftime(time_str, MAX_STRING_LEN, "%d-%b-%Y %H:%M ", ts); + ap_time_t *ts = NULL; +ap_make_time(&ts, r->pool); +ap_set_ansitime(ts, ar[x]->lm); + ap_strftime(time_str, &rv, MAX_STRING_LEN, +"%d-%b-%Y %H:%M ", ts); ap_rputs(time_str, r); } else { 1.10 +32 -19apache-2.0/src/modules/standard/mod_rewrite.c Index: mod_rewrite.c === RCS file: /home/cvs/apache-2.0/src/modules/standard/mod_rewrite.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- mod_rewrite.c 2000/01/07 15:50:40 1.9 +++ mod_rewrite.c 2000/01/07 20:38:06 1.10 @@ -3556,8 +3556,14 @@ { const char *result; char resultbuf[LONG_STRING_LEN]; -time_t tc; -struct tm *tm; +ap_time_t *tm = NULL; +ap_int32_t tmvalue = 0; +ap_int32_t year; +ap_int32_t mon; +ap_int32_t mday; +ap_int32_t hour; +ap_int32_t min; +ap_int32_t sec; request_rec *rsub; #ifndef WIN32 struct passwd *pw; @@ -3667,42 +3673,49 @@ /* underlaying Unix system stuff */ else if (strcasecmp(var, "TIME_YEAR") == 0) { -tc = time(NULL); -tm = localtime(&tc); +ap_make_init_time(&tm, r->pool); +ap_explode_time(tm, APR_LOCALTIME); +ap_get_year(tm, &year); ap_snprintf(resultbuf, sizeof(resultbuf), "%02d%02d", -(tm->tm_year / 100) + 19, tm->tm_year % 100); +(year / 100) + 19, year % 100); result = resultbuf; } #define MKTIMESTR(format, tmfield) \ -tc = time(NULL); \ -tm = localtime(&tc); \ -ap_snprintf(resultbuf, sizeof(resultbuf), format, tm->tmfield); \ +ap_make_init_time(&tm, r->pool); \ +ap_explode_time(tm, APR_LOCALTIME); \ +ap_get_tmfield(tm, &tmvalue); \ +ap_snprintf(resultbuf, sizeof(resultbuf), format, tmvalue); \ result = resultbuf; else if (strcasecmp(var, "TIME_MON") == 0) { -MKTIMESTR("%02d", tm_mon+1) +MKTIMESTR("%02d", mon+1) } else if (strcasecmp(var, "TIME_DAY") == 0) { -MKTIMESTR("%02d", tm_mday) +MKTIMESTR("%02d", mday) } else if (strcasecmp(var, "TIME_HOUR") == 0) { -MKTIMESTR("%02d", tm_hour) +MKTIMESTR("%02d", hour) } else if (strcasecmp(var, "TIME_MIN") == 0) { -MKTIMESTR("%02d", tm_min) +MKTIMESTR("%02d", min) } else if (strcasecmp(var, "TIME_SEC") == 0) { -MKTIMESTR("%02d", tm_sec) +MKTIMESTR("%02d", sec) } else if (strcasecmp(var, "TIME_WDAY") == 0) { -MKTIMESTR("%d", tm_wday) +MKTIMESTR("%d", wday) } else if (strcasecmp(var, "TIME") == 0) { -tc = time(NULL); -tm = localtime(&tc); +ap_make_init_time(&tm, r->pool); +ap_explode_time(tm, APR_LOCALTIME); +ap_get_year(tm, &year); +ap_get_mon(tm, &mon); +ap_get_mday(tm, &mday); +ap_get_hour(tm, &hour); +ap_get_min(tm, &min); +ap_get_sec(tm, &sec); ap_snprintf(resultbuf, sizeof(resultbuf), -"%02d%02d%02d%02d%02d%02d%02d", (tm->tm_year / 100) + 19, -(tm->tm_year % 100), tm->tm_mon+1, tm->tm_mday, -tm->tm_hour, tm->tm_min, tm->tm_sec); +"%02d%02d%02d%02d%02d%02d%02d", (year / 100) + 19, +(year % 100),
cvs commit: apache-1.3/htdocs/manual/mod mod_imap.html mod_rewrite.html
martin 00/01/07 08:38:10 Modified:htdocs/manual/misc perf-tuning.html htdocs/manual windows.html htdocs/manual/mod mod_imap.html mod_rewrite.html Log: it's -> its Revision ChangesPath 1.18 +1 -1 apache-1.3/htdocs/manual/misc/perf-tuning.html Index: perf-tuning.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/misc/perf-tuning.html,v retrieving revision 1.17 retrieving revision 1.18 diff -u -r1.17 -r1.18 --- perf-tuning.html 1999/04/20 22:19:13 1.17 +++ perf-tuning.html 2000/01/07 16:38:01 1.18 @@ -17,7 +17,7 @@ Introduction Apache is a general webserver, which is designed to be correct first, and -fast second. Even so, it's performance is quite satisfactory. Most +fast second. Even so, its performance is quite satisfactory. Most sites have less than 10Mbits of outgoing bandwidth, which Apache can fill using only a low end Pentium-based webserver. In practice sites with more bandwidth require more than one machine to fill the bandwidth 1.31 +2 -2 apache-1.3/htdocs/manual/windows.html Index: windows.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/windows.html,v retrieving revision 1.30 retrieving revision 1.31 diff -u -r1.30 -r1.31 --- windows.html 1999/07/22 17:50:59 1.30 +++ windows.html 2000/01/07 16:38:06 1.31 @@ -352,7 +352,7 @@ If you don't specify a configuration file name with -f or -n, Apache will use the file name compiled into the server, usually "conf/httpd.conf". Invoking Apache with the -V switch will display this value labeled as SERVER_CONFIG_FILE. -Apache will then determine it's ServerRoot by trying the following, in this order: +Apache will then determine its ServerRoot by trying the following, in this order: A ServerRoot directive via a -C switch. @@ -387,7 +387,7 @@ If you did not do a binary install then Apache will in some scenarios complain that about the missing registry key. This -warning can be ignored if it otherwise was able to find it's +warning can be ignored if it otherwise was able to find its configuration files. 1.14 +2 -2 apache-1.3/htdocs/manual/mod/mod_imap.html Index: mod_imap.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/mod/mod_imap.html,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- mod_imap.html 1999/08/05 18:43:47 1.13 +++ mod_imap.html 2000/01/07 16:38:07 1.14 @@ -141,7 +141,7 @@ The ImapDefault directive sets the default default used in -the imagemap files. It's value is overridden by a default +the imagemap files. Its value is overridden by a default directive within the imagemap file. If not present, the default action is nocontent, which means that a 204 No Content is sent to the client. In this @@ -173,7 +173,7 @@ 1.1 and later. The ImapBase directive sets the default base used in -the imagemap files. It's value is overridden by a base +the imagemap files. Its value is overridden by a base directive within the imagemap file. If not present, the base defaults to http://servername/. 1.46 +1 -1 apache-1.3/htdocs/manual/mod/mod_rewrite.html Index: mod_rewrite.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/mod/mod_rewrite.html,v retrieving revision 1.45 retrieving revision 1.46 diff -u -r1.45 -r1.46 --- mod_rewrite.html 1999/10/27 09:14:32 1.45 +++ mod_rewrite.html 2000/01/07 16:38:08 1.46 @@ -87,7 +87,7 @@ But all this functionality and flexibility has its drawback: complexity. So -don't expect to understand this module in it's whole in just one day. +don't expect to understand this module in its whole in just one day. This module was invented and originally written in April 1996
cvs commit: apache-1.3/src/os/tpf ebcdic.c ebcdic.h
martin 00/01/07 08:04:15 Modified:src README.EBCDIC src/ap ap_md5c.c ap_sha1.c src/os/bs2000 ebcdic.h src/os/os390 ebcdic.h src/os/tpf ebcdic.c ebcdic.h Log: This patch completes the simplification recently enabled by introduction of the CRLF macro. ebcdic2ascii_strictly is renamed ebcdic2ascii; os_toascii_strictly is renamed os_toascii. The former loose conversion functions are removed, and references suitably changed. This changes nothing on ASCII machines, but removes the kludge to have two translation tables. Submitted by: Paul Gilmartin <[EMAIL PROTECTED]> Reviewed by:Martin Kraemer Revision ChangesPath 1.6 +3 -4 apache-1.3/src/README.EBCDIC Index: README.EBCDIC === RCS file: /export/home/cvs/apache-1.3/src/README.EBCDIC,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- README.EBCDIC 1998/10/01 18:25:09 1.5 +++ README.EBCDIC 2000/01/07 16:04:10 1.6 @@ -42,10 +42,9 @@ * This port therefore features a built-in protocol level conversion for the server-internal strings (which the compiler translated to - EBCDIC strings) and server-generated documents. The hard coded - ASCII escapes \012 and \015 which are ubiquitious in the server - code are an exception: they are not converted to ASCII a second - time. + EBCDIC strings) and server-generated documents. This presumes that + hard coded ASCII escapes \012 and \015 will not exist in the server + code; rather coders will use the CRLF, CR, and LF macros. * By examining the call hierarchy for the BUFF management routines, I added an "ebcdic/ascii conversion layer" which would be crossed 1.33 +3 -3 apache-1.3/src/ap/ap_md5c.c Index: ap_md5c.c === RCS file: /export/home/cvs/apache-1.3/src/ap/ap_md5c.c,v retrieving revision 1.32 retrieving revision 1.33 diff -u -r1.32 -r1.33 --- ap_md5c.c 1999/08/15 22:14:55 1.32 +++ ap_md5c.c 2000/01/07 16:04:11 1.33 @@ -232,12 +232,12 @@ memcpy(&context->buffer[idx], &input[i], inputLen - i); #else /*CHARSET_EBCDIC*/ if (inputLen >= partLen) { - ebcdic2ascii_strictly(&context->buffer[idx], input, partLen); + ebcdic2ascii(&context->buffer[idx], input, partLen); MD5Transform(context->state, context->buffer); for (i = partLen; i + 63 < inputLen; i += 64) { unsigned char inp_tmp[64]; - ebcdic2ascii_strictly(inp_tmp, &input[i], 64); + ebcdic2ascii(inp_tmp, &input[i], 64); MD5Transform(context->state, inp_tmp); } @@ -248,7 +248,7 @@ } /* Buffer remaining input */ -ebcdic2ascii_strictly(&context->buffer[idx], &input[i], inputLen - i); +ebcdic2ascii(&context->buffer[idx], &input[i], inputLen - i); #endif /*CHARSET_EBCDIC*/ } 1.11 +3 -3 apache-1.3/src/ap/ap_sha1.c Index: ap_sha1.c === RCS file: /export/home/cvs/apache-1.3/src/ap/ap_sha1.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- ap_sha1.c 1999/08/15 21:55:09 1.10 +++ ap_sha1.c 2000/01/07 16:04:11 1.11 @@ -292,7 +292,7 @@ if (i > count) { i = count; } - ebcdic2ascii_strictly(((AP_BYTE *) sha_info->data) + sha_info->local, + ebcdic2ascii(((AP_BYTE *) sha_info->data) + sha_info->local, buffer, i); count -= i; buffer += i; @@ -306,13 +306,13 @@ } } while (count >= SHA_BLOCKSIZE) { - ebcdic2ascii_strictly((AP_BYTE *)sha_info->data, buffer, SHA_BLOCKSIZE); + ebcdic2ascii((AP_BYTE *)sha_info->data, buffer, SHA_BLOCKSIZE); buffer += SHA_BLOCKSIZE; count -= SHA_BLOCKSIZE; maybe_byte_reverse(sha_info->data, SHA_BLOCKSIZE); sha_transform(sha_info); } -ebcdic2ascii_strictly((AP_BYTE *)sha_info->data, buffer, count); +ebcdic2ascii((AP_BYTE *)sha_info->data, buffer, count); sha_info->local = count; #else ap_SHA1Update_binary(sha_info, (const unsigned char *) buf, count); 1.7 +1 -6 apache-1.3/src/os/bs2000/ebcdic.h Index: ebcdic.h === RCS file: /export/home/cvs/apache-1.3/src/os/bs2000/ebcdic.h,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- ebcdic.h 1999/12/09 16:55:54 1.6 +++ ebcdic.h 2000/01/07 16:04:12 1.7 @@ -1,5 +1,5 @@ #ifndef AP_EBCDIC_H -#define AP_EBCDIC_H "$Id: ebcdic.h,v 1.6 1999/12/09 16:55:54 martin Exp $" +#define AP_EBCDIC_H "$Id: ebcdic.h,v 1.7 2000
cvs commit: apache-2.0/src/modules/standard mod_cern_meta.c mod_expires.c mod_mime_magic.c mod_speling.c
rbb 00/01/07 07:52:25 Modified:src/modules/standard mod_cern_meta.c mod_expires.c mod_mime_magic.c mod_speling.c Log: Fix the rest of the modules to work with the new APR stat structure. Revision ChangesPath 1.6 +2 -2 apache-2.0/src/modules/standard/mod_cern_meta.c Index: mod_cern_meta.c === RCS file: /home/cvs/apache-2.0/src/modules/standard/mod_cern_meta.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- mod_cern_meta.c 1999/12/31 20:32:35 1.5 +++ mod_cern_meta.c 2000/01/07 15:52:18 1.6 @@ -309,12 +309,12 @@ /* if ./.web/$1.meta exists then output 'asis' */ -if (r->finfo.st_mode == 0) { +if (r->finfo.protection == 0) { return DECLINED; }; /* is this a directory? */ -if (S_ISDIR(r->finfo.st_mode) || r->uri[strlen(r->uri) - 1] == '/') { +if (S_ISDIR(r->finfo.protection) || r->uri[strlen(r->uri) - 1] == '/') { return DECLINED; }; 1.7 +3 -3 apache-2.0/src/modules/standard/mod_expires.c Index: mod_expires.c === RCS file: /home/cvs/apache-2.0/src/modules/standard/mod_expires.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- mod_expires.c 2000/01/06 19:19:36 1.6 +++ mod_expires.c 2000/01/07 15:52:18 1.7 @@ -403,7 +403,7 @@ expires_dir_config *conf; char *code; char *timestr = NULL; -ap_int64_t base; +ap_ansi_time_t base; time_t additional; time_t expires; ap_time_t *finaltime = NULL; @@ -453,13 +453,13 @@ switch (code[0]) { case 'M': - if (r->finfo.st_mode == 0) { + if (r->finfo.protection == 0) { /* file doesn't exist on disk, so we can't do anything based on * modification time. Note that this does _not_ log an error. */ return DECLINED; } -base = r->finfo.st_mtime; +ap_get_ansitime(r->finfo.mtime, &base); additional = atoi(&code[1]); break; case 'A': 1.12 +4 -4 apache-2.0/src/modules/standard/mod_mime_magic.c Index: mod_mime_magic.c === RCS file: /home/cvs/apache-2.0/src/modules/standard/mod_mime_magic.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- mod_mime_magic.c 2000/01/04 19:01:02 1.11 +++ mod_mime_magic.c 2000/01/07 15:52:18 1.12 @@ -1448,7 +1448,7 @@ */ static int fsmagic(request_rec *r, const char *fn) { -switch (r->finfo.st_mode & S_IFMT) { +switch (r->finfo.protection & S_IFMT) { case S_IFDIR: magic_rsl_puts(r, DIR_MAGIC_TYPE); return DONE; @@ -1497,14 +1497,14 @@ break; default: ap_log_rerror(APLOG_MARK, APLOG_NOERRNO | APLOG_ERR, 0, r, - MODNAME ": invalid mode 0%o.", (unsigned int)r->finfo.st_mode); + MODNAME ": invalid mode 0%o.", (unsigned int)r->finfo.protection); return HTTP_INTERNAL_SERVER_ERROR; } /* * regular file, check next possibility */ -if (r->finfo.st_size == 0) { +if (r->finfo.size == 0) { magic_rsl_puts(r, MIME_TEXT_UNKNOWN); return DONE; } @@ -2448,7 +2448,7 @@ magic_server_config_rec *conf; /* the file has to exist */ -if (r->finfo.st_mode == 0 || !r->filename) { +if (r->finfo.protection == 0 || !r->filename) { return DECLINED; } 1.7 +1 -1 apache-2.0/src/modules/standard/mod_speling.c Index: mod_speling.c === RCS file: /home/cvs/apache-2.0/src/modules/standard/mod_speling.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- mod_speling.c 1999/10/23 21:20:16 1.6 +++ mod_speling.c 2000/01/07 15:52:21 1.7 @@ -244,7 +244,7 @@ } /* We've already got a file of some kind or another */ -if (r->proxyreq || (r->finfo.st_mode != 0)) { +if (r->proxyreq || (r->finfo.protection != 0)) { return DECLINED; }
cvs commit: apache-2.0/src/modules/standard mod_rewrite.c
rbb 00/01/07 07:50:42 Modified:src/modules/standard mod_rewrite.c Log: Fix mod_rewrite to work with the new APR stat structure. Submitted by: Paul Reder Reviewed by: Ryan Bloom Revision ChangesPath 1.9 +4 -4 apache-2.0/src/modules/standard/mod_rewrite.c Index: mod_rewrite.c === RCS file: /home/cvs/apache-2.0/src/modules/standard/mod_rewrite.c,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- mod_rewrite.c 2000/01/04 19:01:04 1.8 +++ mod_rewrite.c 2000/01/07 15:50:40 1.9 @@ -3762,8 +3762,8 @@ /* file stuff */ else if (strcasecmp(var, "SCRIPT_USER") == 0) { result = ""; -if (r->finfo.st_mode != 0) { -if ((pw = getpwuid(r->finfo.st_uid)) != NULL) { +if (r->finfo.protection != 0) { +if ((pw = getpwuid(r->finfo.user)) != NULL) { result = pw->pw_name; } } @@ -3777,8 +3777,8 @@ } else if (strcasecmp(var, "SCRIPT_GROUP") == 0) { result = ""; -if (r->finfo.st_mode != 0) { -if ((gr = getgrgid(r->finfo.st_gid)) != NULL) { +if (r->finfo.protection != 0) { +if ((gr = getgrgid(r->finfo.group)) != NULL) { result = gr->gr_name; } }
cvs commit: apache-site/contributors index.html
jim 00/01/07 05:32:01 Modified:contributors index.html Log: clarify Revision ChangesPath 1.85 +1 -1 apache-site/contributors/index.html Index: index.html === RCS file: /export/home/cvs/apache-site/contributors/index.html,v retrieving revision 1.84 retrieving revision 1.85 diff -u -r1.84 -r1.85 --- index.html1999/12/13 23:36:16 1.84 +++ index.html2000/01/07 13:32:00 1.85 @@ -357,7 +357,7 @@ Organization: http://www.jaguNET.com/";>jaguNET Access Services, LLC Occupation: ISP and Web Hosting/Design firm Location: Forest Hill, Maryland, USA -OS Expertise: A/UX and various SysV flavors, lately FreeBSD +OS Expertise: FreeBSD and various SysV flavors Contributions: Started off with the A/UX port; added SysV shared memory support for the scoreboard; flock mutexes; several mod_status updates such as bytes/requests counters and making