# Path: paramiko/py3compat.py
# PY2 = sys.version_info[0] < 3
#         MAXSIZE = int((1 << 31) - 1)  # NOQA
#         MAXSIZE = int((1 << 63) - 1)  # NOQA
#     MAXSIZE = sys.maxsize  # NOQA
#     def bytestring(s):  # NOQA
#     def byte_mask(c, mask):
#     def b(s, encoding="utf8"):  # NOQA
#     def u(s, encoding="utf8"):  # NOQA
#     def b2s(s):
#     def is_callable(c):  # NOQA
#     def get_next(c):  # NOQA
#     def next(c):
#         def __len__(self):
#     def strftime(format, t):
#     def byte_ord(c):
#     def byte_chr(c):
#     def byte_mask(c, mask):
#     def b(s, encoding="utf8"):
#     def u(s, encoding="utf8"):
#     def b2s(s):
#     def is_callable(c):
#     def get_next(c):
#     class X(object):
#     class long(int):
# 
# Path: paramiko/ssh_gss.py
# GSS_AUTH_AVAILABLE = True


from os.path import dirname, realpath, join
from paramiko.py3compat import builtins, PY2
from paramiko.ssh_gss import GSS_AUTH_AVAILABLE
        from k5test import KerberosTestCase
import os
import struct
import sys
import unittest
import pytest
    import k5test
    import atexit
    import subprocess

def k5shell(args=None):
    """Create a shell with an kerberos environment

    This can be used to debug paramiko or to test the old GSSAPI.
    To test a different GSSAPI, simply activate a suitable venv
    within the shell.
    """

    k5 = k5test.K5Realm()
    atexit.register(k5.stop)
    os.environ.update(k5.env)
    for n in ("realm", "user_princ", "hostname"):
        os.environ["K5TEST_" + n.upper()] = getattr(k5, n)

    if not args:
        args = sys.argv[1:]
    if not args:
        args = [os.environ.get("SHELL", "bash")]
    sys.exit(subprocess.call(args))


def is_low_entropy():
    """
    Attempts to detect whether running interpreter is low-entropy.

    Classified as being in 32-bit mode under Python 2, or 32-bit mode and with
    the hash seed set to zero under Python 3.
    """
    is_32bit = struct.calcsize("P") == 32 / 8

# Path: paramiko/py3compat.py
# PY2 = sys.version_info[0] < 3
#         MAXSIZE = int((1 << 31) - 1)  # NOQA
#         MAXSIZE = int((1 << 63) - 1)  # NOQA
#     MAXSIZE = sys.maxsize  # NOQA
#     def bytestring(s):  # NOQA
#     def byte_mask(c, mask):
#     def b(s, encoding="utf8"):  # NOQA
#     def u(s, encoding="utf8"):  # NOQA
#     def b2s(s):
#     def is_callable(c):  # NOQA
#     def get_next(c):  # NOQA
#     def next(c):
#         def __len__(self):
#     def strftime(format, t):
#     def byte_ord(c):
#     def byte_chr(c):
#     def byte_mask(c, mask):
#     def b(s, encoding="utf8"):
#     def u(s, encoding="utf8"):
#     def b2s(s):
#     def is_callable(c):
#     def get_next(c):
#     class X(object):
#     class long(int):
# 
# Path: paramiko/ssh_gss.py
# GSS_AUTH_AVAILABLE = True


# Path: tests/util.py
from os.path import dirname, realpath, join
from paramiko.py3compat import builtins, PY2
from paramiko.ssh_gss import GSS_AUTH_AVAILABLE
        from k5test import KerberosTestCase
import os
import struct
import sys
import unittest
import pytest
    import k5test
    import atexit
    import subprocess


def k5shell(args=None):
    """Create a shell with an kerberos environment

    This can be used to debug paramiko or to test the old GSSAPI.
    To test a different GSSAPI, simply activate a suitable venv
    within the shell.
    """

    k5 = k5test.K5Realm()
    atexit.register(k5.stop)
    os.environ.update(k5.env)
    for n in ("realm", "user_princ", "hostname"):
        os.environ["K5TEST_" + n.upper()] = getattr(k5, n)

    if not args:
        args = sys.argv[1:]
    if not args:
        args = [os.environ.get("SHELL", "bash")]
    sys.exit(subprocess.call(args))


def is_low_entropy():
    """
    Attempts to detect whether running interpreter is low-entropy.

    Classified as being in 32-bit mode under Python 2, or 32-bit mode and with
    the hash seed set to zero under Python 3.
    """
    is_32bit = struct.calcsize("P") == 32 / 8

    if PY2: