{"action":"created","comment":{"url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/pulls/comments/49111071","id":49111071,"diff_hunk":"@@ -255,6 +265,33 @@ void cPluginSatip::ParseServer(const char *paramP)\n   FREE_POINTER(p);\n }\n \n+void cPluginSatip::ParsePortRange(const char *paramP)\n+{\n+  char *s, *p = skipspace(paramP);\n+  char *r = strtok_r(p, \"-\", &s);\n+  unsigned int rangeStart = 0;\n+  unsigned int rangeStop = 0;\n+  if (r) {\n+     rangeStart = strtol(r, NULL, 0);\n+     r = strtok_r(NULL, \"-\", &s);\n+     }\n+  if (r) {\n+     rangeStop = strtol(r, NULL, 0);\n+     }\n+  else {\n+     error(\"Portrange argument not valid [%s]\", paramP);\n+     rangeStart = 0;\n+     rangeStop = 0;\n+     }\n+  if (rangeStop - rangeStart < deviceCountM * 2) {","path":"satip.c","position":76,"original_position":76,"commit_id":"9b7ebb1363fdf24b0349ef68ff16148bbeed86e3","original_commit_id":"9b7ebb1363fdf24b0349ef68ff16148bbeed86e3","user":{"login":"rofafor","id":9297850,"avatar_url":"https://avatars.githubusercontent.com/u/9297850?v=3","gravatar_id":"","url":"https://api.github.com/users/rofafor","html_url":"https://github.com/rofafor","followers_url":"https://api.github.com/users/rofafor/followers","following_url":"https://api.github.com/users/rofafor/following{/other_user}","gists_url":"https://api.github.com/users/rofafor/gists{/gist_id}","starred_url":"https://api.github.com/users/rofafor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rofafor/subscriptions","organizations_url":"https://api.github.com/users/rofafor/orgs","repos_url":"https://api.github.com/users/rofafor/repos","events_url":"https://api.github.com/users/rofafor/events{/privacy}","received_events_url":"https://api.github.com/users/rofafor/received_events","type":"User","site_admin":false},"body":"Off-by-one bug: 2 devices and range 10-13 (4 ports) produces too small port range error, although it should be just fine.","created_at":"2016-01-07T19:01:10Z","updated_at":"2016-01-07T19:01:10Z","html_url":"https://github.com/rofafor/vdr-plugin-satip/pull/16#discussion_r49111071","pull_request_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/pulls/16","_links":{"self":{"href":"https://api.github.com/repos/rofafor/vdr-plugin-satip/pulls/comments/49111071"},"html":{"href":"https://github.com/rofafor/vdr-plugin-satip/pull/16#discussion_r49111071"},"pull_request":{"href":"https://api.github.com/repos/rofafor/vdr-plugin-satip/pulls/16"}}},"pull_request":{"url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/pulls/16","id":55343187,"html_url":"https://github.com/rofafor/vdr-plugin-satip/pull/16","diff_url":"https://github.com/rofafor/vdr-plugin-satip/pull/16.diff","patch_url":"https://github.com/rofafor/vdr-plugin-satip/pull/16.patch","issue_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/issues/16","number":16,"state":"open","locked":false,"title":"Make it possible to specify the rtp and rtcp ports","user":{"login":"chriszero","id":613238,"avatar_url":"https://avatars.githubusercontent.com/u/613238?v=3","gravatar_id":"","url":"https://api.github.com/users/chriszero","html_url":"https://github.com/chriszero","followers_url":"https://api.github.com/users/chriszero/followers","following_url":"https://api.github.com/users/chriszero/following{/other_user}","gists_url":"https://api.github.com/users/chriszero/gists{/gist_id}","starred_url":"https://api.github.com/users/chriszero/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chriszero/subscriptions","organizations_url":"https://api.github.com/users/chriszero/orgs","repos_url":"https://api.github.com/users/chriszero/repos","events_url":"https://api.github.com/users/chriszero/events{/privacy}","received_events_url":"https://api.github.com/users/chriszero/received_events","type":"User","site_admin":false},"body":"this makes it possible to use the satip through a\r\nNAT (e.g. a docker bridged network)","created_at":"2016-01-07T14:27:05Z","updated_at":"2016-01-07T19:01:10Z","closed_at":null,"merged_at":null,"merge_commit_sha":"4c28c9023ff7a46d85d5981a71ecbea2cc03b5e6","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/pulls/16/commits","review_comments_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/pulls/16/comments","review_comment_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/pulls/comments{/number}","comments_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/issues/16/comments","statuses_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/statuses/9b7ebb1363fdf24b0349ef68ff16148bbeed86e3","head":{"label":"chriszero:master","ref":"master","sha":"9b7ebb1363fdf24b0349ef68ff16148bbeed86e3","user":{"login":"chriszero","id":613238,"avatar_url":"https://avatars.githubusercontent.com/u/613238?v=3","gravatar_id":"","url":"https://api.github.com/users/chriszero","html_url":"https://github.com/chriszero","followers_url":"https://api.github.com/users/chriszero/followers","following_url":"https://api.github.com/users/chriszero/following{/other_user}","gists_url":"https://api.github.com/users/chriszero/gists{/gist_id}","starred_url":"https://api.github.com/users/chriszero/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chriszero/subscriptions","organizations_url":"https://api.github.com/users/chriszero/orgs","repos_url":"https://api.github.com/users/chriszero/repos","events_url":"https://api.github.com/users/chriszero/events{/privacy}","received_events_url":"https://api.github.com/users/chriszero/received_events","type":"User","site_admin":false},"repo":{"id":49011332,"name":"vdr-plugin-satip","full_name":"chriszero/vdr-plugin-satip","owner":{"login":"chriszero","id":613238,"avatar_url":"https://avatars.githubusercontent.com/u/613238?v=3","gravatar_id":"","url":"https://api.github.com/users/chriszero","html_url":"https://github.com/chriszero","followers_url":"https://api.github.com/users/chriszero/followers","following_url":"https://api.github.com/users/chriszero/following{/other_user}","gists_url":"https://api.github.com/users/chriszero/gists{/gist_id}","starred_url":"https://api.github.com/users/chriszero/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chriszero/subscriptions","organizations_url":"https://api.github.com/users/chriszero/orgs","repos_url":"https://api.github.com/users/chriszero/repos","events_url":"https://api.github.com/users/chriszero/events{/privacy}","received_events_url":"https://api.github.com/users/chriszero/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/chriszero/vdr-plugin-satip","description":"SAT>IP plugin for the Video Disk Recorder (VDR)","fork":true,"url":"https://api.github.com/repos/chriszero/vdr-plugin-satip","forks_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/forks","keys_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/keys{/key_id}","collaborators_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/teams","hooks_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/hooks","issue_events_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/issues/events{/number}","events_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/events","assignees_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/assignees{/user}","branches_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/branches{/branch}","tags_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/tags","blobs_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/git/refs{/sha}","trees_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/git/trees{/sha}","statuses_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/statuses/{sha}","languages_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/languages","stargazers_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/stargazers","contributors_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/contributors","subscribers_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/subscribers","subscription_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/subscription","commits_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/commits{/sha}","git_commits_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/git/commits{/sha}","comments_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/comments{/number}","issue_comment_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/issues/comments{/number}","contents_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/contents/{+path}","compare_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/compare/{base}...{head}","merges_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/merges","archive_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/downloads","issues_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/issues{/number}","pulls_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/pulls{/number}","milestones_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/milestones{/number}","notifications_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/labels{/name}","releases_url":"https://api.github.com/repos/chriszero/vdr-plugin-satip/releases{/id}","created_at":"2016-01-04T17:11:24Z","updated_at":"2016-01-04T17:11:25Z","pushed_at":"2016-01-07T18:35:35Z","git_url":"git://github.com/chriszero/vdr-plugin-satip.git","ssh_url":"git@github.com:chriszero/vdr-plugin-satip.git","clone_url":"https://github.com/chriszero/vdr-plugin-satip.git","svn_url":"https://github.com/chriszero/vdr-plugin-satip","homepage":"http://www.saunalahti.fi/~rahrenbe/vdr/satip/","size":449,"stargazers_count":0,"watchers_count":0,"language":"C","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"rofafor:master","ref":"master","sha":"6e9b43b0d80479dcd2ff50df8099b8a97cec9036","user":{"login":"rofafor","id":9297850,"avatar_url":"https://avatars.githubusercontent.com/u/9297850?v=3","gravatar_id":"","url":"https://api.github.com/users/rofafor","html_url":"https://github.com/rofafor","followers_url":"https://api.github.com/users/rofafor/followers","following_url":"https://api.github.com/users/rofafor/following{/other_user}","gists_url":"https://api.github.com/users/rofafor/gists{/gist_id}","starred_url":"https://api.github.com/users/rofafor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rofafor/subscriptions","organizations_url":"https://api.github.com/users/rofafor/orgs","repos_url":"https://api.github.com/users/rofafor/repos","events_url":"https://api.github.com/users/rofafor/events{/privacy}","received_events_url":"https://api.github.com/users/rofafor/received_events","type":"User","site_admin":false},"repo":{"id":26374050,"name":"vdr-plugin-satip","full_name":"rofafor/vdr-plugin-satip","owner":{"login":"rofafor","id":9297850,"avatar_url":"https://avatars.githubusercontent.com/u/9297850?v=3","gravatar_id":"","url":"https://api.github.com/users/rofafor","html_url":"https://github.com/rofafor","followers_url":"https://api.github.com/users/rofafor/followers","following_url":"https://api.github.com/users/rofafor/following{/other_user}","gists_url":"https://api.github.com/users/rofafor/gists{/gist_id}","starred_url":"https://api.github.com/users/rofafor/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rofafor/subscriptions","organizations_url":"https://api.github.com/users/rofafor/orgs","repos_url":"https://api.github.com/users/rofafor/repos","events_url":"https://api.github.com/users/rofafor/events{/privacy}","received_events_url":"https://api.github.com/users/rofafor/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/rofafor/vdr-plugin-satip","description":"SAT>IP plugin for the Video Disk Recorder (VDR)","fork":false,"url":"https://api.github.com/repos/rofafor/vdr-plugin-satip","forks_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/forks","keys_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/teams","hooks_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/hooks","issue_events_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/issues/events{/number}","events_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/events","assignees_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/assignees{/user}","branches_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/branches{/branch}","tags_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/tags","blobs_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/git/refs{/sha}","trees_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/statuses/{sha}","languages_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/languages","stargazers_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/stargazers","contributors_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/contributors","subscribers_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/subscribers","subscription_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/subscription","commits_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/commits{/sha}","git_commits_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/git/commits{/sha}","comments_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/comments{/number}","issue_comment_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/issues/comments{/number}","contents_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/contents/{+path}","compare_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/merges","archive_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/downloads","issues_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/issues{/number}","pulls_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/pulls{/number}","milestones_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/milestones{/number}","notifications_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/labels{/name}","releases_url":"https://api.github.com/repos/rofafor/vdr-plugin-satip/releases{/id}","created_at":"2014-11-08T20:42:32Z","updated_at":"2015-05-26T14:21:31Z","pushed_at":"2016-01-07T18:35:35Z","git_url":"git://github.com/rofafor/vdr-plugin-satip.git","ssh_url":"git@github.com:rofafor/vdr-plugin-satip.git","clone_url":"https://github.com/rofafor/vdr-plugin-satip.git","svn_url":"https://github.com/rofafor/vdr-plugin-satip","homepage":"http://www.saunalahti.fi/~rahrenbe/vdr/satip/","size":439,"stargazers_count":6,"watchers_count":6,"language":"C","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":5,"mirror_url":null,"open_issues_count":2,"forks":5,"open_issues":2,"watchers":6,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/rofafor/vdr-plugin-satip/pulls/16"},"html":{"href":"https://github.com/rofafor/vdr-plugin-satip/pull/16"},"issue":{"href":"https://api.github.com/repos/rofafor/vdr-plugin-satip/issues/16"},"comments":{"href":"https://api.github.com/repos/rofafor/vdr-plugin-satip/issues/16/comments"},"review_comments":{"href":"https://api.github.com/repos/rofafor/vdr-plugin-satip/pulls/16/comments"},"review_comment":{"href":"https://api.github.com/repos/rofafor/vdr-plugin-satip/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/rofafor/vdr-plugin-satip/pulls/16/commits"},"statuses":{"href":"https://api.github.com/repos/rofafor/vdr-plugin-satip/statuses/9b7ebb1363fdf24b0349ef68ff16148bbeed86e3"}}}}