{"action":"created","issue":{"url":"https://api.github.com/repos/FRRouting/frr/issues/2850","repository_url":"https://api.github.com/repos/FRRouting/frr","labels_url":"https://api.github.com/repos/FRRouting/frr/issues/2850/labels{/name}","comments_url":"https://api.github.com/repos/FRRouting/frr/issues/2850/comments","events_url":"https://api.github.com/repos/FRRouting/frr/issues/2850/events","html_url":"https://github.com/FRRouting/frr/pull/2850","id":351095068,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA4Nzc0MjA0","number":2850,"title":"Fix pim_mroute_del crash while killing pimd","user":{"login":"patrasar","id":40834655,"node_id":"MDQ6VXNlcjQwODM0NjU1","avatar_url":"https://avatars1.githubusercontent.com/u/40834655?v=4","gravatar_id":"","url":"https://api.github.com/users/patrasar","html_url":"https://github.com/patrasar","followers_url":"https://api.github.com/users/patrasar/followers","following_url":"https://api.github.com/users/patrasar/following{/other_user}","gists_url":"https://api.github.com/users/patrasar/gists{/gist_id}","starred_url":"https://api.github.com/users/patrasar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/patrasar/subscriptions","organizations_url":"https://api.github.com/users/patrasar/orgs","repos_url":"https://api.github.com/users/patrasar/repos","events_url":"https://api.github.com/users/patrasar/events{/privacy}","received_events_url":"https://api.github.com/users/patrasar/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2018-08-16T07:55:31Z","updated_at":"2018-08-21T02:29:45Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/FRRouting/frr/pulls/2850","html_url":"https://github.com/FRRouting/frr/pull/2850","diff_url":"https://github.com/FRRouting/frr/pull/2850.diff","patch_url":"https://github.com/FRRouting/frr/pull/2850.patch"},"body":"When we kill pimd, pim_upstream_del() will be get called as part of cleaning process.\r\nDelete mroute by calling pim_mroute_del() which in result initialize the up->channel_oil\r\nto NULL after cleanup. Delete each ifchannel stored in the upstream ifchannel list one\r\nby one. As part of pim_ifchannel_delete(), it will check if it is the last ifchannel,\r\nthen delete the corresponding upstream. So pim_upstream_del will be get called more than\r\nonce as part of pim_upstream_terminate() and pim_ ifchannel_delete(). Similarly pim_mroute_del()\r\nwill be again called and since there is no NULL check before accesing the data, crash is happening.\r\n\r\nFix:\r\nAdding Null check in pim_mroute_del before accessing the data.\r\nand using the FLAG \"PIM_UPSTREAM_FLAG_DEL\" which will check if the deletion of pim upstream is already\r\nin progress then don’t call pim_upstream_del() from pim_ifchannel_delete().\r\n\r\nSigned-off-by: Sarita Patra <saritap@vmware.com>"},"comment":{"url":"https://api.github.com/repos/FRRouting/frr/issues/comments/414529474","html_url":"https://github.com/FRRouting/frr/pull/2850#issuecomment-414529474","issue_url":"https://api.github.com/repos/FRRouting/frr/issues/2850","id":414529474,"node_id":"MDEyOklzc3VlQ29tbWVudDQxNDUyOTQ3NA==","user":{"login":"donaldsharp","id":10601296,"node_id":"MDQ6VXNlcjEwNjAxMjk2","avatar_url":"https://avatars3.githubusercontent.com/u/10601296?v=4","gravatar_id":"","url":"https://api.github.com/users/donaldsharp","html_url":"https://github.com/donaldsharp","followers_url":"https://api.github.com/users/donaldsharp/followers","following_url":"https://api.github.com/users/donaldsharp/following{/other_user}","gists_url":"https://api.github.com/users/donaldsharp/gists{/gist_id}","starred_url":"https://api.github.com/users/donaldsharp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/donaldsharp/subscriptions","organizations_url":"https://api.github.com/users/donaldsharp/orgs","repos_url":"https://api.github.com/users/donaldsharp/repos","events_url":"https://api.github.com/users/donaldsharp/events{/privacy}","received_events_url":"https://api.github.com/users/donaldsharp/received_events","type":"User","site_admin":false},"created_at":"2018-08-21T02:29:45Z","updated_at":"2018-08-21T02:29:45Z","author_association":"MEMBER","body":"Once Whitespace changes and the commit subject line have been fixed, I'll push in"}}
{"actor":{"display_login":"donaldsharp"}}