{"action":"created","issue":{"url":"https://api.github.com/repos/pwndbg/pwndbg/issues/139","repository_url":"https://api.github.com/repos/pwndbg/pwndbg","labels_url":"https://api.github.com/repos/pwndbg/pwndbg/issues/139/labels{/name}","comments_url":"https://api.github.com/repos/pwndbg/pwndbg/issues/139/comments","events_url":"https://api.github.com/repos/pwndbg/pwndbg/issues/139/events","html_url":"https://github.com/pwndbg/pwndbg/pull/139","id":193367714,"number":139,"title":"Ida pro rpc config","user":{"login":"disconnect3d","id":10009354,"avatar_url":"https://avatars.githubusercontent.com/u/10009354?v=3","gravatar_id":"","url":"https://api.github.com/users/disconnect3d","html_url":"https://github.com/disconnect3d","followers_url":"https://api.github.com/users/disconnect3d/followers","following_url":"https://api.github.com/users/disconnect3d/following{/other_user}","gists_url":"https://api.github.com/users/disconnect3d/gists{/gist_id}","starred_url":"https://api.github.com/users/disconnect3d/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/disconnect3d/subscriptions","organizations_url":"https://api.github.com/users/disconnect3d/orgs","repos_url":"https://api.github.com/users/disconnect3d/repos","events_url":"https://api.github.com/users/disconnect3d/events{/privacy}","received_events_url":"https://api.github.com/users/disconnect3d/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2016-12-04T18:54:03Z","updated_at":"2016-12-05T18:58:24Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/pwndbg/pwndbg/pulls/139","html_url":"https://github.com/pwndbg/pwndbg/pull/139","diff_url":"https://github.com/pwndbg/pwndbg/pull/139.diff","patch_url":"https://github.com/pwndbg/pwndbg/pull/139.patch"},"body":"**NOTE: This is still WIP (work in progress). I have added it here just to be able to discuss some changes if it is required.**\r\n\r\nNOTE 2: It is good to review this PR commit by commit instead of reviewing all changes at once. The main reason is that it contains commits that does refactoring and imports optimization (fired from PyCharm IDE, which is more or less valid with pep8 style guide).\r\n\r\nQuestions:\r\n1. I have added some verbosity if the Ida Pro xmlrpc connection failed or not in [pwndbg/ida.py:55-59](https://github.com/pwndbg/pwndbg/compare/master...disconnect3d:ida_pro_rpc_config#diff-ba15fea58a532436f4e9caa040736272R55). However this seems to spam at gdb startup:\r\n```\r\ndc@dc:/d/pwndbg$ gdb /bin/ls --quiet\r\nPwndbg failed to connect to Ida Pro xmlrpc: http://127.0.0.1:8888\r\nPwndbg failed to connect to Ida Pro xmlrpc: http://127.0.0.1:8888\r\nPwndbg failed to connect to Ida Pro xmlrpc: http://127.0.0.1:8888\r\nLoaded 96 commands.  Type pwndbg [filter] for a list.\r\nReading symbols from /bin/ls...(no debugging symbols found)...done.\r\npwndbg> \r\n```\r\nMaybe we should add a command `ida_connect` or `connect_ida` - with host/port argument and/or setting to automatically connect on startup. What do you think?\r\n\r\n2) Is firing reformat/imports optimization fine? We might also start using a code linter (e.g. pylint) on the CI and lint the files that has been changed by particular PR. On the other side it might be a little bit overkill or an obstacle for people who just want to fix/add something and don't really care about purity/clean code.\r\n "},"comment":{"url":"https://api.github.com/repos/pwndbg/pwndbg/issues/comments/264943080","html_url":"https://github.com/pwndbg/pwndbg/pull/139#issuecomment-264943080","issue_url":"https://api.github.com/repos/pwndbg/pwndbg/issues/139","id":264943080,"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},"created_at":"2016-12-05T18:58:24Z","updated_at":"2016-12-05T18:58:24Z","body":"I think it may also be useful to add a command e.g. `ida` which dumps `ida_script.py` to some temporary file, with the host / port stuff filled in from the config options.\r\n\r\nIt can also emit a simple command to copy/paste into the IDA interpreter, e.g. `execfile(\"/path/to/idascript\", globals())` which should make cut-paste easier.\r\n\r\nAlso the unit tests look to be failing due to import order."}}
{"actor":{"display_login":"zachriggle"}}