
On 03/17/2011 09:22 AM, Daniel P. Berrange wrote:
When SASL is active, it was possible that we read and decoded more data off the wire than we initially wanted. The loop processing this data terminated after only one message to avoid delaying the calling thread, but this could delay event delivery. As long as there is decoded SASL data in memory, we must process it, before returning to the poll() event loop.
This is a counterpart to the same kind of issue solved in
commit 68d2c3482fa16801f8e6ca5c42698319bb87f385
in a different area of the code
* src/remote/remote_driver.c: Process all pending SASL data --- src/remote/remote_driver.c | 25 ++++++++++++++++++++----- 1 files changed, 20 insertions(+), 5 deletions(-)
ACK. -- Eric Blake eblake@redhat.com +1-801-349-2682 Libvirt virtualization library http://libvirt.org