{"push_id":661245804,"size":1,"distinct_size":1,"ref":"refs/heads/master-1.12","head":"afeff4f5d0c51d2394f7c0f00ae1c57ad8cd1ded","before":"ab74ebd958969072c8004fe5e197542f26bc5a58","commits":[{"sha":"afeff4f5d0c51d2394f7c0f00ae1c57ad8cd1ded","author":{"email":"4b8373d016f277527198385ba72fda0feb5da015@lekensteyn.nl","name":"Peter Wu"},"message":"logcat: improve (crash) robustness, improve names\n\nThe logcat version detector would crash with ASAN enabled because it did\nnot validate the payload length and hence a payload length of 0 would\ntrigger out-of-bounds access. (This happened on non-logcat data.)\n\nThis patch tries to get rid of all magic numbers by using a structure,\nimproves the version detector to validate the payload length and\nprevents crashes due to missing nul-terminators in the input. Older\nAndroid kernels would create entries with __pad with random contents, so\nthat cannot be used to determine version for v1. Instead, use heuristics\non the priority, tag and maybe the msg field.\n\nFurthermore, Android is mostly (if not, always?) Little-Endian, so add\nconversions where necessary (just in case WS supports BE arches).\n\n\"microseconds\" has been renamed to \"milliseconds\" because that is what\nthey are, actually. A duplicate logcat_log loop has been refactored\nsuch that one loop is sufficient, instead of separate buffers for each\nlog part, a single one is now used. get_priority does not really need\na pointer, just make it accept a character.\n\nThe output has been validated against v1 and v2 logcat binary formats\nwith __pad (hdr_size) equal to 0, and on attachment 9906.\n\nReviewed-on: https://code.wireshark.org/review/2803\nReviewed-by: Michal Labedzki <michal.labedzki@tieto.com>\nTested-by: Michal Labedzki <michal.labedzki@tieto.com>\n(cherry picked from commit b3b1f7c3aa2233a147294bad833b748d38fba84d)\n\nConflicts:\n\twiretap/logcat.c\n\nChange-Id: I33bb20b5f9a5e03a231121a784bfffdfba0aba98\nReviewed-on: https://code.wireshark.org/review/8346\nReviewed-by: Gerald Combs <gerald@wireshark.org>","distinct":true,"url":"https://api.github.com/repos/wireshark/wireshark/commits/afeff4f5d0c51d2394f7c0f00ae1c57ad8cd1ded"}]}