{"action":"created","issue":{"url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6374","labels_url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6374/labels{/name}","comments_url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6374/comments","events_url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6374/events","html_url":"https://github.com/bitcoin/bitcoin/pull/6374","id":92960509,"number":6374,"title":"Connection slot exhaustion DoS mitigation","user":{"login":"pstratem","id":620611,"avatar_url":"https://avatars.githubusercontent.com/u/620611?v=3","gravatar_id":"","url":"https://api.github.com/users/pstratem","html_url":"https://github.com/pstratem","followers_url":"https://api.github.com/users/pstratem/followers","following_url":"https://api.github.com/users/pstratem/following{/other_user}","gists_url":"https://api.github.com/users/pstratem/gists{/gist_id}","starred_url":"https://api.github.com/users/pstratem/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pstratem/subscriptions","organizations_url":"https://api.github.com/users/pstratem/orgs","repos_url":"https://api.github.com/users/pstratem/repos","events_url":"https://api.github.com/users/pstratem/events{/privacy}","received_events_url":"https://api.github.com/users/pstratem/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/bitcoin/bitcoin/labels/P2P","name":"P2P","color":"006b75"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":17,"created_at":"2015-07-04T02:13:33Z","updated_at":"2015-08-25T23:15:20Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/bitcoin/bitcoin/pulls/6374","html_url":"https://github.com/bitcoin/bitcoin/pull/6374","diff_url":"https://github.com/bitcoin/bitcoin/pull/6374.diff","patch_url":"https://github.com/bitcoin/bitcoin/pull/6374.patch"},"body":"Connection slots are a limited resource which can be the target of DoS attacks.\r\n\r\nThis issue was introduced in 2011 by 5a3e82f.\r\n\r\nIn mitigating this issue it is important to take steps to avoid network partitioning.\r\n\r\nI have taken the approach of protecting connections with various properties from eviction.\r\n\r\nOf the nodes still available for eviction the most recently connected node from the CNetAddr with the most connections is selected and evicted.\r\n\r\nThe largest class of protected connections is those which have been connected for the longest time. \r\nThe intent is to maintain the strong bias towards these connections which exists today and thus avoid any risk of network partition."},"comment":{"url":"https://api.github.com/repos/bitcoin/bitcoin/issues/comments/134767538","html_url":"https://github.com/bitcoin/bitcoin/pull/6374#issuecomment-134767538","issue_url":"https://api.github.com/repos/bitcoin/bitcoin/issues/6374","id":134767538,"user":{"login":"pstratem","id":620611,"avatar_url":"https://avatars.githubusercontent.com/u/620611?v=3","gravatar_id":"","url":"https://api.github.com/users/pstratem","html_url":"https://github.com/pstratem","followers_url":"https://api.github.com/users/pstratem/followers","following_url":"https://api.github.com/users/pstratem/following{/other_user}","gists_url":"https://api.github.com/users/pstratem/gists{/gist_id}","starred_url":"https://api.github.com/users/pstratem/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pstratem/subscriptions","organizations_url":"https://api.github.com/users/pstratem/orgs","repos_url":"https://api.github.com/users/pstratem/repos","events_url":"https://api.github.com/users/pstratem/events{/privacy}","received_events_url":"https://api.github.com/users/pstratem/received_events","type":"User","site_admin":false},"created_at":"2015-08-25T23:15:20Z","updated_at":"2015-08-25T23:15:20Z","body":"@sipa ah ok then"}}