Author: rhs
Date: Mon Oct 8 14:56:32 2012
New Revision: 1395596
URL: http://svn.apache.org/viewvc?rev=1395596&view=rev
Log:
fixed bug where sasl parses beyond its frames
Modified:
qpid/proton/trunk/proton-c/src/dispatcher/dispatcher.c
qpid/proton/trunk/proton-c/src/sasl/sasl.c
Modified: qpid/proton/trunk/proton-c/src/dispatcher/dispatcher.c
URL:
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/src/dispatcher/dispatcher.c?rev=1395596&r1=1395595&r2=1395596&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/src/dispatcher/dispatcher.c (original)
+++ qpid/proton/trunk/proton-c/src/dispatcher/dispatcher.c Mon Oct 8 14:56:32
2012
@@ -50,6 +50,7 @@ pn_dispatcher_t *pn_dispatcher(uint8_t f
disp->available = 0;
disp->halt = false;
+ disp->batch = true;
return disp;
}
@@ -182,6 +183,8 @@ ssize_t pn_dispatcher_input(pn_dispatche
read = available;
break;
}
+
+ if (!disp->batch) break;
}
return read - leftover;
Modified: qpid/proton/trunk/proton-c/src/sasl/sasl.c
URL:
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/src/sasl/sasl.c?rev=1395596&r1=1395595&r2=1395596&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/src/sasl/sasl.c (original)
+++ qpid/proton/trunk/proton-c/src/sasl/sasl.c Mon Oct 8 14:56:32 2012
@@ -60,6 +60,7 @@ pn_sasl_t *pn_sasl(pn_transport_t *trans
if (!transport->sasl) {
pn_sasl_t *sasl = malloc(sizeof(pn_sasl_t));
sasl->disp = pn_dispatcher(1, sasl);
+ sasl->disp->batch = false;
pn_dispatcher_action(sasl->disp, SASL_INIT, "SASL-INIT", pn_do_init);
pn_dispatcher_action(sasl->disp, SASL_MECHANISMS, "SASL-MECHANISMS",
pn_do_mechanisms);
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]