{"action":"created","issue":{"url":"https://api.github.com/repos/pfalcon/uzlib/issues/10","repository_url":"https://api.github.com/repos/pfalcon/uzlib","labels_url":"https://api.github.com/repos/pfalcon/uzlib/issues/10/labels{/name}","comments_url":"https://api.github.com/repos/pfalcon/uzlib/issues/10/comments","events_url":"https://api.github.com/repos/pfalcon/uzlib/issues/10/events","html_url":"https://github.com/pfalcon/uzlib/pull/10","id":320662062,"number":10,"title":"Fix various crashes found by afl-fuzz","user":{"login":"jepler","id":1517291,"avatar_url":"https://avatars0.githubusercontent.com/u/1517291?v=4","gravatar_id":"","url":"https://api.github.com/users/jepler","html_url":"https://github.com/jepler","followers_url":"https://api.github.com/users/jepler/followers","following_url":"https://api.github.com/users/jepler/following{/other_user}","gists_url":"https://api.github.com/users/jepler/gists{/gist_id}","starred_url":"https://api.github.com/users/jepler/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jepler/subscriptions","organizations_url":"https://api.github.com/users/jepler/orgs","repos_url":"https://api.github.com/users/jepler/repos","events_url":"https://api.github.com/users/jepler/events{/privacy}","received_events_url":"https://api.github.com/users/jepler/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":9,"created_at":"2018-05-07T03:21:02Z","updated_at":"2018-05-20T13:27:09Z","closed_at":null,"author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/pfalcon/uzlib/pulls/10","html_url":"https://github.com/pfalcon/uzlib/pull/10","diff_url":"https://github.com/pfalcon/uzlib/pull/10.diff","patch_url":"https://github.com/pfalcon/uzlib/pull/10.patch"},"body":"This set of changes fixes all the crashes afl-fuzz has found for me.\r\n\r\nHowever, without a testsuite of inputs, it's tough to say whether it introduces any regressions.\r\nI only tested on a single file, the GPL-3 license compressed by gnu gzip -9.\r\n```\r\n80d2ed30aa2c2f34cebc4cb05eac1095  GPL-3.gz\r\nd32239bcb673463ab874e80d47fae504  GPL-3\r\n```\r\nand checked that after each commit, the decompression by tgunzip was the same as the original.\r\n\r\nI particularly expect you will not be excited about the part that uses setjmp/longjmp.  Please let me know how you'd like me to rework that portion.  I tried making that code always return a fixed value (e.g., 0x00 or 0xff) but this led to decompressions going on \"forever\", where afl-fuzz defines \"forever\" as \"1000ms\"."},"comment":{"url":"https://api.github.com/repos/pfalcon/uzlib/issues/comments/390483279","html_url":"https://github.com/pfalcon/uzlib/pull/10#issuecomment-390483279","issue_url":"https://api.github.com/repos/pfalcon/uzlib/issues/10","id":390483279,"user":{"login":"pfalcon","id":500451,"avatar_url":"https://avatars3.githubusercontent.com/u/500451?v=4","gravatar_id":"","url":"https://api.github.com/users/pfalcon","html_url":"https://github.com/pfalcon","followers_url":"https://api.github.com/users/pfalcon/followers","following_url":"https://api.github.com/users/pfalcon/following{/other_user}","gists_url":"https://api.github.com/users/pfalcon/gists{/gist_id}","starred_url":"https://api.github.com/users/pfalcon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pfalcon/subscriptions","organizations_url":"https://api.github.com/users/pfalcon/orgs","repos_url":"https://api.github.com/users/pfalcon/repos","events_url":"https://api.github.com/users/pfalcon/events{/privacy}","received_events_url":"https://api.github.com/users/pfalcon/received_events","type":"User","site_admin":false},"created_at":"2018-05-20T13:27:09Z","updated_at":"2018-05-20T13:27:09Z","author_association":"OWNER","body":"Quick size check:\r\n\r\nbefore (unmodified code in master):\r\n~~~\r\n   text\t   data\t    bss\t    dec\t    hex\tfilename\r\n   2745\t      0\t      0\t   2745\t    ab9\ttinflate.o\r\n~~~\r\n\r\nafter:\r\n~~~\r\n   text\t   data\t    bss\t    dec\t    hex\tfilename\r\n   2719\t      0\t      0\t   2719\t    a9f\ttinflate.o\r\n~~~\r\n"}}
{"actor":{"display_login":"pfalcon"}}