{"url":"https://api.github.com/repos/tus/tusd/issues/1293","repository_url":"https://api.github.com/repos/tus/tusd","labels_url":"https://api.github.com/repos/tus/tusd/issues/1293/labels{/name}","comments_url":"https://api.github.com/repos/tus/tusd/issues/1293/comments","events_url":"https://api.github.com/repos/tus/tusd/issues/1293/events","html_url":"https://github.com/tus/tusd/issues/1293","id":3259910197,"node_id":"I_kwDOAIapMc7CTkg1","number":1293,"title":"HTTP/2 not working","user":{"login":"gdubicki","id":566632,"node_id":"MDQ6VXNlcjU2NjYzMg==","avatar_url":"https://avatars.githubusercontent.com/u/566632?v=4","gravatar_id":"","url":"https://api.github.com/users/gdubicki","html_url":"https://github.com/gdubicki","followers_url":"https://api.github.com/users/gdubicki/followers","following_url":"https://api.github.com/users/gdubicki/following{/other_user}","gists_url":"https://api.github.com/users/gdubicki/gists{/gist_id}","starred_url":"https://api.github.com/users/gdubicki/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gdubicki/subscriptions","organizations_url":"https://api.github.com/users/gdubicki/orgs","repos_url":"https://api.github.com/users/gdubicki/repos","events_url":"https://api.github.com/users/gdubicki/events{/privacy}","received_events_url":"https://api.github.com/users/gdubicki/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[{"id":32198123,"node_id":"MDU6TGFiZWwzMjE5ODEyMw==","url":"https://api.github.com/repos/tus/tusd/labels/bug","name":"bug","color":"fc2929","default":true,"description":null}],"state":"closed","locked":false,"assignees":[],"milestone":null,"comments":6,"created_at":"2025-07-24T13:27:23Z","updated_at":"2026-05-25T21:48:22Z","closed_at":"2026-05-25T21:48:22Z","assignee":null,"author_association":"NONE","issue_field_values":[],"type":null,"active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"**Describe the bug**\nHTTP2 did not work for me when I tested it with self-signed certificate and curl forced to use HTTP/2 only.\n\ntusd output:\n```\n$ tusd -tls-certificate=./tusd.pem -tls-key=./tusd.key\n2025/07/24 11:12:21.580081 Using '/Users/gdubicki/tusd/data' as directory storage.\n2025/07/24 11:12:21.580242 Using 0.00MB as maximum size.\n2025/07/24 11:12:21.580476 Supported tus extensions: creation,creation-with-upload,termination,concatenation,creation-defer-length\n2025/07/24 11:12:21.580494 Using 0.0.0.0:8080 as address to listen.\n2025/07/24 11:12:21.580496 Using /files/ as the base path.\n2025/07/24 11:12:21.581181 Using /metrics as the metrics path.\n2025/07/24 11:12:21.582046 You can now upload files to: https://[::]:8080/files/\n2025/07/24 11:14:45.166028 level=INFO event=\"http: TLS handshake error from [::1]:60959: tls: client requested unsupported application protocols ([h2])\"\n```\n\nClient output:\n```\n$ curl -v -k --http2-prior-knowledge https://localhost:8080/foo\n* Host localhost:8080 was resolved.\n* IPv6: ::1\n* IPv4: 127.0.0.1\n*   Trying [::1]:8080...\n* ALPN: curl offers h2\n* TLSv1.3 (OUT), TLS handshake, Client hello (1):\n* TLSv1.3 (IN), TLS alert, no application protocol (632):\n* TLS connect error: error:0A000460:SSL routines::tlsv1 alert no application protocol\n* closing connection #0\ncurl: (35) TLS connect error: error:0A000460:SSL routines::tlsv1 alert no application protocol\n```\n\n**To Reproduce**\nSteps to reproduce the behavior:\n1. Create self-signed certificate (f.e. `openssl req -x509 -new -newkey rsa:2048 -nodes -sha256 -days 36500 -keyout tusd.key -out tusd.pem -subj \"/CN=tusd\"`)\n2. Run tusd with using the certificate with `-tls-certificate` and `-tls-key`\n3. Try to make a request to tusd using HTTP/2, f.e. with curl and `--http2-prior-knowledge`\n\n**Expected behavior**\n\nThe request should succeed.\n\n**Setup details**\nPlease provide following details, if applicable to your situation:\n- Operating System: macOS\n- Used tusd version: \n```\nVersion: v2.8.0\nCommit: 0e52ad650abed02ec961353bb0c3c8bc36650d2c\nDate: Wed Apr  2 07:49:21 UTC 2025\n```\n- Used tusd data storage: disk store\n- Used tusd configuration: `-tls-certificate=(path) -tls-key=(path)`\n- Used tus client library: curl","closed_by":{"login":"Acconut","id":1375043,"node_id":"MDQ6VXNlcjEzNzUwNDM=","avatar_url":"https://avatars.githubusercontent.com/u/1375043?v=4","gravatar_id":"","url":"https://api.github.com/users/Acconut","html_url":"https://github.com/Acconut","followers_url":"https://api.github.com/users/Acconut/followers","following_url":"https://api.github.com/users/Acconut/following{/other_user}","gists_url":"https://api.github.com/users/Acconut/gists{/gist_id}","starred_url":"https://api.github.com/users/Acconut/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Acconut/subscriptions","organizations_url":"https://api.github.com/users/Acconut/orgs","repos_url":"https://api.github.com/users/Acconut/repos","events_url":"https://api.github.com/users/Acconut/events{/privacy}","received_events_url":"https://api.github.com/users/Acconut/received_events","type":"User","user_view_type":"public","site_admin":false},"reactions":{"url":"https://api.github.com/repos/tus/tusd/issues/1293/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/tus/tusd/issues/1293/timeline","performed_via_github_app":null,"state_reason":"completed","pinned_comment":null}