{"action":"created","comment":{"url":"https://api.github.com/repos/libuv/libuv/pulls/comments/73125904","id":73125904,"diff_hunk":"@@ -716,6 +772,25 @@ int uv_udp_set_membership(uv_udp_t* handle,\n }\n \n \n+int uv_udp_set_source_membership(uv_udp_t* handle,\n+                          const char* multicast_addr,\n+                          const char* interface_addr,\n+                          const char* source_addr,\n+                          uv_membership membership) {\n+  struct sockaddr_in mcast_addr4;\n+  struct sockaddr_in src_addr4;\n+\n+  int err = uv_ip4_addr(multicast_addr, 0, &mcast_addr4);\n+  if (!err) {","path":"src/win/udp.c","position":76,"original_position":76,"commit_id":"d20b99dfd0dbb57448fe78f39599fd99179ba338","original_commit_id":"d20b99dfd0dbb57448fe78f39599fd99179ba338","user":{"login":"saghul","id":317464,"avatar_url":"https://avatars.githubusercontent.com/u/317464?v=3","gravatar_id":"","url":"https://api.github.com/users/saghul","html_url":"https://github.com/saghul","followers_url":"https://api.github.com/users/saghul/followers","following_url":"https://api.github.com/users/saghul/following{/other_user}","gists_url":"https://api.github.com/users/saghul/gists{/gist_id}","starred_url":"https://api.github.com/users/saghul/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/saghul/subscriptions","organizations_url":"https://api.github.com/users/saghul/orgs","repos_url":"https://api.github.com/users/saghul/repos","events_url":"https://api.github.com/users/saghul/events{/privacy}","received_events_url":"https://api.github.com/users/saghul/received_events","type":"User","site_admin":false},"body":"same as above, reverse the logic","created_at":"2016-08-02T09:51:10Z","updated_at":"2016-08-02T09:51:10Z","html_url":"https://github.com/libuv/libuv/pull/964#discussion_r73125904","pull_request_url":"https://api.github.com/repos/libuv/libuv/pulls/964","_links":{"self":{"href":"https://api.github.com/repos/libuv/libuv/pulls/comments/73125904"},"html":{"href":"https://github.com/libuv/libuv/pull/964#discussion_r73125904"},"pull_request":{"href":"https://api.github.com/repos/libuv/libuv/pulls/964"}}},"pull_request":{"url":"https://api.github.com/repos/libuv/libuv/pulls/964","id":79603747,"html_url":"https://github.com/libuv/libuv/pull/964","diff_url":"https://github.com/libuv/libuv/pull/964.diff","patch_url":"https://github.com/libuv/libuv/pull/964.patch","issue_url":"https://api.github.com/repos/libuv/libuv/issues/964","number":964,"state":"open","locked":false,"title":"udp4: add source-specific multicast support","user":{"login":"falanger","id":2469190,"avatar_url":"https://avatars.githubusercontent.com/u/2469190?v=3","gravatar_id":"","url":"https://api.github.com/users/falanger","html_url":"https://github.com/falanger","followers_url":"https://api.github.com/users/falanger/followers","following_url":"https://api.github.com/users/falanger/following{/other_user}","gists_url":"https://api.github.com/users/falanger/gists{/gist_id}","starred_url":"https://api.github.com/users/falanger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/falanger/subscriptions","organizations_url":"https://api.github.com/users/falanger/orgs","repos_url":"https://api.github.com/users/falanger/repos","events_url":"https://api.github.com/users/falanger/events{/privacy}","received_events_url":"https://api.github.com/users/falanger/received_events","type":"User","site_admin":false},"body":"Add [RFC 4607](https://tools.ietf.org/html/rfc4607) support for IPv4.","created_at":"2016-08-01T17:19:08Z","updated_at":"2016-08-02T09:51:10Z","closed_at":null,"merged_at":null,"merge_commit_sha":"1fd5d16f36d3c5a497d4289faf5482cc652bb71a","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/libuv/libuv/pulls/964/commits","review_comments_url":"https://api.github.com/repos/libuv/libuv/pulls/964/comments","review_comment_url":"https://api.github.com/repos/libuv/libuv/pulls/comments{/number}","comments_url":"https://api.github.com/repos/libuv/libuv/issues/964/comments","statuses_url":"https://api.github.com/repos/libuv/libuv/statuses/d20b99dfd0dbb57448fe78f39599fd99179ba338","head":{"label":"WalleTrader:source-specific-multicast","ref":"source-specific-multicast","sha":"d20b99dfd0dbb57448fe78f39599fd99179ba338","user":{"login":"WalleTrader","id":18293060,"avatar_url":"https://avatars.githubusercontent.com/u/18293060?v=3","gravatar_id":"","url":"https://api.github.com/users/WalleTrader","html_url":"https://github.com/WalleTrader","followers_url":"https://api.github.com/users/WalleTrader/followers","following_url":"https://api.github.com/users/WalleTrader/following{/other_user}","gists_url":"https://api.github.com/users/WalleTrader/gists{/gist_id}","starred_url":"https://api.github.com/users/WalleTrader/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/WalleTrader/subscriptions","organizations_url":"https://api.github.com/users/WalleTrader/orgs","repos_url":"https://api.github.com/users/WalleTrader/repos","events_url":"https://api.github.com/users/WalleTrader/events{/privacy}","received_events_url":"https://api.github.com/users/WalleTrader/received_events","type":"Organization","site_admin":false},"repo":{"id":64601496,"name":"libuv","full_name":"WalleTrader/libuv","owner":{"login":"WalleTrader","id":18293060,"avatar_url":"https://avatars.githubusercontent.com/u/18293060?v=3","gravatar_id":"","url":"https://api.github.com/users/WalleTrader","html_url":"https://github.com/WalleTrader","followers_url":"https://api.github.com/users/WalleTrader/followers","following_url":"https://api.github.com/users/WalleTrader/following{/other_user}","gists_url":"https://api.github.com/users/WalleTrader/gists{/gist_id}","starred_url":"https://api.github.com/users/WalleTrader/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/WalleTrader/subscriptions","organizations_url":"https://api.github.com/users/WalleTrader/orgs","repos_url":"https://api.github.com/users/WalleTrader/repos","events_url":"https://api.github.com/users/WalleTrader/events{/privacy}","received_events_url":"https://api.github.com/users/WalleTrader/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/WalleTrader/libuv","description":"Cross-platform asynchronous I/O","fork":true,"url":"https://api.github.com/repos/WalleTrader/libuv","forks_url":"https://api.github.com/repos/WalleTrader/libuv/forks","keys_url":"https://api.github.com/repos/WalleTrader/libuv/keys{/key_id}","collaborators_url":"https://api.github.com/repos/WalleTrader/libuv/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/WalleTrader/libuv/teams","hooks_url":"https://api.github.com/repos/WalleTrader/libuv/hooks","issue_events_url":"https://api.github.com/repos/WalleTrader/libuv/issues/events{/number}","events_url":"https://api.github.com/repos/WalleTrader/libuv/events","assignees_url":"https://api.github.com/repos/WalleTrader/libuv/assignees{/user}","branches_url":"https://api.github.com/repos/WalleTrader/libuv/branches{/branch}","tags_url":"https://api.github.com/repos/WalleTrader/libuv/tags","blobs_url":"https://api.github.com/repos/WalleTrader/libuv/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/WalleTrader/libuv/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/WalleTrader/libuv/git/refs{/sha}","trees_url":"https://api.github.com/repos/WalleTrader/libuv/git/trees{/sha}","statuses_url":"https://api.github.com/repos/WalleTrader/libuv/statuses/{sha}","languages_url":"https://api.github.com/repos/WalleTrader/libuv/languages","stargazers_url":"https://api.github.com/repos/WalleTrader/libuv/stargazers","contributors_url":"https://api.github.com/repos/WalleTrader/libuv/contributors","subscribers_url":"https://api.github.com/repos/WalleTrader/libuv/subscribers","subscription_url":"https://api.github.com/repos/WalleTrader/libuv/subscription","commits_url":"https://api.github.com/repos/WalleTrader/libuv/commits{/sha}","git_commits_url":"https://api.github.com/repos/WalleTrader/libuv/git/commits{/sha}","comments_url":"https://api.github.com/repos/WalleTrader/libuv/comments{/number}","issue_comment_url":"https://api.github.com/repos/WalleTrader/libuv/issues/comments{/number}","contents_url":"https://api.github.com/repos/WalleTrader/libuv/contents/{+path}","compare_url":"https://api.github.com/repos/WalleTrader/libuv/compare/{base}...{head}","merges_url":"https://api.github.com/repos/WalleTrader/libuv/merges","archive_url":"https://api.github.com/repos/WalleTrader/libuv/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/WalleTrader/libuv/downloads","issues_url":"https://api.github.com/repos/WalleTrader/libuv/issues{/number}","pulls_url":"https://api.github.com/repos/WalleTrader/libuv/pulls{/number}","milestones_url":"https://api.github.com/repos/WalleTrader/libuv/milestones{/number}","notifications_url":"https://api.github.com/repos/WalleTrader/libuv/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/WalleTrader/libuv/labels{/name}","releases_url":"https://api.github.com/repos/WalleTrader/libuv/releases{/id}","deployments_url":"https://api.github.com/repos/WalleTrader/libuv/deployments","created_at":"2016-07-31T15:40:36Z","updated_at":"2016-07-31T15:40:41Z","pushed_at":"2016-08-01T17:12:12Z","git_url":"git://github.com/WalleTrader/libuv.git","ssh_url":"git@github.com:WalleTrader/libuv.git","clone_url":"https://github.com/WalleTrader/libuv.git","svn_url":"https://github.com/WalleTrader/libuv","homepage":"http://libuv.org/","size":10939,"stargazers_count":0,"watchers_count":0,"language":"C","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"v1.x"}},"base":{"label":"libuv:v1.x","ref":"v1.x","sha":"f614b43a69693022119807709a62d361b7c5517d","user":{"login":"libuv","id":4030929,"avatar_url":"https://avatars.githubusercontent.com/u/4030929?v=3","gravatar_id":"","url":"https://api.github.com/users/libuv","html_url":"https://github.com/libuv","followers_url":"https://api.github.com/users/libuv/followers","following_url":"https://api.github.com/users/libuv/following{/other_user}","gists_url":"https://api.github.com/users/libuv/gists{/gist_id}","starred_url":"https://api.github.com/users/libuv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/libuv/subscriptions","organizations_url":"https://api.github.com/users/libuv/orgs","repos_url":"https://api.github.com/users/libuv/repos","events_url":"https://api.github.com/users/libuv/events{/privacy}","received_events_url":"https://api.github.com/users/libuv/received_events","type":"Organization","site_admin":false},"repo":{"id":14812739,"name":"libuv","full_name":"libuv/libuv","owner":{"login":"libuv","id":4030929,"avatar_url":"https://avatars.githubusercontent.com/u/4030929?v=3","gravatar_id":"","url":"https://api.github.com/users/libuv","html_url":"https://github.com/libuv","followers_url":"https://api.github.com/users/libuv/followers","following_url":"https://api.github.com/users/libuv/following{/other_user}","gists_url":"https://api.github.com/users/libuv/gists{/gist_id}","starred_url":"https://api.github.com/users/libuv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/libuv/subscriptions","organizations_url":"https://api.github.com/users/libuv/orgs","repos_url":"https://api.github.com/users/libuv/repos","events_url":"https://api.github.com/users/libuv/events{/privacy}","received_events_url":"https://api.github.com/users/libuv/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/libuv/libuv","description":"Cross-platform asynchronous I/O","fork":false,"url":"https://api.github.com/repos/libuv/libuv","forks_url":"https://api.github.com/repos/libuv/libuv/forks","keys_url":"https://api.github.com/repos/libuv/libuv/keys{/key_id}","collaborators_url":"https://api.github.com/repos/libuv/libuv/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/libuv/libuv/teams","hooks_url":"https://api.github.com/repos/libuv/libuv/hooks","issue_events_url":"https://api.github.com/repos/libuv/libuv/issues/events{/number}","events_url":"https://api.github.com/repos/libuv/libuv/events","assignees_url":"https://api.github.com/repos/libuv/libuv/assignees{/user}","branches_url":"https://api.github.com/repos/libuv/libuv/branches{/branch}","tags_url":"https://api.github.com/repos/libuv/libuv/tags","blobs_url":"https://api.github.com/repos/libuv/libuv/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/libuv/libuv/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/libuv/libuv/git/refs{/sha}","trees_url":"https://api.github.com/repos/libuv/libuv/git/trees{/sha}","statuses_url":"https://api.github.com/repos/libuv/libuv/statuses/{sha}","languages_url":"https://api.github.com/repos/libuv/libuv/languages","stargazers_url":"https://api.github.com/repos/libuv/libuv/stargazers","contributors_url":"https://api.github.com/repos/libuv/libuv/contributors","subscribers_url":"https://api.github.com/repos/libuv/libuv/subscribers","subscription_url":"https://api.github.com/repos/libuv/libuv/subscription","commits_url":"https://api.github.com/repos/libuv/libuv/commits{/sha}","git_commits_url":"https://api.github.com/repos/libuv/libuv/git/commits{/sha}","comments_url":"https://api.github.com/repos/libuv/libuv/comments{/number}","issue_comment_url":"https://api.github.com/repos/libuv/libuv/issues/comments{/number}","contents_url":"https://api.github.com/repos/libuv/libuv/contents/{+path}","compare_url":"https://api.github.com/repos/libuv/libuv/compare/{base}...{head}","merges_url":"https://api.github.com/repos/libuv/libuv/merges","archive_url":"https://api.github.com/repos/libuv/libuv/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/libuv/libuv/downloads","issues_url":"https://api.github.com/repos/libuv/libuv/issues{/number}","pulls_url":"https://api.github.com/repos/libuv/libuv/pulls{/number}","milestones_url":"https://api.github.com/repos/libuv/libuv/milestones{/number}","notifications_url":"https://api.github.com/repos/libuv/libuv/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/libuv/libuv/labels{/name}","releases_url":"https://api.github.com/repos/libuv/libuv/releases{/id}","deployments_url":"https://api.github.com/repos/libuv/libuv/deployments","created_at":"2013-11-30T00:29:56Z","updated_at":"2016-08-02T05:39:44Z","pushed_at":"2016-08-01T17:19:08Z","git_url":"git://github.com/libuv/libuv.git","ssh_url":"git@github.com:libuv/libuv.git","clone_url":"https://github.com/libuv/libuv.git","svn_url":"https://github.com/libuv/libuv","homepage":"http://libuv.org/","size":17612,"stargazers_count":4490,"watchers_count":4490,"language":"C","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":754,"mirror_url":null,"open_issues_count":109,"forks":754,"open_issues":109,"watchers":4490,"default_branch":"v1.x"}},"_links":{"self":{"href":"https://api.github.com/repos/libuv/libuv/pulls/964"},"html":{"href":"https://github.com/libuv/libuv/pull/964"},"issue":{"href":"https://api.github.com/repos/libuv/libuv/issues/964"},"comments":{"href":"https://api.github.com/repos/libuv/libuv/issues/964/comments"},"review_comments":{"href":"https://api.github.com/repos/libuv/libuv/pulls/964/comments"},"review_comment":{"href":"https://api.github.com/repos/libuv/libuv/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/libuv/libuv/pulls/964/commits"},"statuses":{"href":"https://api.github.com/repos/libuv/libuv/statuses/d20b99dfd0dbb57448fe78f39599fd99179ba338"}}}}
{"actor":{"display_login":"saghul"}}