{"push_id":3034642647,"size":16,"distinct_size":16,"ref":"refs/heads/flow_layer","head":"0a74b5528ca15b21fdae93effe6d21038b069739","before":"62505689740c419bb91e83b1d08fe3be58e46d09","commits":[{"sha":"f0dd1224b1c94d751d1020eb6453fb9e27597d23","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Add a new REFLECT layer to WinDivert (see #156).\n\nAdds a new REFLECT layer for monitoring WinDivert\nhandles.  This includes:\n- three new REFLECT events: ESTABLISHED, OPEN and\n  CLOSE;\n- modifying the ADDRESS for REFLECT data:\n  open time, process-id, layer, flags, and\n  priority of the opened handle; and\n- allowing WinDivertRecv() to read a\n  representation of the opened filter.\n\nThis change also includes a new \"object\"\nrepresentation for WinDivert filter strings.\nThe API has been updated as follows:\n- WinDivertHelperCompileFilter (replaces\n  CheckFilter) compiles filter strings into the\n  object form; and\n- WinDivertHelperFormatFilter can \"decompile\" an\n  object back into a human-readable filter\n  string.\n\nOther:\n- New NO_INSTALL flag.\n- New windivertctl.exe sample program.","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/f0dd1224b1c94d751d1020eb6453fb9e27597d23"},{"sha":"2ab1ddf1d2542be8753308c874c99e0a00e5945e","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Make it possible to filter based on events.\n\nE.g., \"event == FLOW_ESTABLISHED\".","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/2ab1ddf1d2542be8753308c874c99e0a00e5945e"},{"sha":"fd75e6d42af895ebcb28a9676828098af0dd0b83","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Add a new SOCKET layer to WinDivert (see #156).\n\nAdds a new SOCKET layer for monitoring socket\nevents, such as BIND, LISTEN, CONNECT,\nand ACCEPT.  These events occur before the\nflow is established (and unlike the FLOW layer)\nit is possible to block/drop SOCKET events.\n\nOtherwise, this layer is very similar to the\nFLOW layer, so the PID is available and injection\nis not possible.  This commit should be\nconsidered to be a WIP.\n\nOther changes:\n- New socketdump.exe sample.  Prints socket\n  events.\n- Improve IPv6 address parsing.\n- New helper functions:\n  * WinDivertHelperFormatIPv4Address\n  * WinDivertHelperFormatIPv6Address\n- Fix REFLECT bugs.\n- The network 5-tuple can now be accessed at\n  the NETWORK layer.\n- Various cleanups.","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/fd75e6d42af895ebcb28a9676828098af0dd0b83"},{"sha":"5aa4fc3c4622da87e1b70277d2fd4857845fbc3c","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Enable NX flag for MmGetSystemAddressForMdlSafe.\n\nSee discussion in #128.","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/5aa4fc3c4622da87e1b70277d2fd4857845fbc3c"},{"sha":"34e8f96910dfc6a35dbdbad08942e2e8e8f29dc5","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Consistent naming for DATA structs.","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/34e8f96910dfc6a35dbdbad08942e2e8e8f29dc5"},{"sha":"86db54b400206cb0961c8447faf10fa4f9527ef2","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Move pseduo checksum calculation inside driver.\n\nThis means WinDivertSend() no longer needs to\nmodify the packet and address buffers.  See #134.","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/86db54b400206cb0961c8447faf10fa4f9527ef2"},{"sha":"316765aa929df04d3bec7d554be079d7b1ebf9a6","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Fix impostor packet checksums.","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/316765aa929df04d3bec7d554be079d7b1ebf9a6"},{"sha":"de4245f95e30bb36f20e3197ddf52b09b125735a","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Event & REFLECT layer fixes.\n\n- Make event bitwise-OR-able.\n- Simplify event names.\n- Fix REFLECT serialization.\n  (setting AutomaticSerialization=TRUE does not\n   work.)\n- Preallocate REFLECT memory.","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/de4245f95e30bb36f20e3197ddf52b09b125735a"},{"sha":"fc868feb3e108c7e3ed41173005db3da169b2094","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Add type-safe get-fixed-val routines.\n\nThis prevents possible bsods when values are\nmissing.  Also add missing windivert_shared.c\nfile.","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/fc868feb3e108c7e3ed41173005db3da169b2094"},{"sha":"3966ec12872590be86588d5e6f0df65be0afdefd","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Add a WINDIVERT_FLAG_PARTIAL flag.\n\nThis suppresses ERROR_INSUFFICIENT_BUFFER errors\nif the passed buffer is too small.  Applications\ncan set this flag if they want to do partial\nreads.","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/3966ec12872590be86588d5e6f0df65be0afdefd"},{"sha":"4f7ff8866483ce624d3fb4e28e30edcc431e13a2","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Add batched recv/send to WinDivert (#156).\n\nThis change allows multiple packets to be\nreceived/sent at once, reducing overheads.  To\nexploit this feature, applications need to use\nthe WinDivertRecvEx()/WinDivertSendEx()\nfunctions with the new addrLen parameter.  The\npassthru example has been modified to use\nbatching.\n\nThe DEBUG flag has been retired since it\nconflicts with batching, and was not very\nuseful anyway.","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/4f7ff8866483ce624d3fb4e28e30edcc431e13a2"},{"sha":"1ccf4861322bed3b18c2405ed9aab313bd9bdd0b","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Calculate full checksums for reinjected packets.","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/1ccf4861322bed3b18c2405ed9aab313bd9bdd0b"},{"sha":"3e40705178482c9f7a94e411e814b1ee3d89484a","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Fix address formatting in sample programs.","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/3e40705178482c9f7a94e411e814b1ee3d89484a"},{"sha":"33a461eef66ca823f4eb134acda50f23f18d734d","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Add packet/payload matching to WinDivert (#156).\n\nAdds the follow terms to the filter language:\n- packet[idx]: 8bit packet value at idx.\n- packet16[idx]: 16bit packet value at idx.\n- packet32[idx]: 32bit packet value at idx.\n- PROTO.Payload[idx]: 8bit payload value at idx.\n- PROTO.Payload16[idx]: 16bit payload value at\n  idx.\n- PROTO.Payload32[idx]: 32bit payload value at\n  idx.\nwhere PROTO is {tcp,udp}.\n\n16 and 32bit values assume network byte ordering.\n\nThe index may be:\n- An undecorated integer, in which case the\n  packet or payload is treated as a 8/16/32bit\n  value array, similar to C arrays.\n- A 'b' decorated integer, (e.g, packet32[17b]),\n  in which case the integer is interpreted as a\n  byte offset.\n- A negative (un)decorated integer, in which\n  case indexing begins at the *end* of the\n  packet or payload.  E.g., packet32[-1] is the\n  last 32bits of the packet.\n\nIf the index is out-of-bounds, then the test\nis deemed to be equivalent to \"false\".","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/33a461eef66ca823f4eb134acda50f23f18d734d"},{"sha":"084c78e4afd0c2d838dc5f70292622bd219f2f6f","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Code cleanup & improve const correctness in API.","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/084c78e4afd0c2d838dc5f70292622bd219f2f6f"},{"sha":"0a74b5528ca15b21fdae93effe6d21038b069739","author":{"name":"basil00","email":"7377ba3671fcd8c2e6decf7bf5becdaa92ba73dc@reqrypt.org"},"message":"Update driver and inf version information.","distinct":true,"url":"https://api.github.com/repos/galeksandrp/Divert/commits/0a74b5528ca15b21fdae93effe6d21038b069739"}]}
{"actor":{"display_login":"galeksandrp"}}