INNER CODE UNIT · Python

__init__

pyca/pyopenssl · src/OpenSSL/SSL.py:693

    def __init__(self, callback: _CookieGenerateCallback) -> None:
        max_cookie_len = getattr(_lib, "DTLS1_COOKIE_LENGTH", 255)

        @wraps(callback)
        def wrapper(ssl, out, outlen):  # type: ignore[no-untyped-def]
            conn = Connection._reverse_mapping[ssl]
            try:
                cookie = callback(conn)
                if len(cookie) > max_cookie_len:
                    raise ValueError(
                        f"Cookie too long (got {len(cookie)} bytes, "
                        f"max {max_cookie_len})"
                    )
                out[0 : len(cookie)] = cookie
                outlen[0] = len(cookie)
                return 1
            except Exception as e:
                conn._callback_problems.append(e)

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…