Author: rcritten
Update of /cvs/dirsec/mod_nss
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv26603
Modified Files:
nss_engine_io.c
Log Message:
Fix endless read loop in some situations when handling POST data (#620856)
This was discovered in the dogtag TPS subsystem. I haven't been able to
duplicate it outside of that but it is trivial inside. This seems to fix
it and brings the code closer to what mod_ssl does here as well.
Index: nss_engine_io.c
===================================================================
RCS file: /cvs/dirsec/mod_nss/nss_engine_io.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- nss_engine_io.c 11 Nov 2009 18:20:39 -0000 1.10
+++ nss_engine_io.c 17 Sep 2010 19:39:27 -0000 1.11
@@ -259,7 +259,8 @@
*/
if (APR_STATUS_IS_EAGAIN(inctx->rc) || APR_STATUS_IS_EINTR(inctx->rc)
|| (inctx->rc == APR_SUCCESS &&
APR_BRIGADE_EMPTY(inctx->bb))) {
- PR_SetError(PR_WOULD_BLOCK_ERROR, 0);
+ nspr_filter_out_ctx_t *outctx = filter_ctx->outctx;
+ inctx->rc = outctx->rc;
return -1;
}
Show replies by date