python/bro.py
def get_binary_stdio(stream):
    """ Return the specified standard input, output or errors stream as a
    'raw' buffer object suitable for reading/writing binary data from/to it.
    """
    assert stream in ['stdin', 'stdout', 'stderr'], 'invalid stream name'
    stdio = getattr(sys, stream)
    if sys.version_info[0] < 3:
        if sys.platform == 'win32':
            # set I/O stream binary flag on python2.x (Windows)
            runtime = platform.python_implementation()
            if runtime == 'PyPy':
                # the msvcrt trick doesn't work in pypy, so I use fdopen
                mode = 'rb' if stream == 'stdin' else 'wb'
                stdio = os.fdopen(stdio.fileno(), mode, 0)
            else:
                # this works with CPython -- untested on other implementations
                import msvcrt
                msvcrt.setmode(stdio.fileno(), os.O_BINARY)
        return stdio
    else:
        # get 'buffer' attribute to read/write binary data on python3.x
        if hasattr(stdio, 'buffer'):
            return stdio.buffer
        else:
            orig_stdio = getattr(sys, '__%s__' % stream)
            return orig_stdio.buffer
def get_binary_stdio(stream):
    """ Return the specified standard input, output or errors stream as a
    'raw' buffer object suitable for reading/writing binary data from/to it.
    """
    assert stream in ['stdin', 'stdout', 'stderr'], 'invalid stream name'
    stdio = getattr(sys, stream)
    if sys.version_info[0] < 3:
        if sys.platform == 'win32':
            # set I/O stream binary flag on python2.x (Windows)
            runtime = platform.python_implementation()
            if runtime == 'PyPy':
                # the msvcrt trick doesn't work in pypy, so I use fdopen
                mode = 'rb' if stream == 'stdin' else 'wb'
                stdio = os.fdopen(stdio.fileno(), mode, 0)
            else:
                # this works with CPython -- untested on other implementations
                import msvcrt
                msvcrt.setmode(stdio.fileno(), os.O_BINARY)
        return stdio
    else:
        # get 'buffer' attribute to read/write binary data on python3.x
        if hasattr(stdio, 'buffer'):
            return stdio.buffer
        else:
            orig_stdio = getattr(sys, '__%s__' % stream)
            return orig_stdio.buffer
def get_binary_stdio ( stream ) : assert stream in [ 'stdin' , 'stdout' , 'stderr' ] , 'invalid stream name' stdio = getattr ( sys , stream ) if sys . version_info [ 0 ] < 3 : if sys . platform == 'win32' : # set I/O stream binary flag on python2.x (Windows) runtime = platform . python_implementation ( ) if runtime == 'PyPy' : # the msvcrt trick doesn't work in pypy, so I use fdopen mode = 'rb' if stream == 'stdin' else 'wb' stdio = os . fdopen ( stdio . fileno ( ) , mode , 0 ) else : # this works with CPython -- untested on other implementations import msvcrt msvcrt . setmode ( stdio . fileno ( ) , os . O_BINARY ) return stdio else : # get 'buffer' attribute to read/write binary data on python3.x if hasattr ( stdio , 'buffer' ) : return stdio . buffer else : orig_stdio = getattr ( sys , '__%s__' % stream ) return orig_stdio . buffer
Return the specified standard input, output or errors stream as a
    'raw' buffer object suitable for reading/writing binary data from/to it.
Return the specified standard input output or errors stream as a raw buffer object suitable for reading / writing binary data from / to it .