From: Zoran V. <vas...@us...> - 2006-01-04 14:08:25
|
Update of /cvsroot/naviserver/naviserver/nsd In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15762/nsd Modified Files: conn.c Log Message: * configure.in: added test for inet_ntop. * nsthread/reentrant.c: use inet_ntop when available which fixes a bug on 64 bit ppc, at least under linux. * nsd/conn.c: added option to [ns_conn] to set/query contentsentlength for getting the correct length into the logfile, when files are delivered via event driven I/O. Thanks to Gustaf Neumann for providing above fixes. Index: conn.c =================================================================== RCS file: /cvsroot/naviserver/naviserver/nsd/conn.c,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** conn.c 12 Nov 2005 20:50:33 -0000 1.23 --- conn.c 4 Jan 2006 14:08:03 -0000 1.24 *************** *** 1031,1034 **** --- 1031,1035 ---- static CONST char *opts[] = { "authpassword", "authuser", "close", "content", "contentlength", + "contentsentlength", "copy", "channel", "driver", "encoding", "files", "fileoffset", "filelength", "fileheaders", "flags", "form", "headers", *************** *** 1042,1046 **** enum ISubCmdIdx { CAuthPasswordIdx, CAuthUserIdx, CCloseIdx, CContentIdx, ! CContentLengthIdx, CCopyIdx, CChannelIdx, CDriverIdx, CEncodingIdx, CFilesIdx, CFileOffIdx, CFileLenIdx, CFileHdrIdx, CFlagsIdx, CFormIdx, CHeadersIdx, CHostIdx, CIdIdx, CIsConnectedIdx, --- 1043,1047 ---- enum ISubCmdIdx { CAuthPasswordIdx, CAuthUserIdx, CCloseIdx, CContentIdx, ! CContentLengthIdx, CContentSentLenIdx, CCopyIdx, CChannelIdx, CDriverIdx, CEncodingIdx, CFilesIdx, CFileOffIdx, CFileLenIdx, CFileHdrIdx, CFlagsIdx, CFormIdx, CHeadersIdx, CHostIdx, CIdIdx, CIsConnectedIdx, *************** *** 1397,1400 **** --- 1398,1415 ---- Tcl_RegisterChannel(interp, chan); Tcl_SetStringObj(result, Tcl_GetChannelName(chan), -1); + break; + + case CContentSentLenIdx: + if (objc == 2) { + Tcl_SetIntObj(result, connPtr->nContentSent); + } else if (objc == 3) { + if (Tcl_GetIntFromObj(interp, objv[2], &connPtr->nContentSent) != TCL_OK) { + return TCL_ERROR; + } + } else { + Tcl_WrongNumArgs(interp, 2, objv, "?value?"); + return TCL_ERROR; + } + break; } |