{"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}