)]}' { "commit": "23edec0b383afbf83bd3e94309cfe09a01a68a99", "tree": "66480e6176537fcde31fe716ab00487658475db5", "parents": [ "f495dc37d5f5cc59ca73af6acbbe0a741559792b" ], "author": { "name": "Bryan C. Mills", "email": "bcmills@google.com", "time": "Mon Dec 12 11:38:31 2022 -0500" }, "committer": { "name": "Gopher Robot", "email": "gobot@golang.org", "time": "Mon Dec 12 22:32:12 2022 +0000" }, "message": "ssh: ensure that handshakeTransport goroutines have finished before Close returns\n\nThis fixes a data race in the tests for x/crypto/ssh, which expects to\nbe able to examine a transport\u0027s read and write counters without\nlocking after closing it.\n\n(Given the number of goroutines, channels, and mutexes used in this\npackage, I wouldn\u0027t be surprised if other concurrency bugs remain.\nI would suggest simplifying the concurrency in this package, but I\ndon\u0027t intend to follow up on that myself at the moment.)\n\nFixes golang/go#56957.\n\nChange-Id: Ib1f1390b66707c66a3608e48f3f52483cff3c1f5\nReviewed-on: https://go-review.googlesource.com/c/crypto/+/456758\nReviewed-by: Roland Shoemaker \u003croland@golang.org\u003e\nTryBot-Result: Gopher Robot \u003cgobot@golang.org\u003e\nAuto-Submit: Bryan Mills \u003cbcmills@google.com\u003e\nRun-TryBot: Bryan Mills \u003cbcmills@google.com\u003e\n", "tree_diff": [ { "type": "modify", "old_id": "2b84c35716c253b638c1439741563642414c6630", "old_mode": 33188, "old_path": "ssh/handshake.go", "new_id": "07a1843e0a52f868f225024ee0378aa3ffa38364", "new_mode": 33188, "new_path": "ssh/handshake.go" } ] }