rconn: Never report being in failure mode while connected.
authorBen Pfaff <blp@nicira.com>
Mon, 13 Oct 2008 20:56:26 +0000 (13:56 -0700)
committerBen Pfaff <blp@nicira.com>
Mon, 13 Oct 2008 20:56:26 +0000 (13:56 -0700)
commitbb7c717c31d168989d96e3685137cf88b8f6b30c
tree51dfcdc404624c04c9bb24620badf19cab21987c
parent0b99d8d4be610ae3b17e96ef115dacbf1bca0b84
rconn: Never report being in failure mode while connected.

Change e10dfcf35, "rconn: Be pickier about what constitutes a successful
connection," caused rconn to consider the connection to have failed even
when we are actually connected until one of several message types was
received.  Unfortunately, that meant that "fail open" would intercept and
discard all messages sent by the controller until one of those messages
was received.  Thus, the controller would never receive a reply to its
feature_request, assume that the connection was busted, and disconnect.
This happened forever, of course.

Fixes bug #242.

Thanks to Reid for reporting this and Dan for help in diagnosis.
lib/rconn.c