You can subscribe to this list here.
2005 |
Jan
|
Feb
(32) |
Mar
(56) |
Apr
(92) |
May
(39) |
Jun
(226) |
Jul
(98) |
Aug
(66) |
Sep
|
Oct
(153) |
Nov
(43) |
Dec
(42) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2006 |
Jan
(97) |
Feb
(141) |
Mar
(147) |
Apr
(80) |
May
(51) |
Jun
(93) |
Jul
(88) |
Aug
(50) |
Sep
(179) |
Oct
(48) |
Nov
(82) |
Dec
(71) |
2007 |
Jan
(42) |
Feb
(46) |
Mar
(123) |
Apr
(21) |
May
(139) |
Jun
(59) |
Jul
(34) |
Aug
(57) |
Sep
(47) |
Oct
(137) |
Nov
(49) |
Dec
(12) |
2008 |
Jan
(10) |
Feb
(8) |
Mar
(63) |
Apr
(17) |
May
(34) |
Jun
(38) |
Jul
(16) |
Aug
(62) |
Sep
(9) |
Oct
(121) |
Nov
(38) |
Dec
(4) |
2009 |
Jan
|
Feb
(11) |
Mar
(9) |
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2010 |
Jan
|
Feb
|
Mar
(4) |
Apr
(10) |
May
(1) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
(1) |
Feb
(1) |
Mar
(3) |
Apr
(2) |
May
|
Jun
|
Jul
|
Aug
(3) |
Sep
(2) |
Oct
(1) |
Nov
|
Dec
(12) |
2012 |
Jan
(26) |
Feb
(1) |
Mar
(15) |
Apr
(1) |
May
(1) |
Jun
(7) |
Jul
(2) |
Aug
|
Sep
(1) |
Oct
(52) |
Nov
(8) |
Dec
(25) |
2013 |
Jan
(35) |
Feb
(14) |
Mar
(10) |
Apr
(10) |
May
(29) |
Jun
(16) |
Jul
(5) |
Aug
(8) |
Sep
(8) |
Oct
(6) |
Nov
(1) |
Dec
(3) |
2014 |
Jan
(16) |
Feb
(13) |
Mar
(5) |
Apr
(9) |
May
(21) |
Jun
(6) |
Jul
(5) |
Aug
(2) |
Sep
(59) |
Oct
(115) |
Nov
(122) |
Dec
(45) |
2015 |
Jan
(31) |
Feb
(32) |
Mar
(19) |
Apr
(25) |
May
(3) |
Jun
(4) |
Jul
(18) |
Aug
(3) |
Sep
(23) |
Oct
(11) |
Nov
(17) |
Dec
(12) |
2016 |
Jan
(20) |
Feb
(27) |
Mar
(20) |
Apr
(40) |
May
(35) |
Jun
(48) |
Jul
(44) |
Aug
(51) |
Sep
(18) |
Oct
(42) |
Nov
(39) |
Dec
(29) |
2017 |
Jan
(37) |
Feb
(34) |
Mar
(20) |
Apr
(37) |
May
(10) |
Jun
(2) |
Jul
(14) |
Aug
(15) |
Sep
(25) |
Oct
(29) |
Nov
(15) |
Dec
(29) |
2018 |
Jan
(5) |
Feb
(15) |
Mar
(6) |
Apr
(20) |
May
(39) |
Jun
(39) |
Jul
(17) |
Aug
(20) |
Sep
(10) |
Oct
(17) |
Nov
(20) |
Dec
(8) |
2019 |
Jan
(28) |
Feb
(21) |
Mar
(13) |
Apr
(44) |
May
(44) |
Jun
(28) |
Jul
(51) |
Aug
(30) |
Sep
(7) |
Oct
(20) |
Nov
(8) |
Dec
(21) |
2020 |
Jan
(27) |
Feb
(5) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Stephen D. <sd...@us...> - 2005-07-06 08:46:01
|
Update of /cvsroot/naviserver/naviserver/include In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26965/include Modified Files: ns.h Log Message: * include/ns.h: * nsd/driver.c: * nsd/binder.c: Add backlog arg to Ns_SockListenUnix(). Index: ns.h =================================================================== RCS file: /cvsroot/naviserver/naviserver/include/ns.h,v retrieving revision 1.29 retrieving revision 1.30 diff -C2 -d -r1.29 -r1.30 *** ns.h 29 Jun 2005 03:45:49 -0000 1.29 --- ns.h 6 Jul 2005 08:45:52 -0000 1.30 *************** *** 1121,1125 **** NS_EXTERN SOCKET Ns_SockListenUdp(char *address, int port); NS_EXTERN SOCKET Ns_SockListenRaw(int proto); ! NS_EXTERN SOCKET Ns_SockListenUnix(char *path); NS_EXTERN SOCKET Ns_SockBindUdp(struct sockaddr_in *saPtr); --- 1121,1125 ---- NS_EXTERN SOCKET Ns_SockListenUdp(char *address, int port); NS_EXTERN SOCKET Ns_SockListenRaw(int proto); ! NS_EXTERN SOCKET Ns_SockListenUnix(char *path, int backlog); NS_EXTERN SOCKET Ns_SockBindUdp(struct sockaddr_in *saPtr); |
From: Stephen D. <sd...@us...> - 2005-07-06 08:35:20
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22617 Modified Files: ChangeLog Log Message: Localize Windows ifdefs as much as possible. Index: ChangeLog =================================================================== RCS file: /cvsroot/naviserver/naviserver/ChangeLog,v retrieving revision 1.149 retrieving revision 1.150 diff -C2 -d -r1.149 -r1.150 *** ChangeLog 6 Jul 2005 07:12:16 -0000 1.149 --- ChangeLog 6 Jul 2005 08:35:04 -0000 1.150 *************** *** 1,4 **** --- 1,7 ---- 2005-07-06 Stephen Deasey <sd...@us...> + * nsd/binder.c: + * nsd/driver.c: Localize Windows ifdefs as much as possible. + * nsd/connio.c: * nsd/queue.c: |
From: Stephen D. <sd...@us...> - 2005-07-06 08:35:20
|
Update of /cvsroot/naviserver/naviserver/nsd In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22617/nsd Modified Files: binder.c driver.c Log Message: Localize Windows ifdefs as much as possible. Index: driver.c =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/driver.c,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** driver.c 6 Jul 2005 07:12:17 -0000 1.16 --- driver.c 6 Jul 2005 08:35:08 -0000 1.17 *************** *** 448,455 **** if (drvPtr->opts & NS_DRIVER_UDP) { drvPtr->sock = Ns_SockListenUdp(drvPtr->bindaddr, drvPtr->port); - #ifndef _WIN32 } else if (drvPtr->opts & NS_DRIVER_UNIX) { drvPtr->sock = Ns_SockListenUnix(drvPtr->bindaddr); - #endif } else { drvPtr->sock = Ns_SockListenEx(drvPtr->bindaddr, drvPtr->port, --- 448,453 ---- Index: binder.c =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/binder.c,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** binder.c 24 Jun 2005 08:36:29 -0000 1.10 --- binder.c 6 Jul 2005 08:35:07 -0000 1.11 *************** *** 53,57 **** static Ns_Mutex lock; ! #ifndef _WIN32 static void PreBind(char *line); --- 53,60 ---- static Ns_Mutex lock; ! /* ! * Local functions defined in this file ! */ ! static void PreBind(char *line); *************** *** 105,109 **** return (SOCKET)sock; } ! #endif /* _WIN32 */ /* --- 108,112 ---- return (SOCKET)sock; } ! /* *************** *** 191,195 **** - #ifndef _WIN32 /* *---------------------------------------------------------------------- --- 194,197 ---- *************** *** 215,218 **** --- 217,221 ---- Tcl_HashSearch search; + #ifndef _WIN32 Ns_MutexLock(&lock); hPtr = Tcl_FirstHashEntry(&preboundUnix, &search); *************** *** 238,244 **** Ns_SetSockErrno(err); } ! return (SOCKET)sock; } ! #endif /* _WIN32 */ /* --- 241,249 ---- Ns_SetSockErrno(err); } ! #endif ! ! return (SOCKET) sock; } ! /* *************** *** 278,282 **** - #ifndef _WIN32 /* *---------------------------------------------------------------------- --- 283,286 ---- *************** *** 301,305 **** int sock = -1; struct sockaddr_un addr; ! memset(&addr, 0, sizeof(addr)); addr.sun_family = AF_UNIX; --- 305,310 ---- int sock = -1; struct sockaddr_un addr; ! ! #ifndef _WIN32 memset(&addr, 0, sizeof(addr)); addr.sun_family = AF_UNIX; *************** *** 316,323 **** Ns_SetSockErrno(err); } ! return (SOCKET)sock; } ! #endif /* _WIN32 */ /* --- 321,329 ---- Ns_SetSockErrno(err); } + #endif ! return (SOCKET) sock; } ! /* *************** *** 381,386 **** } - #ifndef _WIN32 - /* --- 387,390 ---- *************** *** 403,406 **** --- 407,411 ---- NsPreBind(char *args, char *file) { + #ifndef _WIN32 if (args != NULL) { PreBind(args); *************** *** 417,420 **** --- 422,426 ---- } } + #endif } *************** *** 439,442 **** --- 445,451 ---- NsClosePreBound(void) { + #ifdef _WIN32 + return; + #else Tcl_HashEntry *hPtr; Tcl_HashSearch search; *************** *** 520,523 **** --- 529,533 ---- Ns_MutexUnlock(&lock); + #endif } *************** *** 548,551 **** --- 558,564 ---- PreBind(char *line) { + #ifdef _WIN32 + return; + #else Tcl_HashEntry *hPtr; int new, sock, port; *************** *** 663,667 **** } } } - - #endif /* _WIN32 */ --- 676,679 ---- } } + #endif } |
From: Stephen D. <sd...@us...> - 2005-07-06 07:12:46
|
Update of /cvsroot/naviserver/naviserver/nsd In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14491/nsd Modified Files: connio.c driver.c nsconf.c nsconf.h nsd.h queue.c return.c server.c Log Message: * nsd/connio.c: * nsd/queue.c: * nsd/return.c: * nsd/driver.c: * nsd/server.c: * nsd/nsd.h: * nsd/nsconf.c: * nsd/nsconf.h: Cleanup default configuration by removing unneeded values and actually using the defaults throughout the code where appropriate. Some per-server limits have been made per-driver. Index: nsconf.h =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/nsconf.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** nsconf.h 16 Feb 2005 08:39:53 -0000 1.1.1.1 --- nsconf.h 6 Jul 2005 07:12:18 -0000 1.2 *************** *** 1,7 **** /* ! * The contents of this file are subject to the AOLserver Public License * Version 1.1 (the "License"); you may not use this file except in * compliance with the License. You may obtain a copy of the License at ! * http://aolserver.com/. * * Software distributed under the License is distributed on an "AS IS" --- 1,7 ---- /* ! * The contents of this file are subject to the Mozilla Public License * Version 1.1 (the "License"); you may not use this file except in * compliance with the License. You may obtain a copy of the License at ! * http://mozilla.org/. * * Software distributed under the License is distributed on an "AS IS" *************** *** 28,100 **** */ #ifndef NSCONF_H #define NSCONF_H - #define LOG_EXPANDED_BOOL NS_FALSE - #define LOG_DEBUG_BOOL NS_FALSE - #define LOG_NOTICE_BOOL NS_TRUE - #define LOG_DEV_BOOL NS_FALSE - #define LOG_ROLL_BOOL NS_TRUE - #define LOG_USEC_BOOL NS_FALSE - #define LOG_MAXBUFFER_INT 10 - #define LOG_MAXLEVEL_INT INT_MAX - #define LOG_MAXBACK_INT 10 - #define LOG_FLUSHINT_INT 10 ! #define THREAD_MUTEXMETER_BOOL NS_FALSE ! #define THREAD_STACKSIZE_INT (64*1024) ! ! #define SCHED_MAXELAPSED_INT 2 ! #define SHUTDOWNTIMEOUT 20 ! #define IOBUFSIZE 16000 ! #define BACKLOG 32 ! #define DNS_CACHE_BOOL NS_TRUE ! #define DNS_TIMEOUT_INT 60 ! #define KEEPALIVE_MAXKEEP_INT 100 ! #define KEEPALIVE_TIMEOUT_INT 30 ! #define SERV_AOLPRESS_BOOL NS_FALSE ! #define SERV_CONNSPERTHREAD_INT 0 ! #define SERV_ERRORMINSIZE_INT 514 ! #define SERV_GLOBALSTATS_BOOL NS_FALSE ! #define SERV_MAXCONNS_INT 100 ! #define SERV_MAXDROPPED_INT 0 ! #define SERV_MAXTHREADS_INT 20 ! #define SERV_MAXURLSTATS_INT 1000 ! #define SERV_MINTHREADS_INT 0 ! #define SERV_NOTICEDETAIL_BOOL NS_TRUE ! #define SERV_SENDFDMIN_INT 2048 ! #define SERV_THREADTIMEOUT_INT 120 ! #define SERV_URLSTATS_BOOL NS_FALSE ! #define SERV_QUIET_BOOL NS_FALSE - #define ADP_CACHESIZE_INT 5000*1024 - #define ADP_CACHE_BOOL NS_TRUE - #define ADP_ENABLEDEBUG_BOOL NS_FALSE - #define ADP_ENABLEEXPIRE_BOOL NS_FALSE - #define ADP_TAGLOCKS_BOOL NS_FALSE ! #define CONN_FLUSHCONTENT_BOOL NS_FALSE ! #define CONN_MAXHEADERS_INT 16384 ! #define CONN_MAXLINE_INT 8192 ! #define CONN_MAXPOST_INT 65536 ! #define CONN_MODSINCE_BOOL NS_TRUE ! #define FASTPATH_CACHEMAXENTRY_INT 8192 ! #define FASTPATH_CACHESIZE_INT 5000*1024 ! #define FASTPATH_CACHE_BOOL NS_TRUE ! #define FASTPATH_MMAP_BOOL NS_FALSE - #define TCL_AUTOCLOSE_BOOL NS_TRUE - #define TCL_DEBUG_BOOL NS_FALSE - #define TCL_NSVBUCKETS_INT 8 - #define TCL_STATLEVEL_INT 0 - #define TCL_STATMAXBUF_INT 1000 - #define TCL_INITLCK_BOOL NS_FALSE #endif --- 28,107 ---- */ + /* + * nsconf.h -- + * + * Default configuration values used by the core server. + * + * $Header$ + */ + #ifndef NSCONF_H #define NSCONF_H ! #define LOG_EXPANDED_BOOL NS_FALSE ! #define LOG_DEBUG_BOOL NS_FALSE ! #define LOG_NOTICE_BOOL NS_TRUE ! #define LOG_DEV_BOOL NS_FALSE ! #define LOG_ROLL_BOOL NS_TRUE ! #define LOG_USEC_BOOL NS_FALSE ! #define LOG_MAXBUFFER_INT 10 ! #define LOG_MAXLEVEL_INT INT_MAX ! #define LOG_MAXBACK_INT 10 ! #define LOG_FLUSHINT_INT 10 ! #define THREAD_STACKSIZE_INT (64*1024) ! #define SCHED_MAXELAPSED_INT 2 ! #define SHUTDOWNTIMEOUT_INT 20 ! #define SOCKLISTENBACKLOG_INT 32 ! #define DNS_CACHE_BOOL NS_TRUE ! #define DNS_TIMEOUT_INT 60 ! #define SERV_MAXCONNS_INT 100 ! #define SERV_MAXCONNSPERTHREAD_INT 0 ! #define SERV_MAXTHREADS_INT 10 ! #define SERV_MINTHREADS_INT 0 ! #define SERV_THREADTIMEOUT_INT 120 ! #define SERV_MODSINCE_BOOL NS_TRUE ! #define SERV_FLUSHCONTENT_BOOL NS_FALSE ! #define SERV_NOTICEDETAIL_BOOL NS_TRUE ! #define SERV_ERRORMINSIZE_INT 514 ! #define DRV_BUFSIZE_INT 16000 ! #define DRV_MAXINPUT_INT 1000*1024 ! #define DRV_MININPUT_INT 1024 ! #define DRV_MAXLINE_INT 4*1024 ! #define DRV_MINLINE_INT 256 ! #define DRV_MAXHEADERS_INT 64*1024 ! #define DRV_RCVBUF_INT 0 ! #define DRV_SNDBUF_INT 0 ! #define DRV_RCVWAIT_INT 30 ! #define DRV_SNDWAIT_INT 30 ! #define DRV_KEEPWAIT_INT 30 ! #define DRV_CLOSEWAIT_INT 2 ! #define DRV_KEEPWAIT_INT 30 ! #define DRV_KEEPALLMETHODS_BOOL NS_FALSE ! #define FASTPATH_CACHESIZE_INT 5000*1024 ! #define FASTPATH_CACHEMAXENTRY_INT 8192 ! #define FASTPATH_MMAP_BOOL NS_FALSE + #define VHOST_ENABLED_BOOL NS_FALSE + #define VHOST_HASHMIN_INT 0 + #define VHOST_HASHMAX_INT 5 ! #define ADP_CACHESIZE_INT 5000*1024 ! #define ADP_ENABLEEXPIRE_BOOL NS_FALSE ! #define ADP_ENABLEDEBUG_BOOL NS_FALSE ! #define ADP_DEBUGINIT_STRING "ns_adp_debuginit" ! #define ADP_DEFPARSER_STRING "adp" ! #define ADP_ENABLECOMPRESS_BOOL NS_FALSE ! #define ADP_COMPRESSLEVEL_INT 4 + #define TCL_NSVBUCKETS_INT 8 + #define TCL_INITLCK_BOOL NS_FALSE #endif Index: return.c =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/return.c,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** return.c 29 Jun 2005 03:45:49 -0000 1.9 --- return.c 6 Jul 2005 07:12:18 -0000 1.10 *************** *** 209,212 **** --- 209,213 ---- char *key, *lengthHdr; Conn *connPtr; + Driver *drvPtr; int doChunkEncoding = 0; *************** *** 216,219 **** --- 217,221 ---- connPtr = (Conn *) conn; + drvPtr = connPtr->drvPtr; sprintf(buf, "%d", connPtr->responseStatus); reason = "Unknown Reason"; *************** *** 255,259 **** */ ! if (nsconf.keepalive.enabled && connPtr->headers != NULL && connPtr->request != NULL && --- 257,261 ---- */ ! if (drvPtr->keepwait > 0 && connPtr->headers != NULL && connPtr->request != NULL && *************** *** 262,266 **** connPtr->responseLength == length) || doChunkEncoding)) || (connPtr->responseStatus == 304 || connPtr->responseStatus == 201 || connPtr->responseStatus == 207) ) && ! (nsconf.keepalive.allmethods == NS_TRUE || STREQ(connPtr->request->method, "GET")) && (key = Ns_SetIGet(conn->headers, "connection")) != NULL && --- 264,268 ---- connPtr->responseLength == length) || doChunkEncoding)) || (connPtr->responseStatus == 304 || connPtr->responseStatus == 201 || connPtr->responseStatus == 207) ) && ! (drvPtr->keepallmethods == NS_TRUE || STREQ(connPtr->request->method, "GET")) && (key = Ns_SetIGet(conn->headers, "connection")) != NULL && *************** *** 703,707 **** */ if (status >= 400) { ! while (ds.length < servPtr->limits.errorminsize) { Ns_DStringAppend(&ds, " "); } --- 705,709 ---- */ if (status >= 400) { ! while (ds.length < servPtr->opts.errorminsize) { Ns_DStringAppend(&ds, " "); } Index: nsd.h =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/nsd.h,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** nsd.h 19 Jun 2005 16:31:58 -0000 1.19 --- nsd.h 6 Jul 2005 07:12:18 -0000 1.20 *************** *** 36,39 **** --- 36,40 ---- #include "ns.h" + #include "nsconf.h" #include <assert.h> #include <sys/stat.h> *************** *** 208,219 **** struct { - bool enabled; - int timeout; - int maxkeep; - int npending; - int allmethods; - } keepalive; - - struct { char *sharedlibrary; char *version; --- 209,212 ---- *************** *** 374,377 **** --- 367,371 ---- int closewait; /* Graceful close timeout. */ int keepwait; /* Keepalive timeout. */ + int keepallmethods; /* Keepalive all methods or just GET? */ SOCKET sock; /* Listening socket. */ int pidx; /* poll() index. */ *************** *** 381,384 **** --- 375,379 ---- int maxinput; /* Maximum request bytes to read. */ int maxline; /* Maximum request line size. */ + int maxheaders; /* Maximum number of request headers. */ unsigned int loggingFlags; /* Logging control flags */ *************** *** 572,575 **** --- 567,571 ---- bool modsince; bool noticedetail; + int errorminsize; char *realm; Ns_HeaderCaseDisposition hdrcase; *************** *** 587,603 **** Tcl_Encoding urlEncoding; } encoding; - - /* - * The following struct maintains conn-related limits. - */ struct { - int maxheaders; - int maxline; - int sendfdmin; - int errorminsize; - } limits; - - struct { char *serverdir; /* Virtual server files path */ char *pagedir; /* Path to public pages */ --- 583,588 ---- Index: queue.c =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/queue.c,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** queue.c 12 Jun 2005 14:42:44 -0000 1.3 --- queue.c 6 Jul 2005 07:12:18 -0000 1.4 *************** *** 331,335 **** case SKeepaliveIdx: ! Tcl_SetObjResult(interp, Tcl_NewIntObj(nsconf.keepalive.npending)); break; --- 331,335 ---- case SKeepaliveIdx: ! Tcl_SetObjResult(interp, Tcl_NewIntObj(0)); break; *************** *** 554,558 **** path = Ns_ConfigGetPath(servPtr->server, NULL, NULL); if (!Ns_ConfigGetInt(path, "connsperthread", &cpt)) { ! cpt = 0; /* == unlimited # of connections */ } --- 554,558 ---- path = Ns_ConfigGetPath(servPtr->server, NULL, NULL); if (!Ns_ConfigGetInt(path, "connsperthread", &cpt)) { ! cpt = SERV_MAXCONNSPERTHREAD_INT; } Index: server.c =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/server.c,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** server.c 16 Jun 2005 19:42:48 -0000 1.8 --- server.c 6 Jul 2005 07:12:18 -0000 1.9 *************** *** 230,242 **** if (!Ns_ConfigGetBool(path, "checkmodifiedsince", &servPtr->opts.modsince)) { ! servPtr->opts.modsince = 1; } if (!Ns_ConfigGetBool(path, "flushcontent", &servPtr->opts.flushcontent)) { ! servPtr->opts.flushcontent = 0; } if (!Ns_ConfigGetBool(path, "noticedetail", &servPtr->opts.noticedetail)) { ! servPtr->opts.noticedetail = 1; } p = Ns_ConfigGetValue(path, "headercase"); --- 230,246 ---- if (!Ns_ConfigGetBool(path, "checkmodifiedsince", &servPtr->opts.modsince)) { ! servPtr->opts.modsince = SERV_MODSINCE_BOOL; } if (!Ns_ConfigGetBool(path, "flushcontent", &servPtr->opts.flushcontent)) { ! servPtr->opts.flushcontent = SERV_FLUSHCONTENT_BOOL; } if (!Ns_ConfigGetBool(path, "noticedetail", &servPtr->opts.noticedetail)) { ! servPtr->opts.noticedetail = SERV_NOTICEDETAIL_BOOL; ! } ! if (!Ns_ConfigGetInt(path, "errorminsize", ! &servPtr->opts.errorminsize)) { ! servPtr->opts.errorminsize = SERV_ERRORMINSIZE_INT; } p = Ns_ConfigGetValue(path, "headercase"); *************** *** 286,310 **** /* - * Set some server limits. - */ - - if (!Ns_ConfigGetInt(path, "sendfdthreshold", - &servPtr->limits.sendfdmin)) { - servPtr->limits.sendfdmin = 2048; - } - if (!Ns_ConfigGetInt(path, "errorminsize", - &servPtr->limits.errorminsize)) { - servPtr->limits.errorminsize = 514; - } - if (!Ns_ConfigGetInt(path, "maxline", - &servPtr->limits.maxline)) { - servPtr->limits.maxline = 16 * 1024; /* 16k */ - } - if (!Ns_ConfigGetInt(path, "maxheaders", - &servPtr->limits.maxheaders)) { - servPtr->limits.maxheaders = 64 * 1024; /* 64k */ - } - - /* * Initialize Tcl. */ --- 290,293 ---- *************** *** 325,329 **** Ns_RWLockInit(&servPtr->tcl.lock); if (!Ns_ConfigGetInt(path, "nsvbuckets", &n) || n < 1) { ! n = 8; } servPtr->nsv.nbuckets = n; --- 308,312 ---- Ns_RWLockInit(&servPtr->tcl.lock); if (!Ns_ConfigGetInt(path, "nsvbuckets", &n) || n < 1) { ! n = TCL_NSVBUCKETS_INT; } servPtr->nsv.nbuckets = n; *************** *** 350,357 **** if (!Ns_ConfigGetBool(path, "cache", &i) || i) { if (!Ns_ConfigGetInt(path, "cachemaxsize", &n)) { ! n = 5 * 1024 * 1000; } if (!Ns_ConfigGetInt(path, "cachemaxentry", &i) || i < 0) { ! i = n / 10; } servPtr->fastpath.cachemaxentry = i; --- 333,340 ---- if (!Ns_ConfigGetBool(path, "cache", &i) || i) { if (!Ns_ConfigGetInt(path, "cachemaxsize", &n)) { ! n = FASTPATH_CACHESIZE_INT; } if (!Ns_ConfigGetInt(path, "cachemaxentry", &i) || i < 0) { ! i = FASTPATH_CACHEMAXENTRY_INT; } servPtr->fastpath.cachemaxentry = i; *************** *** 359,363 **** } if (!Ns_ConfigGetBool(path, "mmap", &servPtr->fastpath.mmap)) { ! servPtr->fastpath.mmap = 0; } dirf = Ns_ConfigGetValue(path, "directoryfile"); --- 342,346 ---- } if (!Ns_ConfigGetBool(path, "mmap", &servPtr->fastpath.mmap)) { ! servPtr->fastpath.mmap = FASTPATH_MMAP_BOOL; } dirf = Ns_ConfigGetValue(path, "directoryfile"); *************** *** 418,422 **** path = Ns_ConfigGetPath(server, NULL, "vhost", NULL); ! Ns_ConfigGetBool(path, "enabled", &servPtr->vhost.enabled); if (servPtr->vhost.enabled && Ns_PathIsAbsolute(servPtr->fastpath.pagedir)) { --- 401,407 ---- path = Ns_ConfigGetPath(server, NULL, "vhost", NULL); ! if (!Ns_ConfigGetBool(path, "enabled", &servPtr->vhost.enabled)) { ! servPtr->vhost.enabled = VHOST_ENABLED_BOOL; ! } if (servPtr->vhost.enabled && Ns_PathIsAbsolute(servPtr->fastpath.pagedir)) { *************** *** 483,502 **** if (!Ns_ConfigGetBool(path, "enableexpire", &servPtr->adp.enableexpire)) { ! servPtr->adp.enableexpire = 0; } if (!Ns_ConfigGetBool(path, "enabledebug", &servPtr->adp.enabledebug)) { ! servPtr->adp.enabledebug = 0; } servPtr->adp.debuginit = Ns_ConfigGetValue(path, "debuginit"); if (servPtr->adp.debuginit == NULL) { ! servPtr->adp.debuginit = "ns_adp_debuginit"; } servPtr->adp.defaultparser = Ns_ConfigGetValue(path, "defaultparser"); if (servPtr->adp.defaultparser == NULL) { ! servPtr->adp.defaultparser = "adp"; } if (!Ns_ConfigGetInt(path, "cachesize", &n)) { ! n = 5 * 1024 * 1000; } servPtr->adp.cachesize = n; --- 468,487 ---- if (!Ns_ConfigGetBool(path, "enableexpire", &servPtr->adp.enableexpire)) { ! servPtr->adp.enableexpire = ADP_ENABLEEXPIRE_BOOL; } if (!Ns_ConfigGetBool(path, "enabledebug", &servPtr->adp.enabledebug)) { ! servPtr->adp.enabledebug = ADP_ENABLEDEBUG_BOOL; } servPtr->adp.debuginit = Ns_ConfigGetValue(path, "debuginit"); if (servPtr->adp.debuginit == NULL) { ! servPtr->adp.debuginit = ADP_DEBUGINIT_STRING; } servPtr->adp.defaultparser = Ns_ConfigGetValue(path, "defaultparser"); if (servPtr->adp.defaultparser == NULL) { ! servPtr->adp.defaultparser = ADP_DEFPARSER_STRING; } if (!Ns_ConfigGetInt(path, "cachesize", &n)) { ! n = ADP_CACHESIZE_INT; } servPtr->adp.cachesize = n; *************** *** 508,515 **** path = Ns_ConfigGetPath(server, NULL, "adp", "compress", NULL); if (!Ns_ConfigGetBool(path, "enable", &servPtr->adp.compress.enable)) { ! servPtr->adp.compress.enable = 0; } if (!Ns_ConfigGetInt(path, "level", &n) || n < 1 || n > 9) { ! n = 4; } servPtr->adp.compress.level = n; --- 493,500 ---- path = Ns_ConfigGetPath(server, NULL, "adp", "compress", NULL); if (!Ns_ConfigGetBool(path, "enable", &servPtr->adp.compress.enable)) { ! servPtr->adp.compress.enable = ADP_ENABLECOMPRESS_BOOL; } if (!Ns_ConfigGetInt(path, "level", &n) || n < 1 || n > 9) { ! n = ADP_COMPRESSLEVEL_INT; } servPtr->adp.compress.level = n; *************** *** 631,635 **** if (!Ns_ConfigGetInt(path, "maxconnections", &maxconns)) { ! maxconns = 100; } connBufPtr = ns_calloc((size_t) maxconns, sizeof(Conn)); --- 616,620 ---- if (!Ns_ConfigGetInt(path, "maxconnections", &maxconns)) { ! maxconns = SERV_MAXCONNS_INT; } connBufPtr = ns_calloc((size_t) maxconns, sizeof(Conn)); *************** *** 643,688 **** if (!Ns_ConfigGetInt(path, "minthreads", &poolPtr->threads.min)) { ! poolPtr->threads.min = 0; ! } ! if (!Ns_ConfigGetInt(path, "maxthreads", ! &poolPtr->threads.max)) { ! poolPtr->threads.max = 10; ! } ! if (!Ns_ConfigGetInt(path, "threadtimeout", ! &poolPtr->threads.timeout)) { ! poolPtr->threads.timeout = 120; ! } ! ! /* ! * Determine the minimum and maximum number of threads, adjusting the ! * values as needed. The threadtimeout value is the maximum number of ! * seconds a thread will wait for a connection before exiting if the ! * current number of threads is above the minimum. ! */ ! ! if (poolPtr->threads.max > maxconns) { ! Ns_Log(Warning, "serv: cannot have more maxthreads than maxconns: " ! "%d max threads adjusted down to %d max connections", ! poolPtr->threads.max, maxconns); ! poolPtr->threads.max = maxconns; ! } ! if (poolPtr->threads.min > poolPtr->threads.max) { ! Ns_Log(Warning, "serv: cannot have more minthreads than maxthreads: " ! "%d min threads adjusted down to %d max threads", ! poolPtr->threads.min, poolPtr->threads.max); ! poolPtr->threads.min = poolPtr->threads.max; ! } ! ! if (!Ns_ConfigGetInt(path, "minthreads", ! &poolPtr->threads.min)) { ! poolPtr->threads.min = 0; } if (!Ns_ConfigGetInt(path, "maxthreads", &poolPtr->threads.max)) { ! poolPtr->threads.max = 10; } if (!Ns_ConfigGetInt(path, "threadtimeout", &poolPtr->threads.timeout)) { ! poolPtr->threads.timeout = 120; } --- 628,640 ---- if (!Ns_ConfigGetInt(path, "minthreads", &poolPtr->threads.min)) { ! poolPtr->threads.min = SERV_MINTHREADS_INT; } if (!Ns_ConfigGetInt(path, "maxthreads", &poolPtr->threads.max)) { ! poolPtr->threads.max = SERV_MAXTHREADS_INT; } if (!Ns_ConfigGetInt(path, "threadtimeout", &poolPtr->threads.timeout)) { ! poolPtr->threads.timeout = SERV_THREADTIMEOUT_INT; } Index: nsconf.c =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/nsconf.c,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** nsconf.c 10 Jun 2005 17:58:39 -0000 1.3 --- nsconf.c 6 Jul 2005 07:12:18 -0000 1.4 *************** *** 35,39 **** #include "nsd.h" - #include "nsconf.h" NS_RCSID("@(#) $Header$"); --- 35,38 ---- *************** *** 208,212 **** */ ! nsconf.shutdowntimeout = GetInt("shutdowntimeout", SHUTDOWNTIMEOUT); /* --- 207,211 ---- */ ! nsconf.shutdowntimeout = GetInt("shutdowntimeout", SHUTDOWNTIMEOUT_INT); /* *************** *** 220,224 **** */ ! nsconf.backlog = GetInt("listenbacklog", BACKLOG); /* --- 219,223 ---- */ ! nsconf.backlog = GetInt("listenbacklog", SOCKLISTENBACKLOG_INT); /* *************** *** 236,250 **** /* - * keepalive.c - */ - - nsconf.keepalive.timeout = GetInt("keepalivetimeout", KEEPALIVE_TIMEOUT_INT); - if (nsconf.keepalive.timeout > 0) { - nsconf.keepalive.enabled = 1; - } - nsconf.keepalive.maxkeep = GetInt("maxkeepalive", KEEPALIVE_MAXKEEP_INT); - nsconf.keepalive.allmethods = GetBool("keepaliveallmethods", NS_FALSE); - - /* * tclinit.c */ --- 235,238 ---- Index: driver.c =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/driver.c,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** driver.c 24 Jun 2005 08:36:29 -0000 1.15 --- driver.c 6 Jul 2005 07:12:17 -0000 1.16 *************** *** 156,160 **** { char *path,*address, *host, *bindaddr, *defproto, *defserver; ! int i, n, sockwait, defport, controlFlag; ServerMap *mapPtr; Tcl_HashEntry *hPtr; --- 156,160 ---- { char *path,*address, *host, *bindaddr, *defproto, *defserver; ! int i, n, defport, controlFlag; ServerMap *mapPtr; Tcl_HashEntry *hPtr; *************** *** 271,317 **** #define _MIN(x,y) ((x) > (y) ? (y) : (x)) if (!Ns_ConfigGetInt(path, "bufsize", &n) || n < 1) { ! n = 16000; /* ~16k */ } drvPtr->bufsize = n; if (!Ns_ConfigGetInt(path, "rcvbuf", &n)) { ! n = 0; /* Use OS default. */ } drvPtr->rcvbuf = n; if (!Ns_ConfigGetInt(path, "sndbuf", &n)) { ! n = 0; /* Use OS default. */ } drvPtr->sndbuf = n; - if (!Ns_ConfigGetInt(path, "socktimeout", &n) || n < 1) { - n = 30; /* 30 seconds. */ - } - sockwait = n; if (!Ns_ConfigGetInt(path, "sendwait", &n) || n < 1) { ! n = sockwait; /* Use previous socktimeout option. */ } drvPtr->sendwait = n; if (!Ns_ConfigGetInt(path, "recvwait", &n) || n < 1) { ! n = sockwait; /* Use previous socktimeout option. */ } drvPtr->recvwait = n; if (!Ns_ConfigGetInt(path, "closewait", &n) || n < 0) { ! n = 2; /* 2 seconds */ } drvPtr->closewait = n; if (!Ns_ConfigGetInt(path, "keepwait", &n) || n < 0) { ! n = 30; /* 30 seconds */ } drvPtr->keepwait = n; if (!Ns_ConfigGetInt(path, "backlog", &n) || n < 1) { ! n = 5; /* 5 pending connections. */ } drvPtr->backlog = n; if (!Ns_ConfigGetInt(path, "maxinput", &n) || n < 1) { ! n = 1000 * 1024; /* 1m. */ } ! drvPtr->maxinput = _MAX(n, 1024); if (!Ns_ConfigGetInt(path, "maxline", &n) || n < 1) { ! n = 4 * 1024; /* 4k. */ } ! drvPtr->maxline = _MAX(n, 256); /* --- 271,317 ---- #define _MIN(x,y) ((x) > (y) ? (y) : (x)) if (!Ns_ConfigGetInt(path, "bufsize", &n) || n < 1) { ! n = DRV_BUFSIZE_INT; } drvPtr->bufsize = n; if (!Ns_ConfigGetInt(path, "rcvbuf", &n)) { ! n = DRV_RCVBUF_INT; } drvPtr->rcvbuf = n; if (!Ns_ConfigGetInt(path, "sndbuf", &n)) { ! n = DRV_SNDBUF_INT; } drvPtr->sndbuf = n; if (!Ns_ConfigGetInt(path, "sendwait", &n) || n < 1) { ! n = DRV_SNDWAIT_INT; } drvPtr->sendwait = n; if (!Ns_ConfigGetInt(path, "recvwait", &n) || n < 1) { ! n = DRV_RCVWAIT_INT; } drvPtr->recvwait = n; if (!Ns_ConfigGetInt(path, "closewait", &n) || n < 0) { ! n = DRV_CLOSEWAIT_INT; } drvPtr->closewait = n; if (!Ns_ConfigGetInt(path, "keepwait", &n) || n < 0) { ! n = DRV_KEEPWAIT_INT; } drvPtr->keepwait = n; + if (!Ns_ConfigGetBool(path, "keepallmethods", &n)) { + n = DRV_KEEPALLMETHODS_BOOL; + } + drvPtr->keepallmethods = n; if (!Ns_ConfigGetInt(path, "backlog", &n) || n < 1) { ! n = nsconf.backlog; } drvPtr->backlog = n; if (!Ns_ConfigGetInt(path, "maxinput", &n) || n < 1) { ! n = DRV_MAXINPUT_INT; } ! drvPtr->maxinput = _MAX(n, DRV_MININPUT_INT); if (!Ns_ConfigGetInt(path, "maxline", &n) || n < 1) { ! n = DRV_MAXLINE_INT; } ! drvPtr->maxline = _MAX(n, DRV_MINLINE_INT); /* Index: connio.c =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/connio.c,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** connio.c 19 Jun 2005 16:37:54 -0000 1.3 --- connio.c 6 Jul 2005 07:12:17 -0000 1.4 *************** *** 560,564 **** Conn *connPtr = (Conn *) conn; Request *reqPtr = connPtr->reqPtr; ! NsServer *servPtr = connPtr->servPtr; char *eol; int nread, ncopy; --- 560,564 ---- Conn *connPtr = (Conn *) conn; Request *reqPtr = connPtr->reqPtr; ! Driver *drvPtr = connPtr->drvPtr; char *eol; int nread, ncopy; *************** *** 566,570 **** if (connPtr->sockPtr == NULL || (eol = strchr(reqPtr->next, '\n')) == NULL ! || (nread = (eol - reqPtr->next)) > servPtr->limits.maxline) { return NS_ERROR; } --- 566,570 ---- if (connPtr->sockPtr == NULL || (eol = strchr(reqPtr->next, '\n')) == NULL ! || (nread = (eol - reqPtr->next)) > drvPtr->maxline) { return NS_ERROR; } *************** *** 610,614 **** Ns_DStringInit(&ds); nread = 0; ! maxhdr = servPtr->limits.maxheaders; status = NS_OK; while (nread < maxhdr && status == NS_OK) { --- 610,614 ---- Ns_DStringInit(&ds); nread = 0; ! maxhdr = connPtr->drvPtr->maxheaders; status = NS_OK; while (nread < maxhdr && status == NS_OK) { |
From: Stephen D. <sd...@us...> - 2005-07-06 07:12:25
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14491 Modified Files: ChangeLog Log Message: * nsd/connio.c: * nsd/queue.c: * nsd/return.c: * nsd/driver.c: * nsd/server.c: * nsd/nsd.h: * nsd/nsconf.c: * nsd/nsconf.h: Cleanup default configuration by removing unneeded values and actually using the defaults throughout the code where appropriate. Some per-server limits have been made per-driver. Index: ChangeLog =================================================================== RCS file: /cvsroot/naviserver/naviserver/ChangeLog,v retrieving revision 1.148 retrieving revision 1.149 diff -C2 -d -r1.148 -r1.149 *** ChangeLog 6 Jul 2005 00:47:36 -0000 1.148 --- ChangeLog 6 Jul 2005 07:12:16 -0000 1.149 *************** *** 1,2 **** --- 1,15 ---- + 2005-07-06 Stephen Deasey <sd...@us...> + + * nsd/connio.c: + * nsd/queue.c: + * nsd/return.c: + * nsd/driver.c: + * nsd/server.c: + * nsd/nsd.h: + * nsd/nsconf.c: + * nsd/nsconf.h: Cleanup default configuration by removing unneeded + values and actually using the defaults throughout the code where + appropriate. Some per-server limits have been made per-driver. + 2005-07-05 Stephen Deasey <sd...@us...> |
From: Stephen D. <sd...@us...> - 2005-07-06 00:47:50
|
Update of /cvsroot/naviserver/naviserver/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19226/tests Modified Files: http_byteranges.test Log Message: Add back preliminary support for HTTP range requests. Index: http_byteranges.test =================================================================== RCS file: /cvsroot/naviserver/naviserver/tests/http_byteranges.test,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** http_byteranges.test 5 Jul 2005 23:36:06 -0000 1.5 --- http_byteranges.test 6 Jul 2005 00:47:36 -0000 1.6 *************** *** 49,55 **** ! test byteranges-1.1 {Simple range, beginning} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=0-4} \ -getheaders {Content-length Content-range} \ --- 49,53 ---- ! test byteranges-1.1 {Simple range, beginning} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=0-4} \ -getheaders {Content-length Content-range} \ *************** *** 57,63 **** } -result {206 5 {bytes 0-4/10} 01234} ! test byteranges-1.2 {Simple range, end} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=5-9} \ -getheaders {Content-length Content-range} \ --- 55,59 ---- } -result {206 5 {bytes 0-4/10} 01234} ! test byteranges-1.2 {Simple range, end} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=5-9} \ -getheaders {Content-length Content-range} \ *************** *** 65,71 **** } -result {206 5 {bytes 5-9/10} 56789} ! test byteranges-1.3 {Relative range} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=5-} \ -getheaders {Content-length Content-range} \ --- 61,65 ---- } -result {206 5 {bytes 5-9/10} 56789} ! test byteranges-1.3 {Relative range} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=5-} \ -getheaders {Content-length Content-range} \ *************** *** 73,79 **** } -result {206 5 {bytes 5-9/10} 56789} ! test byteranges-1.4 {Relative range} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=-5} \ -getheaders {Content-length Content-range} \ --- 67,71 ---- } -result {206 5 {bytes 5-9/10} 56789} ! test byteranges-1.4 {Relative range} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=-5} \ -getheaders {Content-length Content-range} \ *************** *** 81,87 **** } -result {206 5 {bytes 5-9/10} 56789} ! test byteranges-1.5 {Single byte (1st)} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=0-0} \ -getheaders {Content-length Content-range} \ --- 73,77 ---- } -result {206 5 {bytes 5-9/10} 56789} ! test byteranges-1.5 {Single byte (1st)} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=0-0} \ -getheaders {Content-length Content-range} \ *************** *** 89,95 **** } -result {206 1 {bytes 0-0/10} 0} ! test byteranges-1.6 {Single byte (2nd)} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=1-1} \ -getheaders {Content-length Content-range} \ --- 79,83 ---- } -result {206 1 {bytes 0-0/10} 0} ! test byteranges-1.6 {Single byte (2nd)} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=1-1} \ -getheaders {Content-length Content-range} \ *************** *** 97,103 **** } -result {206 1 {bytes 1-1/10} 1} ! test byteranges-1.7 {Single byte (last)} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=9-9} \ -getheaders {Content-length Content-range} \ --- 85,89 ---- } -result {206 1 {bytes 1-1/10} 1} ! test byteranges-1.7 {Single byte (last)} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=9-9} \ -getheaders {Content-length Content-range} \ *************** *** 105,111 **** } -result {206 1 {bytes 9-9/10} 9} ! test byteranges-1.8 {Request more than exists} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=0-10} \ -getheaders {Content-length Content-range} \ --- 91,95 ---- } -result {206 1 {bytes 9-9/10} 9} ! test byteranges-1.8 {Request more than exists} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=0-10} \ -getheaders {Content-length Content-range} \ *************** *** 113,119 **** } -result {206 10 {bytes 0-9/10} 0123456789} ! test byteranges-1.9 {Request more than exists} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=-10} \ -getheaders {Content-length Content-range} \ --- 97,101 ---- } -result {206 10 {bytes 0-9/10} 0123456789} ! test byteranges-1.9 {Request more than exists} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=-10} \ -getheaders {Content-length Content-range} \ *************** *** 183,186 **** --- 165,176 ---- }] + test byteranges-2.6 { + Temporary: multiple ranges unsupported, just ignore. + } -constraints serverListen -body { + nstest_http -getbody 1 -setheaders {Range bytes=0-2,3-6} \ + -getheaders {Content-length Content-range} \ + GET /10bytes + } -result {200 10 {} 0123456789} + *************** *** 241,254 **** ! test byteranges-4.1 {unsatisfiable} -constraints { ! serverListen knownBug ! } -body { nstest_http -setheaders {Range bytes=10-10} -getheaders {Content-range} \ GET /10bytes } -result {416 {bytes */10}} ! test byteranges-4.2 {unsatisfiable} -constraints { ! serverListen knownBug ! } -body { nstest_http -setheaders {Range bytes=10-} -getheaders {Content-range} \ GET /10bytes --- 231,240 ---- ! test byteranges-4.1 {unsatisfiable} -constraints serverListen -body { nstest_http -setheaders {Range bytes=10-10} -getheaders {Content-range} \ GET /10bytes } -result {416 {bytes */10}} ! test byteranges-4.2 {unsatisfiable} -constraints serverListen -body { nstest_http -setheaders {Range bytes=10-} -getheaders {Content-range} \ GET /10bytes |
From: Stephen D. <sd...@us...> - 2005-07-06 00:47:50
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19226 Modified Files: ChangeLog NEWS Log Message: Add back preliminary support for HTTP range requests. Index: NEWS =================================================================== RCS file: /cvsroot/naviserver/naviserver/NEWS,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** NEWS 5 Jul 2005 23:18:47 -0000 1.7 --- NEWS 6 Jul 2005 00:47:36 -0000 1.8 *************** *** 1,2 **** --- 1,13 ---- + ================= + NaviServer 4.99.1 + ================= + + New Features: + + * HTTP Range requests for streaming media and resuming downloads + + + + ====================================== NaviServer 4.99.0, released 2005-07-05 Index: ChangeLog =================================================================== RCS file: /cvsroot/naviserver/naviserver/ChangeLog,v retrieving revision 1.147 retrieving revision 1.148 diff -C2 -d -r1.147 -r1.148 *** ChangeLog 6 Jul 2005 00:37:07 -0000 1.147 --- ChangeLog 6 Jul 2005 00:47:36 -0000 1.148 *************** *** 1,4 **** --- 1,8 ---- 2005-07-05 Stephen Deasey <sd...@us...> + * nsd/fastpath.c: + * tests/http_byteranges.test: + * NEWS: Add back preliminary support for HTTP range requests. + * configure.in: * configure: Update version to 4.99.1 and regenerate configure |
From: Stephen D. <sd...@us...> - 2005-07-06 00:47:50
|
Update of /cvsroot/naviserver/naviserver/nsd In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19226/nsd Modified Files: fastpath.c Log Message: Add back preliminary support for HTTP range requests. Index: fastpath.c =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/fastpath.c,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** fastpath.c 5 Jul 2005 23:36:06 -0000 1.11 --- fastpath.c 6 Jul 2005 00:47:36 -0000 1.12 *************** *** 39,42 **** --- 39,44 ---- NS_RCSID("@(#) $Header$"); + #define MAX_RANGES 10 + /* * The following structure defines the contents of a file *************** *** 61,65 **** static int FastReturn(NsServer *servPtr, Ns_Conn *conn, int status, char *type, char *file, struct stat *stPtr); ! /* --- 63,68 ---- static int FastReturn(NsServer *servPtr, Ns_Conn *conn, int status, char *type, char *file, struct stat *stPtr); ! static int ParseRange(Ns_Conn *conn, unsigned long size, unsigned long *offsets, ! int offsets_size); /* *************** *** 472,479 **** char *type, char *file, struct stat *stPtr) { ! int result = NS_ERROR, fd, new, nread; ! File *filePtr; char *key; Ns_Entry *entPtr; FileMap fmap; --- 475,484 ---- char *type, char *file, struct stat *stPtr) { ! int fd, new, nread; ! unsigned long size, offsets[MAX_RANGES*2]; ! int result = NS_ERROR, ranges = 0; char *key; Ns_Entry *entPtr; + File *filePtr; FileMap fmap; *************** *** 510,515 **** } if (servPtr->fastpath.cache == NULL ! || stPtr->st_size > servPtr->fastpath.cachemaxentry) { /* --- 515,546 ---- } + /* + * Check if this is a Range: request, if so return requested + * portion of the file. Range requests are not cached. + */ + + size = stPtr->st_size; + if (status == 200) { + ranges = ParseRange(conn, stPtr->st_size, offsets, MAX_RANGES*2); + } + if (ranges == -1) { + /* 416 Requested Range Not Satisfiable */ + Ns_ConnPrintfHeaders(conn, "Content-Range", "bytes */%lu", + stPtr->st_size); + Ns_ConnSetRequiredHeaders(conn, type, (int) stPtr->st_size); + return Ns_ConnFlushHeaders(conn, 416); + } + if (ranges == 1) { + /* Continue with returning a portion of the file */ + Ns_ConnPrintfHeaders(conn, "Content-Range", "bytes %lu-%lu/%lu", + offsets[0], offsets[1], stPtr->st_size); + size = (offsets[1] - offsets[0]) + 1; + /* 206 Partial Content */ + status = 206; + } + if (servPtr->fastpath.cache == NULL ! || stPtr->st_size > servPtr->fastpath.cachemaxentry ! || ranges == 1) { /* *************** *** 522,526 **** if (servPtr->fastpath.mmap && NsMemMap(file, stPtr->st_size, NS_MMAP_READ, &fmap) == NS_OK) { ! result = Ns_ConnReturnData(conn,status, fmap.addr,fmap.size, type); NsMemUmap(&fmap); } else { --- 553,561 ---- if (servPtr->fastpath.mmap && NsMemMap(file, stPtr->st_size, NS_MMAP_READ, &fmap) == NS_OK) { ! char *maddr = fmap.addr; ! if (ranges > 0) { ! maddr += offsets[0]; ! } ! result = Ns_ConnReturnData(conn,status, maddr, size, type); NsMemUmap(&fmap); } else { *************** *** 531,535 **** goto notfound; } ! result = Ns_ConnReturnOpenFd(conn, status,type, fd,stPtr->st_size); close(fd); } --- 566,573 ---- goto notfound; } ! if (ranges > 0) { ! lseek(fd, offsets[0], SEEK_SET); ! } ! result = Ns_ConnReturnOpenFd(conn, status, type, fd, size); close(fd); } *************** *** 643,644 **** --- 681,780 ---- return status; } + + + /* + *---------------------------------------------------------------------- + * + * ParseRange -- + * + * Checks for presence of Range: header, parses it and returns + * the requested offsets + * + * Results: + * -1 on error, number of byte ranges parsed + * + * Side effects: + * First range specification is honored only + * + *---------------------------------------------------------------------- + */ + + static int + ParseRange(Ns_Conn *conn, unsigned long size, unsigned long *offsets, + int offsets_size) + { + int count = 0; + char *range; + + if ((range = Ns_SetIGet(conn->headers, "Range")) == NULL + || (range = strstr(range,"bytes=")) == NULL) { + return 0; + } + range += 6; + memset(offsets,0,sizeof(unsigned long)*offsets_size); + + while(*range && count < offsets_size-1) { + if (isdigit(*range)) { + offsets[count] = atol(range); + while (isdigit(*range)) range++; + if (*range == '-') { + range++; + if (!isdigit(*range)) { + offsets[count+1] = size - 1; + } else { + offsets[count+1] = atol(range); + if (offsets[count] > offsets[count+1]) { + return 0; + } + if (offsets[count+1] >= size) { + offsets[count+1] = size - 1; + } + while (isdigit(*range)) range++; + } + switch (*range) { + case ',': + range++; + case '\0': + break; + default: + return 0; + } + if (offsets[count] > offsets[count+1]) { + return -1; + } + count += 2; + continue; + } + } else if (*range == '-') { + range++; + if (!isdigit(*range)) { + return 0; + } + offsets[count+1] = atol(range); + if (offsets[count+1] > size) { + offsets[count+1] = size; + } + /* Size from the end requested, convert into offset */ + offsets[count] = size - offsets[count+1]; + offsets[count+1] = offsets[count] + offsets[count+1] - 1; + while (isdigit(*range)) range++; + switch (*range) { + case ',': + range++; + case '\0': + break; + default: + return 0; + } + if (offsets[count] > offsets[count+1]) { + return -1; + } + count += 2; + continue; + } + /* Invalid syntax */ + return 0; + } + return count/2; + } + |
From: Stephen D. <sd...@us...> - 2005-07-06 00:37:16
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13321 Modified Files: ChangeLog configure configure.in Log Message: Update version to 4.99.1 and regenerate configure script. Index: ChangeLog =================================================================== RCS file: /cvsroot/naviserver/naviserver/ChangeLog,v retrieving revision 1.146 retrieving revision 1.147 diff -C2 -d -r1.146 -r1.147 *** ChangeLog 6 Jul 2005 00:28:41 -0000 1.146 --- ChangeLog 6 Jul 2005 00:37:07 -0000 1.147 *************** *** 1,4 **** --- 1,8 ---- 2005-07-05 Stephen Deasey <sd...@us...> + * configure.in: + * configure: Update version to 4.99.1 and regenerate configure + script. + * TAG naviserver-4.99.0-release. Index: configure =================================================================== RCS file: /cvsroot/naviserver/naviserver/configure,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** configure 10 Jun 2005 21:52:35 -0000 1.9 --- configure 6 Jul 2005 00:37:07 -0000 1.10 *************** *** 1,6 **** #! /bin/sh ! # From configure.in Revision: 1.7 . # Guess values for system-dependent variables and create Makefiles. ! # Generated by GNU Autoconf 2.59 for NaviServer 4.99.0. # # Report bugs to <nav...@li...>. --- 1,6 ---- #! /bin/sh ! # From configure.in Revision: 1.8 . # Guess values for system-dependent variables and create Makefiles. ! # Generated by GNU Autoconf 2.59 for NaviServer 4.99.1. # # Report bugs to <nav...@li...>. *************** *** 271,276 **** PACKAGE_NAME='NaviServer' PACKAGE_TARNAME='naviserver' ! PACKAGE_VERSION='4.99.0' ! PACKAGE_STRING='NaviServer 4.99.0' PACKAGE_BUGREPORT='nav...@li...' --- 271,276 ---- PACKAGE_NAME='NaviServer' PACKAGE_TARNAME='naviserver' ! PACKAGE_VERSION='4.99.1' ! PACKAGE_STRING='NaviServer 4.99.1' PACKAGE_BUGREPORT='nav...@li...' *************** *** 782,786 **** # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF ! \`configure' configures NaviServer 4.99.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... --- 782,786 ---- # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF ! \`configure' configures NaviServer 4.99.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... *************** *** 839,843 **** if test -n "$ac_init_help"; then case $ac_init_help in ! short | recursive ) echo "Configuration of NaviServer 4.99.0:";; esac cat <<\_ACEOF --- 839,843 ---- if test -n "$ac_init_help"; then case $ac_init_help in ! short | recursive ) echo "Configuration of NaviServer 4.99.1:";; esac cat <<\_ACEOF *************** *** 970,974 **** if $ac_init_version; then cat <<\_ACEOF ! NaviServer configure 4.99.0 generated by GNU Autoconf 2.59 --- 970,974 ---- if $ac_init_version; then cat <<\_ACEOF ! NaviServer configure 4.99.1 generated by GNU Autoconf 2.59 *************** *** 984,988 **** running configure, to aid debugging if configure makes a mistake. ! It was created by NaviServer $as_me 4.99.0, which was generated by GNU Autoconf 2.59. Invocation command line was --- 984,988 ---- running configure, to aid debugging if configure makes a mistake. ! It was created by NaviServer $as_me 4.99.1, which was generated by GNU Autoconf 2.59. Invocation command line was *************** *** 1327,1330 **** --- 1327,1336 ---- + # + # Version info. + # Don't forget to update the naviserver.rdf DOAP before making a release. + # + + cat >>confdefs.h <<\_ACEOF #define NS_MAJOR_VERSION 4 *************** *** 1338,1342 **** cat >>confdefs.h <<\_ACEOF ! #define NS_RELEASE_SERIAL 0 _ACEOF --- 1344,1348 ---- cat >>confdefs.h <<\_ACEOF ! #define NS_RELEASE_SERIAL 1 _ACEOF *************** *** 1348,1352 **** cat >>confdefs.h <<\_ACEOF ! #define NS_PATCH_LEVEL "4.99.0" _ACEOF --- 1354,1358 ---- cat >>confdefs.h <<\_ACEOF ! #define NS_PATCH_LEVEL "4.99.1" _ACEOF *************** *** 1357,1361 **** ! NS_PATCH_LEVEL="4.99.0" --- 1363,1367 ---- ! NS_PATCH_LEVEL="4.99.1" *************** *** 13599,13603 **** cat >&5 <<_CSEOF ! This file was extended by NaviServer $as_me 4.99.0, which was generated by GNU Autoconf 2.59. Invocation command line was --- 13605,13609 ---- cat >&5 <<_CSEOF ! This file was extended by NaviServer $as_me 4.99.1, which was generated by GNU Autoconf 2.59. Invocation command line was *************** *** 13659,13663 **** cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ ! NaviServer config.status 4.99.0 configured by $0, generated by GNU Autoconf 2.59, with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" --- 13665,13669 ---- cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ ! NaviServer config.status 4.99.1 configured by $0, generated by GNU Autoconf 2.59, with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" Index: configure.in =================================================================== RCS file: /cvsroot/naviserver/naviserver/configure.in,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** configure.in 10 Jun 2005 21:52:35 -0000 1.8 --- configure.in 6 Jul 2005 00:37:07 -0000 1.9 *************** *** 37,41 **** # ! AC_INIT(NaviServer, 4.99.0, nav...@li...) AC_CONFIG_SRCDIR(include/ns.h) AC_CONFIG_HEADER(include/nsconfig.h) --- 37,41 ---- # ! AC_INIT(NaviServer, 4.99.1, nav...@li...) AC_CONFIG_SRCDIR(include/ns.h) AC_CONFIG_HEADER(include/nsconfig.h) *************** *** 43,55 **** AC_REVISION($Revision$) AC_DEFINE(NS_MAJOR_VERSION, 4, [Major Version]) AC_DEFINE(NS_MINOR_VERSION, 99, [Minor Version]) ! AC_DEFINE(NS_RELEASE_SERIAL, 0, [Release Serial]) AC_DEFINE(NS_VERSION, "4.99", [Version]) ! AC_DEFINE(NS_PATCH_LEVEL, "4.99.0", [Patch Level]) AC_DEFINE(NS_RELEASE_LEVEL, NS_ALPHA_RELEASE, [NS_ALPHA_RELASE, NS_BETA_RELEASE or NS_FINAL_RELEASE]) ! NS_PATCH_LEVEL="4.99.0" AC_SUBST(NS_PATCH_LEVEL) --- 43,61 ---- AC_REVISION($Revision$) + + # + # Version info. + # Don't forget to update the naviserver.rdf DOAP before making a release. + # + AC_DEFINE(NS_MAJOR_VERSION, 4, [Major Version]) AC_DEFINE(NS_MINOR_VERSION, 99, [Minor Version]) ! AC_DEFINE(NS_RELEASE_SERIAL, 1, [Release Serial]) AC_DEFINE(NS_VERSION, "4.99", [Version]) ! AC_DEFINE(NS_PATCH_LEVEL, "4.99.1", [Patch Level]) AC_DEFINE(NS_RELEASE_LEVEL, NS_ALPHA_RELEASE, [NS_ALPHA_RELASE, NS_BETA_RELEASE or NS_FINAL_RELEASE]) ! NS_PATCH_LEVEL="4.99.1" AC_SUBST(NS_PATCH_LEVEL) |
From: Stephen D. <sd...@us...> - 2005-07-06 00:28:50
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8521 Modified Files: ChangeLog Log Message: TAG naviserver-4.99.0-release. Index: ChangeLog =================================================================== RCS file: /cvsroot/naviserver/naviserver/ChangeLog,v retrieving revision 1.145 retrieving revision 1.146 diff -C2 -d -r1.145 -r1.146 *** ChangeLog 5 Jul 2005 23:49:46 -0000 1.145 --- ChangeLog 6 Jul 2005 00:28:41 -0000 1.146 *************** *** 1,4 **** --- 1,6 ---- 2005-07-05 Stephen Deasey <sd...@us...> + * TAG naviserver-4.99.0-release. + * Makefile: Add DOAP file to list of files to be included in release tarball. |
From: Stephen D. <sd...@us...> - 2005-07-05 23:49:54
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19963 Modified Files: ChangeLog Makefile Log Message: Add DOAP file to list of files to be included in release tarball. Index: Makefile =================================================================== RCS file: /cvsroot/naviserver/naviserver/Makefile,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** Makefile 8 Jun 2005 16:29:12 -0000 1.11 --- Makefile 5 Jul 2005 23:49:46 -0000 1.12 *************** *** 36,41 **** dirs = nsthread nsd nssock nscgi nscp nslog nsperm nsdb ! distfiles = $(dirs) doc tcl include tests win32 *.tcl *.m4 \ ! configure Makefile install-sh README ChangeLog NEWS license.terms all: --- 36,41 ---- dirs = nsthread nsd nssock nscgi nscp nslog nsperm nsdb ! distfiles = $(dirs) doc tcl include tests win32 *.tcl *.m4 configure \ ! Makefile install-sh README ChangeLog NEWS license.terms naviserver.rdf all: Index: ChangeLog =================================================================== RCS file: /cvsroot/naviserver/naviserver/ChangeLog,v retrieving revision 1.144 retrieving revision 1.145 diff -C2 -d -r1.144 -r1.145 *** ChangeLog 5 Jul 2005 23:36:05 -0000 1.144 --- ChangeLog 5 Jul 2005 23:49:46 -0000 1.145 *************** *** 1,4 **** --- 1,7 ---- 2005-07-05 Stephen Deasey <sd...@us...> + * Makefile: Add DOAP file to list of files to be included in + release tarball. + * nsd/fastpath.c: * tests/http_byteranges.test: Temporarily remove in-progress |
From: Stephen D. <sd...@us...> - 2005-07-05 23:36:16
|
Update of /cvsroot/naviserver/naviserver/nsd In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12089/nsd Modified Files: fastpath.c Log Message: Temporarily remove in-progress support for HTTP Range requests. Index: fastpath.c =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/fastpath.c,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** fastpath.c 30 Jun 2005 01:14:02 -0000 1.10 --- fastpath.c 5 Jul 2005 23:36:06 -0000 1.11 *************** *** 39,44 **** NS_RCSID("@(#) $Header$"); - #define MAX_RANGES 10 - /* * The following structure defines the contents of a file --- 39,42 ---- *************** *** 63,68 **** static int FastReturn(NsServer *servPtr, Ns_Conn *conn, int status, char *type, char *file, struct stat *stPtr); ! static int ParseRange(Ns_Conn *conn, unsigned long size, unsigned long *offsets, ! int offsets_size); /* --- 61,65 ---- static int FastReturn(NsServer *servPtr, Ns_Conn *conn, int status, char *type, char *file, struct stat *stPtr); ! /* *************** *** 475,484 **** char *type, char *file, struct stat *stPtr) { ! int fd, new, nread; ! unsigned long size, offsets[MAX_RANGES*2]; ! int result = NS_ERROR, ranges = 0; char *key; Ns_Entry *entPtr; - File *filePtr; FileMap fmap; --- 472,479 ---- char *type, char *file, struct stat *stPtr) { ! int result = NS_ERROR, fd, new, nread; ! File *filePtr; char *key; Ns_Entry *entPtr; FileMap fmap; *************** *** 515,546 **** } - /* - * Check if this is a Range: request, if so return requested - * portion of the file. Range requests are not cached. - */ - - size = stPtr->st_size; - if (status == 200) { - ranges = ParseRange(conn, stPtr->st_size, offsets, MAX_RANGES*2); - } - if (ranges == -1) { - /* 416 Requested Range Not Satisfiable */ - Ns_ConnPrintfHeaders(conn, "Content-Range", "bytes */%lu", - stPtr->st_size); - Ns_ConnSetRequiredHeaders(conn, type, (int) stPtr->st_size); - return Ns_ConnFlushHeaders(conn, 416); - } - if (ranges == 1) { - /* Continue with returning a portion of the file */ - Ns_ConnPrintfHeaders(conn, "Content-Range", "bytes %lu-%lu/%lu", - offsets[0], offsets[1], stPtr->st_size); - size = (offsets[1] - offsets[0]) + 1; - /* 206 Partial Content */ - status = 206; - } - if (servPtr->fastpath.cache == NULL ! || stPtr->st_size > servPtr->fastpath.cachemaxentry ! || ranges == 1) { /* --- 510,515 ---- } if (servPtr->fastpath.cache == NULL ! || stPtr->st_size > servPtr->fastpath.cachemaxentry) { /* *************** *** 553,561 **** if (servPtr->fastpath.mmap && NsMemMap(file, stPtr->st_size, NS_MMAP_READ, &fmap) == NS_OK) { ! char *maddr = fmap.addr; ! if (ranges > 0) { ! maddr += offsets[0]; ! } ! result = Ns_ConnReturnData(conn,status, maddr, size, type); NsMemUmap(&fmap); } else { --- 522,526 ---- if (servPtr->fastpath.mmap && NsMemMap(file, stPtr->st_size, NS_MMAP_READ, &fmap) == NS_OK) { ! result = Ns_ConnReturnData(conn,status, fmap.addr,fmap.size, type); NsMemUmap(&fmap); } else { *************** *** 566,573 **** goto notfound; } ! if (ranges > 0) { ! lseek(fd, offsets[0], SEEK_SET); ! } ! result = Ns_ConnReturnOpenFd(conn, status, type, fd, size); close(fd); } --- 531,535 ---- goto notfound; } ! result = Ns_ConnReturnOpenFd(conn, status,type, fd,stPtr->st_size); close(fd); } *************** *** 681,780 **** return status; } - - - /* - *---------------------------------------------------------------------- - * - * ParseRange -- - * - * Checks for presence of Range: header, parses it and returns - * the requested offsets - * - * Results: - * -1 on error, number of byte ranges parsed - * - * Side effects: - * First range specification is honored only - * - *---------------------------------------------------------------------- - */ - - static int - ParseRange(Ns_Conn *conn, unsigned long size, unsigned long *offsets, - int offsets_size) - { - int count = 0; - char *range; - - if ((range = Ns_SetIGet(conn->headers, "Range")) == NULL - || (range = strstr(range,"bytes=")) == NULL) { - return 0; - } - range += 6; - memset(offsets,0,sizeof(unsigned long)*offsets_size); - - while(*range && count < offsets_size-1) { - if (isdigit(*range)) { - offsets[count] = atol(range); - while (isdigit(*range)) range++; - if (*range == '-') { - range++; - if (!isdigit(*range)) { - offsets[count+1] = size - 1; - } else { - offsets[count+1] = atol(range); - if (offsets[count] > offsets[count+1]) { - return 0; - } - if (offsets[count+1] >= size) { - offsets[count+1] = size - 1; - } - while (isdigit(*range)) range++; - } - switch (*range) { - case ',': - range++; - case '\0': - break; - default: - return 0; - } - if (offsets[count] > offsets[count+1]) { - return -1; - } - count += 2; - continue; - } - } else if (*range == '-') { - range++; - if (!isdigit(*range)) { - return 0; - } - offsets[count+1] = atol(range); - if (offsets[count+1] > size) { - offsets[count+1] = size; - } - /* Size from the end requested, convert into offset */ - offsets[count] = size - offsets[count+1]; - offsets[count+1] = offsets[count] + offsets[count+1] - 1; - while (isdigit(*range)) range++; - switch (*range) { - case ',': - range++; - case '\0': - break; - default: - return 0; - } - if (offsets[count] > offsets[count+1]) { - return -1; - } - count += 2; - continue; - } - /* Invalid syntax */ - return 0; - } - return count/2; - } - --- 643,644 ---- |
From: Stephen D. <sd...@us...> - 2005-07-05 23:36:16
|
Update of /cvsroot/naviserver/naviserver/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12089/tests Modified Files: http_byteranges.test Log Message: Temporarily remove in-progress support for HTTP Range requests. Index: http_byteranges.test =================================================================== RCS file: /cvsroot/naviserver/naviserver/tests/http_byteranges.test,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** http_byteranges.test 29 Jun 2005 22:27:16 -0000 1.4 --- http_byteranges.test 5 Jul 2005 23:36:06 -0000 1.5 *************** *** 49,53 **** ! test byteranges-1.1 {Simple range, beginning} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=0-4} \ -getheaders {Content-length Content-range} \ --- 49,55 ---- ! test byteranges-1.1 {Simple range, beginning} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=0-4} \ -getheaders {Content-length Content-range} \ *************** *** 55,59 **** } -result {206 5 {bytes 0-4/10} 01234} ! test byteranges-1.2 {Simple range, end} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=5-9} \ -getheaders {Content-length Content-range} \ --- 57,63 ---- } -result {206 5 {bytes 0-4/10} 01234} ! test byteranges-1.2 {Simple range, end} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=5-9} \ -getheaders {Content-length Content-range} \ *************** *** 61,65 **** } -result {206 5 {bytes 5-9/10} 56789} ! test byteranges-1.3 {Relative range} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=5-} \ -getheaders {Content-length Content-range} \ --- 65,71 ---- } -result {206 5 {bytes 5-9/10} 56789} ! test byteranges-1.3 {Relative range} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=5-} \ -getheaders {Content-length Content-range} \ *************** *** 67,71 **** } -result {206 5 {bytes 5-9/10} 56789} ! test byteranges-1.4 {Relative range} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=-5} \ -getheaders {Content-length Content-range} \ --- 73,79 ---- } -result {206 5 {bytes 5-9/10} 56789} ! test byteranges-1.4 {Relative range} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=-5} \ -getheaders {Content-length Content-range} \ *************** *** 73,77 **** } -result {206 5 {bytes 5-9/10} 56789} ! test byteranges-1.5 {Single byte (1st)} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=0-0} \ -getheaders {Content-length Content-range} \ --- 81,87 ---- } -result {206 5 {bytes 5-9/10} 56789} ! test byteranges-1.5 {Single byte (1st)} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=0-0} \ -getheaders {Content-length Content-range} \ *************** *** 79,83 **** } -result {206 1 {bytes 0-0/10} 0} ! test byteranges-1.6 {Single byte (2nd)} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=1-1} \ -getheaders {Content-length Content-range} \ --- 89,95 ---- } -result {206 1 {bytes 0-0/10} 0} ! test byteranges-1.6 {Single byte (2nd)} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=1-1} \ -getheaders {Content-length Content-range} \ *************** *** 85,89 **** } -result {206 1 {bytes 1-1/10} 1} ! test byteranges-1.6 {Single byte (last)} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=9-9} \ -getheaders {Content-length Content-range} \ --- 97,103 ---- } -result {206 1 {bytes 1-1/10} 1} ! test byteranges-1.7 {Single byte (last)} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=9-9} \ -getheaders {Content-length Content-range} \ *************** *** 91,95 **** } -result {206 1 {bytes 9-9/10} 9} ! test byteranges-1.7 {Request more than exists} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=0-10} \ -getheaders {Content-length Content-range} \ --- 105,111 ---- } -result {206 1 {bytes 9-9/10} 9} ! test byteranges-1.8 {Request more than exists} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=0-10} \ -getheaders {Content-length Content-range} \ *************** *** 97,101 **** } -result {206 10 {bytes 0-9/10} 0123456789} ! test byteranges-1.8 {Request more than exists} -constraints serverListen -body { nstest_http -getbody 1 -setheaders {Range bytes=-10} \ -getheaders {Content-length Content-range} \ --- 113,119 ---- } -result {206 10 {bytes 0-9/10} 0123456789} ! test byteranges-1.9 {Request more than exists} -constraints { ! serverListen knownBug ! } -body { nstest_http -getbody 1 -setheaders {Range bytes=-10} \ -getheaders {Content-length Content-range} \ *************** *** 165,176 **** }] - test byteranges-2.6 { - Temporary: multiple ranges unsupported, just ignore. - } -constraints serverListen -body { - nstest_http -getbody 1 -setheaders {Range bytes=0-2,3-6} \ - -getheaders {Content-length Content-range} \ - GET /10bytes - } -result {200 10 {} 0123456789} - --- 183,186 ---- *************** *** 231,240 **** ! test byteranges-4.1 {unsatisfiable} -constraints serverListen -body { nstest_http -setheaders {Range bytes=10-10} -getheaders {Content-range} \ GET /10bytes } -result {416 {bytes */10}} ! test byteranges-4.2 {unsatisfiable} -constraints serverListen -body { nstest_http -setheaders {Range bytes=10-} -getheaders {Content-range} \ GET /10bytes --- 241,254 ---- ! test byteranges-4.1 {unsatisfiable} -constraints { ! serverListen knownBug ! } -body { nstest_http -setheaders {Range bytes=10-10} -getheaders {Content-range} \ GET /10bytes } -result {416 {bytes */10}} ! test byteranges-4.2 {unsatisfiable} -constraints { ! serverListen knownBug ! } -body { nstest_http -setheaders {Range bytes=10-} -getheaders {Content-range} \ GET /10bytes |
From: Stephen D. <sd...@us...> - 2005-07-05 23:36:15
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12089 Modified Files: ChangeLog Log Message: Temporarily remove in-progress support for HTTP Range requests. Index: ChangeLog =================================================================== RCS file: /cvsroot/naviserver/naviserver/ChangeLog,v retrieving revision 1.143 retrieving revision 1.144 diff -C2 -d -r1.143 -r1.144 *** ChangeLog 5 Jul 2005 23:18:47 -0000 1.143 --- ChangeLog 5 Jul 2005 23:36:05 -0000 1.144 *************** *** 1,4 **** --- 1,8 ---- 2005-07-05 Stephen Deasey <sd...@us...> + * nsd/fastpath.c: + * tests/http_byteranges.test: Temporarily remove in-progress + support for HTTP Range requests. + * NEWS: Add release date and remove reference to byte ranges. Mention new Ns_ConnPrintfHeaders() function. |
From: Stephen D. <sd...@us...> - 2005-07-05 23:18:57
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2189 Modified Files: ChangeLog NEWS Log Message: Mention new Ns_ConnPrintfHeaders() function. Index: NEWS =================================================================== RCS file: /cvsroot/naviserver/naviserver/NEWS,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** NEWS 5 Jul 2005 23:14:25 -0000 1.6 --- NEWS 5 Jul 2005 23:18:47 -0000 1.7 *************** *** 37,40 **** --- 37,41 ---- Code Changes: + * New function Ns_ConnPrintfHeaders() * Use GCC compiler code checks #1215725 * Remove GNU implementations of getopt and poll Index: ChangeLog =================================================================== RCS file: /cvsroot/naviserver/naviserver/ChangeLog,v retrieving revision 1.142 retrieving revision 1.143 diff -C2 -d -r1.142 -r1.143 *** ChangeLog 5 Jul 2005 23:14:25 -0000 1.142 --- ChangeLog 5 Jul 2005 23:18:47 -0000 1.143 *************** *** 2,5 **** --- 2,6 ---- * NEWS: Add release date and remove reference to byte ranges. + Mention new Ns_ConnPrintfHeaders() function. * include/nscheck.h: Microsoft's feeble compiler can't handle |
From: Stephen D. <sd...@us...> - 2005-07-05 23:14:36
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32439 Modified Files: ChangeLog NEWS Log Message: Add release date and remove reference to byte ranges. Index: NEWS =================================================================== RCS file: /cvsroot/naviserver/naviserver/NEWS,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** NEWS 29 Jun 2005 03:45:49 -0000 1.5 --- NEWS 5 Jul 2005 23:14:25 -0000 1.6 *************** *** 1,5 **** ! ================= ! NaviServer 4.99.0 ! ================= New Features: --- 1,5 ---- ! ====================================== ! NaviServer 4.99.0, released 2005-07-05 ! ====================================== New Features: *************** *** 21,25 **** * New routines for listening on UDP and UNIX domain sockets * Add -localhost -localport options to ns_sockopen - * Add support for Range: header to return partial content Bug Fixes: --- 21,24 ---- *************** *** 38,50 **** Code Changes: ! * Use GCC compiler code checks #1215725 ! * Remove GNU implementations of getopt and poll ! * Cleanup up autoconf and use autoheader ! * Clean up test harness and add lots of tests ! * New Tcl callback infrastructure #1162223 ! * New convenience functions for handling Tcl object types ! * New function Ns_TclPrintfResult() for formatting Tcl results ! * No more support for defunct AOLpress ! * Remove support for old connid argument in much code #1156107 ! * Modules nspd and nsext moved from core to external modules ! * Objectified TclX keyed lists --- 37,49 ---- Code Changes: ! * Use GCC compiler code checks #1215725 ! * Remove GNU implementations of getopt and poll ! * Cleanup up autoconf and use autoheader ! * Clean up test harness and add lots of tests ! * New Tcl callback infrastructure #1162223 ! * New convenience functions for handling Tcl object types ! * New function Ns_TclPrintfResult() for formatting Tcl results ! * No more support for defunct AOLpress ! * Remove support for old connid argument in much code #1156107 ! * Modules nspd and nsext moved from core to external modules ! * Objectified TclX keyed lists Index: ChangeLog =================================================================== RCS file: /cvsroot/naviserver/naviserver/ChangeLog,v retrieving revision 1.141 retrieving revision 1.142 diff -C2 -d -r1.141 -r1.142 *** ChangeLog 5 Jul 2005 23:07:48 -0000 1.141 --- ChangeLog 5 Jul 2005 23:14:25 -0000 1.142 *************** *** 1,4 **** --- 1,6 ---- 2005-07-05 Stephen Deasey <sd...@us...> + * NEWS: Add release date and remove reference to byte ranges. + * include/nscheck.h: Microsoft's feeble compiler can't handle macro varargs. New usage is: NS_GNUC_NONNULL((x, y, z)). |
From: Stephen D. <sd...@us...> - 2005-07-05 23:08:00
|
Update of /cvsroot/naviserver/naviserver/include In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28604/include Modified Files: nscheck.h Log Message: Microsoft's feeble compiler can't handle macro varargs. New usage is: NS_GNUC_NONNULL((x, y, z)). Index: nscheck.h =================================================================== RCS file: /cvsroot/naviserver/naviserver/include/nscheck.h,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** nscheck.h 27 Jun 2005 17:50:18 -0000 1.4 --- nscheck.h 5 Jul 2005 23:07:49 -0000 1.5 *************** *** 56,64 **** #if __GNUC_PREREQ(3,3) ! # define NS_GNUC_NONNULL(...) __attribute__((__nonnull__(__VA_ARGS__))) # define NS_GNUC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__)) # define NS_GNUC_MAYALIAS __attribute__((__may_alias__)) #else ! # define NS_GNUC_NONNULL(...) # define NS_GNUC_WARN_UNUSED_RESULT # define NS_GNUC_MAYALIAS --- 56,64 ---- #if __GNUC_PREREQ(3,3) ! # define NS_GNUC_NONNULL(ARGS) __attribute__((__nonnull__(ARGS))) # define NS_GNUC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__)) # define NS_GNUC_MAYALIAS __attribute__((__may_alias__)) #else ! # define NS_GNUC_NONNULL(ARGS) # define NS_GNUC_WARN_UNUSED_RESULT # define NS_GNUC_MAYALIAS |
From: Stephen D. <sd...@us...> - 2005-07-05 23:08:00
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28604 Modified Files: ChangeLog Log Message: Microsoft's feeble compiler can't handle macro varargs. New usage is: NS_GNUC_NONNULL((x, y, z)). Index: ChangeLog =================================================================== RCS file: /cvsroot/naviserver/naviserver/ChangeLog,v retrieving revision 1.140 retrieving revision 1.141 diff -C2 -d -r1.140 -r1.141 *** ChangeLog 5 Jul 2005 23:02:24 -0000 1.140 --- ChangeLog 5 Jul 2005 23:07:48 -0000 1.141 *************** *** 1,4 **** --- 1,7 ---- 2005-07-05 Stephen Deasey <sd...@us...> + * include/nscheck.h: Microsoft's feeble compiler can't handle + macro varargs. New usage is: NS_GNUC_NONNULL((x, y, z)). + * naviserver.rdf: Add license and category information to DOAP file and fix default namespace so it validates. |
From: Stephen D. <sd...@us...> - 2005-07-05 23:02:40
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26023 Modified Files: ChangeLog naviserver.rdf Log Message: Add license and category information to DOAP file and fix default namespace so it validates. Index: naviserver.rdf =================================================================== RCS file: /cvsroot/naviserver/naviserver/naviserver.rdf,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** naviserver.rdf 3 Jul 2005 16:15:05 -0000 1.1 --- naviserver.rdf 5 Jul 2005 23:02:24 -0000 1.2 *************** *** 1,4 **** <?xml version="1.0" encoding="UTF-8" ?> ! <rdf:RDF xmlns:doap="http://usefulinc.com/ns/doap#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"> --- 1,4 ---- <?xml version="1.0" encoding="UTF-8" ?> ! <rdf:RDF xmlns="http://usefulinc.com/ns/doap#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"> *************** *** 6,49 **** <!-- DOAP is a project to create an XML/RDF vocabulary to describe open source projects. --> <!-- $Id$ --> ! <Project> ! <name>NaviServer</name> ! <shortname>ns</shortname> ! <homepage rdf:resource="http://sourceforge.net/projects/naviserver/" /> ! <wiki rdf:resource="http://naviserver.sourceforge.net" /> ! <created>2005-02-05</created> ! <shortdesc xml:lang="en"> ! NaviServer is a high performance web server written in C and Tcl. ! </shortdesc> ! <shortdesc xml:lang="de"> ! NaviServer ist ein in C und TCL entwickelter hoch performanter Webserver. ! </shortdesc> ! <description xml:lang="en">Project description: NaviServer is a high ! performance web server written in C and Tcl. ! It can be easily extended in either language to create interesting ! web sites and services.</description> ! <description xml:lang="de">Projektbeschreibung: NaviServer ist ein ! in C und TCL entwickelter hoch performanter Webserver. ! Er kann mit jeder der beiden Sprachen leicht erweitert werden ! um interessante Websites und -services zu entwickeln.</description> ! <download-page rdf:resource="http://sourceforge.net/project/showfiles.php?group_id=130646" /> ! <mailing-list rdf:resource="http://sourceforge.net/mail/?group_id=130646" /> ! <bug-database rdf:resource="http://sourceforge.net/tracker/?group_id=130646&atid=719006" /> ! <version> ! <branch>development</branch> ! <revision>4.99.0</revision> ! <created>2005-07-02</created> ! </version> ! <Repository> ! <CVSRepository> ! <browse rdf:resource="http://cvs.sourceforge.net/viewcvs.py/naviserver" /> ! <anon-root rdf:resource="cvs.sourceforge.net:/cvsroot/naviserver" /> ! </CVSRepository> ! </Repository> </Project> --- 6,58 ---- <!-- DOAP is a project to create an XML/RDF vocabulary to describe open source projects. --> <!-- $Id$ --> ! <Project> ! <name>NaviServer</name> ! <shortname>naviserver</shortname> ! <homepage rdf:resource="http://sourceforge.net/projects/naviserver/" /> ! <wiki rdf:resource="http://naviserver.sourceforge.net" /> ! <created>2005-02-05</created> ! <license rdf:resource="http://usefulinc.com/doap/licenses/mpl" /> ! <license rdf:resource="http://usefulinc.com/doap/licenses/gpl" /> ! <shortdesc xml:lang="en"> ! NaviServer is a high performance web server written in C and Tcl. ! </shortdesc> ! <shortdesc xml:lang="de"> ! NaviServer ist ein in C und TCL entwickelter hoch performanter Webserver. ! </shortdesc> ! <description xml:lang="en">Project description: NaviServer is a high ! performance web server written in C and Tcl. ! It can be easily extended in either language to create interesting ! web sites and services.</description> ! <description xml:lang="de">Projektbeschreibung: NaviServer ist ein ! in C und TCL entwickelter hoch performanter Webserver. ! Er kann mit jeder der beiden Sprachen leicht erweitert werden ! um interessante Websites und -services zu entwickeln.</description> ! <download-page rdf:resource="http://sourceforge.net/project/showfiles.php?group_id=130646" /> ! <mailing-list rdf:resource="http://sourceforge.net/mail/?group_id=130646" /> ! <bug-database rdf:resource="http://sourceforge.net/tracker/?group_id=130646&atid=719006" /> ! <!-- SourceForge category: Internet :: WWW/HTTP :: HTTP Servers --> ! <category rdf:resource="http://sourceforge.net/softwaremap/trove_list.php?form_cat=250" /> ! <!-- Freshmeat category: Internet :: WWW/HTTP :: HTTP Servers --> ! <category rdf:resource="http://freshmeat.net/browse/250/" /> ! <release> ! <Version> ! <branch>development</branch> ! <revision>4.99.0</revision> ! <created>2005-07-05</created> ! </Version> ! </release> ! ! <repository> ! <CVSRepository> ! <browse rdf:resource="http://cvs.sourceforge.net/viewcvs.py/naviserver" /> ! <anon-root rdf:resource="cvs.sourceforge.net:/cvsroot/naviserver" /> ! </CVSRepository> ! </repository> </Project> Index: ChangeLog =================================================================== RCS file: /cvsroot/naviserver/naviserver/ChangeLog,v retrieving revision 1.139 retrieving revision 1.140 diff -C2 -d -r1.139 -r1.140 *** ChangeLog 30 Jun 2005 23:24:58 -0000 1.139 --- ChangeLog 5 Jul 2005 23:02:24 -0000 1.140 *************** *** 1,2 **** --- 1,7 ---- + 2005-07-05 Stephen Deasey <sd...@us...> + + * naviserver.rdf: Add license and category information to DOAP + file and fix default namespace so it validates. + 2005-06-30 Stephen Deasey <sd...@us...> |
From: Bernd E. <ei...@us...> - 2005-07-03 16:15:17
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5396 Added Files: naviserver.rdf Log Message: Added a Description-of-a-Project (DOAP) file for NaviServer in XML/RDF notation --- NEW FILE: naviserver.rdf --- <?xml version="1.0" encoding="UTF-8" ?> <rdf:RDF xmlns:doap="http://usefulinc.com/ns/doap#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"> <!-- DOAP is a project to create an XML/RDF vocabulary to describe open source projects. --> <!-- $Id: naviserver.rdf,v 1.1 2005/07/03 16:15:05 eide Exp $ --> <Project> <name>NaviServer</name> <shortname>ns</shortname> <homepage rdf:resource="http://sourceforge.net/projects/naviserver/" /> <wiki rdf:resource="http://naviserver.sourceforge.net" /> <created>2005-02-05</created> <shortdesc xml:lang="en"> NaviServer is a high performance web server written in C and Tcl. </shortdesc> <shortdesc xml:lang="de"> NaviServer ist ein in C und TCL entwickelter hoch performanter Webserver. </shortdesc> <description xml:lang="en">Project description: NaviServer is a high performance web server written in C and Tcl. It can be easily extended in either language to create interesting web sites and services.</description> <description xml:lang="de">Projektbeschreibung: NaviServer ist ein in C und TCL entwickelter hoch performanter Webserver. Er kann mit jeder der beiden Sprachen leicht erweitert werden um interessante Websites und -services zu entwickeln.</description> <download-page rdf:resource="http://sourceforge.net/project/showfiles.php?group_id=130646" /> <mailing-list rdf:resource="http://sourceforge.net/mail/?group_id=130646" /> <bug-database rdf:resource="http://sourceforge.net/tracker/?group_id=130646&atid=719006" /> <version> <branch>development</branch> <revision>4.99.0</revision> <created>2005-07-02</created> </version> <Repository> <CVSRepository> <browse rdf:resource="http://cvs.sourceforge.net/viewcvs.py/naviserver" /> <anon-root rdf:resource="cvs.sourceforge.net:/cvsroot/naviserver" /> </CVSRepository> </Repository> </Project> </rdf:RDF> |
From: Stephen D. <sd...@us...> - 2005-06-30 23:25:08
|
Update of /cvsroot/naviserver/naviserver/nsd In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32052/nsd Modified Files: cookies.c Log Message: No longer check whether the response headers have already been sent for Tcl commands. The check was broken and not useful. Index: cookies.c =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/cookies.c,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** cookies.c 10 Jun 2005 17:58:38 -0000 1.2 --- cookies.c 30 Jun 2005 23:24:59 -0000 1.3 *************** *** 335,343 **** * GetConn -- * ! * Get the conn and make sure the headers have not already ! * been sent. * * Results: ! * Ns_Conn pointer or NULL on error. * * Side effects: --- 335,343 ---- * GetConn -- * ! * Return the conn for the given interp, logging an error if ! * not available. * * Results: ! * Ns_Conn pointer or NULL. * * Side effects: *************** *** 350,360 **** GetConn(Tcl_Interp *interp) { ! Ns_Conn *conn = Ns_TclGetConn(interp); if (conn == NULL) { Tcl_SetResult(interp, "No connection available.", TCL_STATIC); - } else if (conn->flags & NS_CONN_SENTHDRS) { - Tcl_SetResult(interp, "Cannot set cookie, " - "reponse headers already sent to user-agent.", TCL_STATIC); } --- 350,358 ---- GetConn(Tcl_Interp *interp) { ! Ns_Conn *conn; + conn = Ns_TclGetConn(interp); if (conn == NULL) { Tcl_SetResult(interp, "No connection available.", TCL_STATIC); } |
From: Stephen D. <sd...@us...> - 2005-06-30 23:25:07
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32052 Modified Files: ChangeLog Log Message: No longer check whether the response headers have already been sent for Tcl commands. The check was broken and not useful. Index: ChangeLog =================================================================== RCS file: /cvsroot/naviserver/naviserver/ChangeLog,v retrieving revision 1.138 retrieving revision 1.139 diff -C2 -d -r1.138 -r1.139 *** ChangeLog 30 Jun 2005 07:57:41 -0000 1.138 --- ChangeLog 30 Jun 2005 23:24:58 -0000 1.139 *************** *** 1,2 **** --- 1,8 ---- + 2005-06-30 Stephen Deasey <sd...@us...> + + * nsd/cookies.c (GetConn): No longer check whether the response + headers have already been sent for Tcl commands. The check was broken + and not useful. + 2005-06-30 Zoran Vasiljevic <vas...@us...> |
From: Zoran V. <vas...@us...> - 2005-06-30 07:57:50
|
Update of /cvsroot/naviserver/naviserver/nsd In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5467/nsd Modified Files: conn.c Log Message: Fixed Bug #1230179 which caused the server crash when calling ns_startcontent outside of the connection scope. Index: conn.c =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/conn.c,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** conn.c 13 Jun 2005 01:55:13 -0000 1.17 --- conn.c 30 Jun 2005 07:57:41 -0000 1.18 *************** *** 1379,1382 **** --- 1379,1387 ---- int i, status = TCL_OK; + if (itPtr->conn == NULL) { + Tcl_SetResult(interp, "no current connection", TCL_STATIC); + return TCL_ERROR; + } + for (i = 1; i < objc && status == TCL_OK; i++) { opt = Tcl_GetString(objv[i]); *************** *** 1424,1428 **** if (status == TCL_OK) { ! Ns_ConnSetWriteEncodedFlag( itPtr->conn, NS_TRUE); Ns_ConnSetEncoding(itPtr->conn, encoding); } --- 1429,1433 ---- if (status == TCL_OK) { ! Ns_ConnSetWriteEncodedFlag(itPtr->conn, NS_TRUE); Ns_ConnSetEncoding(itPtr->conn, encoding); } |
From: Zoran V. <vas...@us...> - 2005-06-30 07:57:50
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5467 Modified Files: ChangeLog Log Message: Fixed Bug #1230179 which caused the server crash when calling ns_startcontent outside of the connection scope. Index: ChangeLog =================================================================== RCS file: /cvsroot/naviserver/naviserver/ChangeLog,v retrieving revision 1.137 retrieving revision 1.138 diff -C2 -d -r1.137 -r1.138 *** ChangeLog 30 Jun 2005 01:14:02 -0000 1.137 --- ChangeLog 30 Jun 2005 07:57:41 -0000 1.138 *************** *** 1,2 **** --- 1,7 ---- + 2005-06-30 Zoran Vasiljevic <vas...@us...> + + * nsd/conn.c: fixed Bug #1230179 which caused the server crash + when calling ns_startcontent outside of the connection scope. + 2005-06-29 Vlad Seryakov <ser...@us...> |
From: Vlad S. <ser...@us...> - 2005-06-30 01:14:13
|
Update of /cvsroot/naviserver/naviserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4535 Modified Files: ChangeLog Log Message: see ChangeLog Index: ChangeLog =================================================================== RCS file: /cvsroot/naviserver/naviserver/ChangeLog,v retrieving revision 1.136 retrieving revision 1.137 diff -C2 -d -r1.136 -r1.137 *** ChangeLog 29 Jun 2005 23:27:50 -0000 1.136 --- ChangeLog 30 Jun 2005 01:14:02 -0000 1.137 *************** *** 1,5 **** 2005-06-29 Vlad Seryakov <ser...@us...> ! * nsd/fastpath.c: Made all tests pass successfully 2005-06-29 Stephen Deasey <sd...@us...> --- 1,8 ---- 2005-06-29 Vlad Seryakov <ser...@us...> ! * nsd/fastpath.c: Made all tests pass successfully. Changed parser ! to support multiple ranges. ParseRange returns list of all parsed ranges ! but FastReturn uses only the first one. to return mutiple chunks ! FastReturn should be changed. 2005-06-29 Stephen Deasey <sd...@us...> |