{"action":"created","issue":{"url":"https://api.github.com/repos/Gallopsled/pwntools/issues/683","repository_url":"https://api.github.com/repos/Gallopsled/pwntools","labels_url":"https://api.github.com/repos/Gallopsled/pwntools/issues/683/labels{/name}","comments_url":"https://api.github.com/repos/Gallopsled/pwntools/issues/683/comments","events_url":"https://api.github.com/repos/Gallopsled/pwntools/issues/683/events","html_url":"https://github.com/Gallopsled/pwntools/issues/683","id":172576307,"number":683,"title":"Capstone/Keystone vs. Binutils","user":{"login":"zachriggle","id":111640,"avatar_url":"https://avatars.githubusercontent.com/u/111640?v=3","gravatar_id":"","url":"https://api.github.com/users/zachriggle","html_url":"https://github.com/zachriggle","followers_url":"https://api.github.com/users/zachriggle/followers","following_url":"https://api.github.com/users/zachriggle/following{/other_user}","gists_url":"https://api.github.com/users/zachriggle/gists{/gist_id}","starred_url":"https://api.github.com/users/zachriggle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zachriggle/subscriptions","organizations_url":"https://api.github.com/users/zachriggle/orgs","repos_url":"https://api.github.com/users/zachriggle/repos","events_url":"https://api.github.com/users/zachriggle/events{/privacy}","received_events_url":"https://api.github.com/users/zachriggle/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/Gallopsled/pwntools/labels/feature","name":"feature","color":"5319e7"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/Gallopsled/pwntools/milestones/3","html_url":"https://github.com/Gallopsled/pwntools/milestones/Someday","labels_url":"https://api.github.com/repos/Gallopsled/pwntools/milestones/3/labels","id":911598,"number":3,"title":"Someday","description":"","creator":{"login":"Idolf","id":4294434,"avatar_url":"https://avatars.githubusercontent.com/u/4294434?v=3","gravatar_id":"","url":"https://api.github.com/users/Idolf","html_url":"https://github.com/Idolf","followers_url":"https://api.github.com/users/Idolf/followers","following_url":"https://api.github.com/users/Idolf/following{/other_user}","gists_url":"https://api.github.com/users/Idolf/gists{/gist_id}","starred_url":"https://api.github.com/users/Idolf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Idolf/subscriptions","organizations_url":"https://api.github.com/users/Idolf/orgs","repos_url":"https://api.github.com/users/Idolf/repos","events_url":"https://api.github.com/users/Idolf/events{/privacy}","received_events_url":"https://api.github.com/users/Idolf/received_events","type":"User","site_admin":false},"open_issues":19,"closed_issues":5,"state":"open","created_at":"2014-12-21T20:18:54Z","updated_at":"2016-09-30T02:08:40Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2016-08-22T23:10:08Z","updated_at":"2016-10-02T04:57:19Z","closed_at":null,"body":"We should investigate using the Capstone disassembler and Keystone assembler, instead of shelling out to Binutils.  This would streamline the installation process for foreign architectures and OSes.\r\n\r\nThis would probably be a major-version-bump type feature, since it likely breaks backward compatibility.\r\n\r\nHowever, we will still have some dependencies on Binutils for generation of fully-functional ELF files -- unless we want to generate those ourselves.  Since the ELFs that we emit are very minimal, this should not be particularly difficult.\r\n\r\nThe biggest thing that we *lose* is that there are no longer symbols to aid shellcode debugging when using `make_elf_from_assembly`.  However, I expect that nobody knew that you could have debugging symbols except me, so that's probably moot point."},"comment":{"url":"https://api.github.com/repos/Gallopsled/pwntools/issues/comments/250953759","html_url":"https://github.com/Gallopsled/pwntools/issues/683#issuecomment-250953759","issue_url":"https://api.github.com/repos/Gallopsled/pwntools/issues/683","id":250953759,"user":{"login":"C0deH4cker","id":1310775,"avatar_url":"https://avatars.githubusercontent.com/u/1310775?v=3","gravatar_id":"","url":"https://api.github.com/users/C0deH4cker","html_url":"https://github.com/C0deH4cker","followers_url":"https://api.github.com/users/C0deH4cker/followers","following_url":"https://api.github.com/users/C0deH4cker/following{/other_user}","gists_url":"https://api.github.com/users/C0deH4cker/gists{/gist_id}","starred_url":"https://api.github.com/users/C0deH4cker/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/C0deH4cker/subscriptions","organizations_url":"https://api.github.com/users/C0deH4cker/orgs","repos_url":"https://api.github.com/users/C0deH4cker/repos","events_url":"https://api.github.com/users/C0deH4cker/events{/privacy}","received_events_url":"https://api.github.com/users/C0deH4cker/received_events","type":"User","site_admin":false},"created_at":"2016-10-02T04:57:19Z","updated_at":"2016-10-02T04:57:19Z","body":"It would be nice to not require cross binutils for doing something common like `asm(shellcraft.sh())` on i386 or arm. Something like creating an ELF could definitely still require binutils if that's easiest (I've never even used that feature before)."}}
{"actor":{"display_login":"C0deH4cker"}}