import errno
import os
import socket
+import sys
import six
return 0
try:
+ # Python 3 has separate types for strings and bytes. We must have
+ # bytes here.
+ if (sys.version_info[0] >= 3
+ and not isinstance(buf, six.binary_type)):
+ buf = six.binary_type(buf, 'utf-8')
return self.socket.send(buf)
except socket.error as e:
return -ovs.socket_util.get_exception_errno(e)