Skip to content

[Bug]: Invalid ALPN protocol identifier in https-proxy-agent #37676

Description

@kherock

Version

1.55.0

Steps to reproduce

  1. Create a Playwright project with use.proxy.server set to an HTTPS server. I am using a project called dumbproxy in this case
  2. Create a test that uses the request fixture to make a request to an external service (e.g. github.com)
  3. Observe that the ALPN protocol is set to an invalid value of http 1.1
    Image

Expected behavior

The TLS handshake for proxied requests should have the ALPN protocol set to the standard value for HTTP/1.1, which is http/1.1.

Actual behavior

If the forward proxy does not implement fallback behavior for the invalid ALPN protocol value, an SSL exception is raised. In my case I get the following error:

    [cause]: Error: apiRequestContext.fetch: write EPROTO 40A1E5F501000000:error:0A000460:SSL routines:ssl3_read_bytes:tlsv1 alert no application protocol:ssl/record/rec_layer_s3.c:911:SSL alert number 120

Additional context

This bug was raised and resolved in version 6.0.0 of https-proxy-agent:
TooTallNate/proxy-agents#142

The latest version is now 7.0.6.

Environment

System:
    OS: macOS 15.7.1
    CPU: (10) arm64 Apple M1 Pro
    Memory: 69.27 MB / 16.00 GB
  Binaries:
    Node: 20.19.3 - /opt/homebrew/bin/node
    npm: 10.8.2 - /opt/homebrew/bin/npm
    pnpm: 10.14.0 - /opt/homebrew/bin/pnpm
  IDEs:
    VSCode: 1.104.2 - /usr/local/bin/code
  Languages:
    Bash: 3.2.57 - /bin/bash
  npmPackages:
    @playwright/test: ^1.55.0 => 1.55.0

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions