+
+def ecmds(*args):
+ """Another convenience function for ecmd.
+
+ Like ecmda, but will fail on all 5xx codes, and succeed on all
+ others.
+ """
+ resp = ecmd(*args)
+ if resp.getcode() >= 500 and resp.getcode() < 600:
+ raise ValueError, tuple(resp.extract()[0])
+ return resp
+
+def getresps():
+ """A generator function which will iterate over all responses from
+ getresp.
+ """
+ while True:
+ resp = getresp()
+ if resp is None:
+ break
+ else:
+ yield resp