René's URL Explorer Experiment


Title: bpo-29970: Time out SSL handshake if not complete after 10 seconds by mocmocamoc · Pull Request #4825 · python/cpython · GitHub

Open Graph Title: bpo-29970: Time out SSL handshake if not complete after 10 seconds by mocmocamoc · Pull Request #4825 · python/cpython

X Title: bpo-29970: Time out SSL handshake if not complete after 10 seconds by mocmocamoc · Pull Request #4825 · python/cpython

Description: Currently if a SSL server is awaiting a handshake and never receives any data at all, it will remain stuck in that state indefinitely. This means that a client can open an unlimited number of connections to the server and not send any data, eventually exhausting the server's file handle limit if this continues. This change is to add a timeout event that will abort a connection if the handshake does not complete within ten seconds of starting. https://bugs.python.org/issue29970

Open Graph Description: Currently if a SSL server is awaiting a handshake and never receives any data at all, it will remain stuck in that state indefinitely. This means that a client can open an unlimited number of conne...

X Description: Currently if a SSL server is awaiting a handshake and never receives any data at all, it will remain stuck in that state indefinitely. This means that a client can open an unlimited number of conne...

Opengraph URL: https://github.com/python/cpython/pull/4825

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:39aa7082-3462-79f4-5838-41314ed87f3a
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idD78E:D7E18:157E4:1E5A9:6A59CCC7
html-safe-noncea60d3a3c1b1bf7832fa3eaf2905f1b091868f50a69e58a2f71227a53f2395705
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJENzhFOkQ3RTE4OjE1N0U0OjFFNUE5OjZBNTlDQ0M3IiwidmlzaXRvcl9pZCI6Ijc0ODg2Nzg2NzI0MTUxODIwMjMiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ==
visitor-hmac3ed1404f239e1179e42a15b38100a58594d517b42602da1d07cbab9bf1e1058c
hovercard-subject-tagpull_request:157959120
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/python/cpython/pull/4825/files
twitter:imagehttps://avatars.githubusercontent.com/u/7582496?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/7582496?s=400&v=4
og:image:altCurrently if a SSL server is awaiting a handshake and never receives any data at all, it will remain stuck in that state indefinitely. This means that a client can open an unlimited number of conne...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
Noneba3976babb66479b1c943a8edc0777d96157da48fadc0161f9ddb219deee8353
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/python/cpython git https://github.com/python/cpython.git
octolytics-dimension-user_id1525981
octolytics-dimension-user_loginpython
octolytics-dimension-repository_id81598961
octolytics-dimension-repository_nwopython/cpython
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id81598961
octolytics-dimension-repository_network_root_nwopython/cpython
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releaseab680789ae4a316cdaf0d5a292a1760140931cc4
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/python/cpython/pull/4825/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F4825%2Ffiles
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F4825%2Ffiles
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=python%2Fcpython
Reloadhttps://github.com/python/cpython/pull/4825/files
Reloadhttps://github.com/python/cpython/pull/4825/files
Reloadhttps://github.com/python/cpython/pull/4825/files
Please reload this pagehttps://github.com/python/cpython/pull/4825/files
python https://github.com/python
cpythonhttps://github.com/python/cpython
Please reload this pagehttps://github.com/python/cpython/pull/4825/files
Notifications https://github.com/login?return_to=%2Fpython%2Fcpython
Fork 34.9k https://github.com/login?return_to=%2Fpython%2Fcpython
Star 73.8k https://github.com/login?return_to=%2Fpython%2Fcpython
Code https://github.com/python/cpython
Issues 5k+ https://github.com/python/cpython/issues
Pull requests 2.3k https://github.com/python/cpython/pulls
Actions https://github.com/python/cpython/actions
Projects https://github.com/python/cpython/projects
Security and quality 0 https://github.com/python/cpython/security
Insights https://github.com/python/cpython/pulse
Code https://github.com/python/cpython
Issues https://github.com/python/cpython/issues
Pull requests https://github.com/python/cpython/pulls
Actions https://github.com/python/cpython/actions
Projects https://github.com/python/cpython/projects
Security and quality https://github.com/python/cpython/security
Insights https://github.com/python/cpython/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Fpython%2Fcpython%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Fpython%2Fcpython%2Fissues%2Fnew%2Fchoose
asvetlovhttps://github.com/asvetlov
python:masterhttps://github.com/python/cpython/tree/master
mocmocamoc:ssl_handshake_timeouthttps://github.com/mocmocamoc/cpython/tree/ssl_handshake_timeout
Conversation 37 https://github.com/python/cpython/pull/4825
Commits 14 https://github.com/python/cpython/pull/4825/commits
Checks 0 https://github.com/python/cpython/pull/4825/checks
Files changed https://github.com/python/cpython/pull/4825/files
Please reload this pagehttps://github.com/python/cpython/pull/4825/files
bpo-29970: Time out SSL handshake if not complete after 10 seconds https://github.com/python/cpython/pull/4825/files#top
Show all changes 14 commits https://github.com/python/cpython/pull/4825/files
1e85836 Time out SSL handshake if not complete after 10 seconds Dec 12, 2017 https://github.com/python/cpython/pull/4825/commits/1e85836420d15368929ce29294a97d0a63bb67c5
b7467e4 Add test for SSL handshake timeout Dec 13, 2017 https://github.com/python/cpython/pull/4825/commits/b7467e482bf88c2a727f6c267528ecc9df3fc77c
f655c5c Add news and ACKS entries Dec 13, 2017 https://github.com/python/cpython/pull/4825/commits/f655c5cc1e23755e4c3f63085ae074dc44895383
85c9d7a Fixing whitespace issue Dec 13, 2017 https://github.com/python/cpython/pull/4825/commits/85c9d7a7eeafed470411b9134e3aab5728cc4752
3168967 Make handshake_timeout configurable, use short timeout for tests Dec 13, 2017 https://github.com/python/cpython/pull/4825/commits/3168967d1ee72bc800903a8fc8b3c790b8a84df5
0b2d3cc Expose handshake_timeout via start/create_server Dec 13, 2017 https://github.com/python/cpython/pull/4825/commits/0b2d3cc5d09822540fa40e6f4f97005301c34940
ef373ca Rename handshake_timeout to ssl_handshake_timeout, add documentation Dec 13, 2017 https://github.com/python/cpython/pull/4825/commits/ef373ca5fc7a2bb80743a4d7599176a8918da465
4ca9f14 Fix whitespace issue Dec 13, 2017 https://github.com/python/cpython/pull/4825/commits/4ca9f143cbc5efb68852c592c3e2966922a5f553
630efbb Add ssl_handshake_timeout arg to all loop methods that take ssl arg Dec 14, 2017 https://github.com/python/cpython/pull/4825/commits/630efbb41229b18c4b28d9808543aff159621365
654f974 Merge remote-tracking branch 'upstream/master' into ssl_handshake_tim… Dec 15, 2017 https://github.com/python/cpython/pull/4825/commits/654f974441fbe531dfd8814b3af5960818971089
b80e768 Added SSL_HANDSHAKE_TIMEOUT to constants.py Dec 17, 2017 https://github.com/python/cpython/pull/4825/commits/b80e768811cec16f614ea058a47052822c2b381d
6d5ed76 Cancel SSL handshake check once successful, PEP8 and test fixes Dec 18, 2017 https://github.com/python/cpython/pull/4825/commits/6d5ed76e131df2468b6f0dc8c1f993b60a4cbbe0
ec887cd Fix lonely parentheses Dec 18, 2017 https://github.com/python/cpython/pull/4825/commits/ec887cd87d2baed72c4bf3c2d0a0795fc104b7d5
fa4249e Add ssl_handshake_timeout to asyncio documentation Dec 19, 2017 https://github.com/python/cpython/pull/4825/commits/fa4249ef727763e9190dd31497e4037f4fd1afab
Clear filters https://github.com/python/cpython/pull/4825/files
Please reload this pagehttps://github.com/python/cpython/pull/4825/files
Please reload this pagehttps://github.com/python/cpython/pull/4825/files
asyncio-eventloop.rst https://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
base_events.py https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
constants.py https://github.com/python/cpython/pull/4825/files#diff-262f1922bbd2c64a11db98b5154cf42107d6e065950ec0fd575a5b0520ccde44
events.py https://github.com/python/cpython/pull/4825/files#diff-05b057af187459b133df09e1d12385ac3c3735d3981c9f6109c754af0020e8c3
proactor_events.py https://github.com/python/cpython/pull/4825/files#diff-15176d64608861034db7168743f4f116f4cb33422cf685a2b911481c55826aa2
selector_events.py https://github.com/python/cpython/pull/4825/files#diff-905d4384eaa0f1d54083b6d643e90b9404e32339f2c151e880491cb2e595f207
sslproto.py https://github.com/python/cpython/pull/4825/files#diff-0ae38bdc337cc724282d20111dc780b8a9c07385c80476cf304d5b3c9ec306ec
unix_events.py https://github.com/python/cpython/pull/4825/files#diff-59eb90ea71c294e306140c76e079c867bcd69a6faf7f96831ce7152eb6e37fc4
test_base_events.py https://github.com/python/cpython/pull/4825/files#diff-e5cbeae2e72425359e2b5f2b5f9488b699b5f3bd90cc2d639936109ee60b4819
test_sslproto.py https://github.com/python/cpython/pull/4825/files#diff-b0872a36b23aba6bcdc8de20fae7d2ba78e18885ff8f6b7a5b5e6b2953f0d2a7
ACKS https://github.com/python/cpython/pull/4825/files#diff-d1243956feb505c5459fc05387e194609efb5c350cee202942be47ed30d7d7d0
2017-12-13-19-02-38.bpo-29970.uxVOpk.rst https://github.com/python/cpython/pull/4825/files#diff-66dd224965a5ee948570f1510f70952fc2b6b9c0928418fc438a14c955ec76cf
Doc/library/asyncio-eventloop.rsthttps://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
View file https://github.com/mocmocamoc/cpython/blob/fa4249ef727763e9190dd31497e4037f4fd1afab/Doc/library/asyncio-eventloop.rst
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/4825/{{ revealButtonHref }}
https://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
https://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
https://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
https://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
https://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
https://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
https://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
https://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
https://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
https://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
https://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
https://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
https://github.com/python/cpython/pull/4825/files#diff-afc9fa8b85212e4ea584ce77305955d6600c58f10e0bf2c04e4153ee2d204652
Lib/asyncio/base_events.pyhttps://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
View file https://github.com/mocmocamoc/cpython/blob/fa4249ef727763e9190dd31497e4037f4fd1afab/Lib/asyncio/base_events.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/4825/{{ revealButtonHref }}
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
https://github.com/python/cpython/pull/4825/files#diff-7962e1627bc1bfbce13bef0be78d5ef7fc962f99bbc524a199ef489852ca1344
Lib/asyncio/constants.pyhttps://github.com/python/cpython/pull/4825/files#diff-262f1922bbd2c64a11db98b5154cf42107d6e065950ec0fd575a5b0520ccde44
View file https://github.com/mocmocamoc/cpython/blob/fa4249ef727763e9190dd31497e4037f4fd1afab/Lib/asyncio/constants.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/4825/{{ revealButtonHref }}
https://github.com/python/cpython/pull/4825/files#diff-262f1922bbd2c64a11db98b5154cf42107d6e065950ec0fd575a5b0520ccde44
Lib/asyncio/events.pyhttps://github.com/python/cpython/pull/4825/files#diff-05b057af187459b133df09e1d12385ac3c3735d3981c9f6109c754af0020e8c3
View file https://github.com/mocmocamoc/cpython/blob/fa4249ef727763e9190dd31497e4037f4fd1afab/Lib/asyncio/events.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/4825/{{ revealButtonHref }}
https://github.com/python/cpython/pull/4825/files#diff-05b057af187459b133df09e1d12385ac3c3735d3981c9f6109c754af0020e8c3
https://github.com/python/cpython/pull/4825/files#diff-05b057af187459b133df09e1d12385ac3c3735d3981c9f6109c754af0020e8c3
https://github.com/python/cpython/pull/4825/files#diff-05b057af187459b133df09e1d12385ac3c3735d3981c9f6109c754af0020e8c3
https://github.com/python/cpython/pull/4825/files#diff-05b057af187459b133df09e1d12385ac3c3735d3981c9f6109c754af0020e8c3
https://github.com/python/cpython/pull/4825/files#diff-05b057af187459b133df09e1d12385ac3c3735d3981c9f6109c754af0020e8c3
Lib/asyncio/proactor_events.pyhttps://github.com/python/cpython/pull/4825/files#diff-15176d64608861034db7168743f4f116f4cb33422cf685a2b911481c55826aa2
View file https://github.com/mocmocamoc/cpython/blob/fa4249ef727763e9190dd31497e4037f4fd1afab/Lib/asyncio/proactor_events.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/4825/{{ revealButtonHref }}
https://github.com/python/cpython/pull/4825/files#diff-15176d64608861034db7168743f4f116f4cb33422cf685a2b911481c55826aa2
https://github.com/python/cpython/pull/4825/files#diff-15176d64608861034db7168743f4f116f4cb33422cf685a2b911481c55826aa2
https://github.com/python/cpython/pull/4825/files#diff-15176d64608861034db7168743f4f116f4cb33422cf685a2b911481c55826aa2
https://github.com/python/cpython/pull/4825/files#diff-15176d64608861034db7168743f4f116f4cb33422cf685a2b911481c55826aa2
https://github.com/python/cpython/pull/4825/files#diff-15176d64608861034db7168743f4f116f4cb33422cf685a2b911481c55826aa2
Please reload this pagehttps://github.com/python/cpython/pull/4825/files
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.