)]}'
{
  "commit": "1d35b9e2eb4edf581781c7f3e2a36fac701f0a24",
  "tree": "afc863b111683c295c77b19abca28faf30b96ddf",
  "parents": [
    "4abf325e0275e4ef0bdd441dcf497570f1419ab9"
  ],
  "author": {
    "name": "Jason A. Donenfeld",
    "email": "Jason@zx2c4.com",
    "time": "Thu Dec 16 00:02:24 2021 +0100"
  },
  "committer": {
    "name": "Jason Donenfeld",
    "email": "Jason@zx2c4.com",
    "time": "Thu Dec 16 02:10:12 2021 +0000"
  },
  "message": "windows/svc: use NtQuerySystemInformation in IsWindowsService\n\nThis brings the algorithm more exactly in line with what .NET does for\nthe identically named function. Specifically, instead of using\nOpenProcess, which requires rights that restricted services might not\nhave, we use NtQuerySystemInformation(SYSTEM_PROCESS_INFORMATION) to\nfind the parent process image name and session ID.\n\nFixes golang/go#44921.\n\nChange-Id: Ie2ad7521cf4c530037d086e61dbc2413e4e7777c\nReviewed-on: https://go-review.googlesource.com/c/sys/+/372554\nTrust: Jason Donenfeld \u003cJason@zx2c4.com\u003e\nRun-TryBot: Jason Donenfeld \u003cJason@zx2c4.com\u003e\nTryBot-Result: Gopher Robot \u003cgobot@golang.org\u003e\nReviewed-by: Patrik Nyblom \u003cpnyb@google.com\u003e\nTrust: Patrik Nyblom \u003cpnyb@google.com\u003e\nRun-TryBot: Patrik Nyblom \u003cpnyb@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "351d286fb2da01e21696df8ca3144e07d4043050",
      "old_mode": 33188,
      "old_path": "windows/svc/security.go",
      "new_id": "1c51006eabbfd5614f60bf30b33376033b2a301a",
      "new_mode": 33188,
      "new_path": "windows/svc/security.go"
    },
    {
      "type": "modify",
      "old_id": "655447e8f6bd5e704be0926305a74cd39bc3af82",
      "old_mode": 33188,
      "old_path": "windows/types_windows.go",
      "new_id": "bb31abda4167819dc80fcd650229992751942051",
      "new_mode": 33188,
      "new_path": "windows/types_windows.go"
    }
  ]
}
