X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=python%2Fovs%2Fstream.py;h=9c10612d920b32c74482d8daeb6eae4922edbffa;hb=7cfb9651a2cd446d81fce90ccf77af56d5c0cbc2;hp=08c6293adf5a94f8b4d085b100fa849bfb641645;hpb=7921b912de1e347f418a116f6d83f802dee655e2;p=openvswitch diff --git a/python/ovs/stream.py b/python/ovs/stream.py index 08c6293a..9c10612d 100644 --- a/python/ovs/stream.py +++ b/python/ovs/stream.py @@ -1,4 +1,4 @@ -# Copyright (c) 2010, 2011, 2012 Nicira Networks +# Copyright (c) 2010, 2011, 2012 Nicira, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -24,6 +24,19 @@ import ovs.vlog vlog = ovs.vlog.Vlog("stream") +def stream_or_pstream_needs_probes(name): + """ 1 if the stream or pstream specified by 'name' needs periodic probes to + verify connectivity. For [p]streams which need probes, it can take a long + time to notice the connection was dropped. Returns 0 if probes aren't + needed, and -1 if 'name' is invalid""" + + if PassiveStream.is_valid_name(name) or Stream.is_valid_name(name): + # Only unix and punix are supported currently. + return 0 + else: + return -1 + + class Stream(object): """Bidirectional byte stream. Currently only Unix domain sockets are implemented.""" @@ -100,7 +113,7 @@ class Stream(object): break stream.run() poller = ovs.poller.Poller() - stream.run_wait() + stream.run_wait(poller) stream.connect_wait(poller) poller.block() assert error != errno.EINPROGRESS