Make ReqInfo concurrency safe (#15204)

Some read/writes of ReqInfo did not get appropriate locks, leading to races.

Make sure reading and writing holds appropriate locks.
This commit is contained in:
Klaus Post
2022-06-30 10:48:50 -07:00
committed by GitHub
parent 8856a2d77b
commit 9004d69c6f
5 changed files with 11 additions and 6 deletions
+2 -1
View File
@@ -149,7 +149,6 @@ func GetAuditEntry(ctx context.Context) *audit.Entry {
DeploymentID: xhttp.GlobalDeploymentID,
Time: time.Now().UTC(),
}
SetAuditEntry(ctx, r)
return r
}
return nil
@@ -168,6 +167,8 @@ func AuditLog(ctx context.Context, w http.ResponseWriter, r *http.Request, reqCl
if reqInfo == nil {
return
}
reqInfo.RLock()
defer reqInfo.RUnlock()
entry = audit.ToEntry(w, r, reqClaims, xhttp.GlobalDeploymentID)
// indicates all requests for this API call are inbound