{"action":"created","issue":{"url":"https://api.github.com/repos/ValveSoftware/steam-for-linux/issues/2028","labels_url":"https://api.github.com/repos/ValveSoftware/steam-for-linux/issues/2028/labels{/name}","comments_url":"https://api.github.com/repos/ValveSoftware/steam-for-linux/issues/2028/comments","events_url":"https://api.github.com/repos/ValveSoftware/steam-for-linux/issues/2028/events","html_url":"https://github.com/ValveSoftware/steam-for-linux/issues/2028","id":11411387,"number":2028,"title":"Steam uses 'execheap' which according to expert ' is really a bad idea'","user":{"login":"abc-mikey","id":2983924,"avatar_url":"https://avatars.githubusercontent.com/u/2983924?v=3","gravatar_id":"","url":"https://api.github.com/users/abc-mikey","html_url":"https://github.com/abc-mikey","followers_url":"https://api.github.com/users/abc-mikey/followers","following_url":"https://api.github.com/users/abc-mikey/following{/other_user}","gists_url":"https://api.github.com/users/abc-mikey/gists{/gist_id}","starred_url":"https://api.github.com/users/abc-mikey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abc-mikey/subscriptions","organizations_url":"https://api.github.com/users/abc-mikey/orgs","repos_url":"https://api.github.com/users/abc-mikey/repos","events_url":"https://api.github.com/users/abc-mikey/events{/privacy}","received_events_url":"https://api.github.com/users/abc-mikey/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ValveSoftware/steam-for-linux/labels/duplicate","name":"duplicate","color":"cccccc"},{"url":"https://api.github.com/repos/ValveSoftware/steam-for-linux/labels/Steam%20client","name":"Steam client","color":"4682b4"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":8,"created_at":"2013-02-26T14:39:54Z","updated_at":"2015-11-21T17:06:11Z","closed_at":"2013-02-26T16:53:52Z","body":"Ulrich Drepper - the lead contributor and maintainer on GNU C - said this about using execheap:\r\n\r\n\"The POSIX specification does not permit it, but the Linux implementation of mprotect allows changing the access protection of memory on the heap (e.g., allocated using malloc). This error indicates that heap memory was supposed to be made executable. Doing this is really a bad idea. If anonymous, executable memory is needed it should be allocated using mmap which is the only portable mechanism.\"\r\n\r\nThere are a couple of articles about it:\r\n\r\nhttp://danwalsh.livejournal.com/6117.html\r\nhttp://www.akkadia.org/drepper/selinux-mem.html\r\n\r\nThe use of execheap is a Linux wide issue, but the issue was reported by SELinux on Fedora 18. #1471 dismissed it as a Fedora issue incorrectly when it in fact affects Ubnutu and all other Linux distributions equally. "},"comment":{"url":"https://api.github.com/repos/ValveSoftware/steam-for-linux/issues/comments/158662464","html_url":"https://github.com/ValveSoftware/steam-for-linux/issues/2028#issuecomment-158662464","issue_url":"https://api.github.com/repos/ValveSoftware/steam-for-linux/issues/2028","id":158662464,"user":{"login":"Ruedii","id":3167721,"avatar_url":"https://avatars.githubusercontent.com/u/3167721?v=3","gravatar_id":"","url":"https://api.github.com/users/Ruedii","html_url":"https://github.com/Ruedii","followers_url":"https://api.github.com/users/Ruedii/followers","following_url":"https://api.github.com/users/Ruedii/following{/other_user}","gists_url":"https://api.github.com/users/Ruedii/gists{/gist_id}","starred_url":"https://api.github.com/users/Ruedii/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Ruedii/subscriptions","organizations_url":"https://api.github.com/users/Ruedii/orgs","repos_url":"https://api.github.com/users/Ruedii/repos","events_url":"https://api.github.com/users/Ruedii/events{/privacy}","received_events_url":"https://api.github.com/users/Ruedii/received_events","type":"User","site_admin":false},"created_at":"2015-11-21T17:06:11Z","updated_at":"2015-11-21T17:06:11Z","body":"43 and 88 should be moved to this bug, not the other way around.\r\n\r\nAs of the bug itself, yes, I agree this is a bad idea.  It impedes porting this to other platforms.\r\n\r\nHowever, I also think since it's not causing any major bugs, it should be very low priority if it is reopened."}}