New submission from Joel Lovinger :
In Python 2.4.3 a Telnet.expect with timeout=0 would always make at least one
call to Telnet.fill_rawq if a match couldn't be found and the connection was
open.
In Python 2.7.1/2.7.3 Telnet.expect with timeout=0 breaks before any call to
Telnet.fill
Joel Lovinger added the comment:
Quick response!
Based on review of Telnet.expect in Python 2.4.3 and Python 2.7.1/2.7.3.
In Python 2.4.3 the timeout is passed unmodified on each loop iteration to the
underlying select to get more data for a potential match. Iteration only ends
on EOF
Joel Lovinger added the comment:
2.4 behavior, "time out if there is no more data for X seconds", only worked as
expected in the case of timeout=0. Any other timeout could result in indefinite
extension and needed fixing.
2.7 behavior, "time out if there is no match for X