> Index: nsssl.c > =================================================================== > RCS file: /cvsroot/naviserver/modules/nsssl/nsssl.c,v > retrieving revision 1.6 > retrieving revision 1.7 > diff -C2 -d -r1.6 -r1.7 > *** nsssl.c 22 Oct 2008 02:14:24 -0000 1.6 > --- nsssl.c 22 Oct 2008 03:23:06 -0000 1.7 > *************** > --- 432,447 ---- > */ > > ! static int > ! SendBufs(SOCKET sock, struct iovec *bufs, int nbufs, Ns_Time *timeoutPtr, > int flags) > { > ! Ns_Conn *conn = Ns_GetConn(); > ! > ! return Ns_ConnSend(conn, bufs, nbufs); > ! } > !
This should be Ns_SockSendBufs(), otherwise connPtr->nContentSent will be double counted and the driver thread may block. Although in this case it should actually be Send(), which is your SSL specific implementation of Ns_SockSendBufs(). The way it is now static files may be sent in the clear :-/ (Basically, you implement the SendFile() callback by calling Ns_SockSendFileIndirect(), which is the default library implementation which scrapes the bytes off disk, and pass it Send(), which is your implementation of writing to the network. nssock is maybe a little confusing in that it doesn't actually do anything but call the default implementations, because it doesn't have to...) ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ naviserver-devel mailing list naviserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/naviserver-devel