Fix panic when uploading keys (#1203)

We don't return OTK counts when the client doesn't upload OTKs.
This commit is contained in:
Kegsay 2020-07-15 15:26:04 +01:00 committed by GitHub
parent 84387e5249
commit df8d6823ee
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -82,10 +82,15 @@ func UploadKeys(req *http.Request, keyAPI api.KeyInternalAPI, device *userapi.De
JSON: uploadRes.KeyErrors, JSON: uploadRes.KeyErrors,
} }
} }
keyCount := make(map[string]int)
// we only return key counts when the client uploads OTKs
if len(uploadRes.OneTimeKeyCounts) > 0 {
keyCount = uploadRes.OneTimeKeyCounts[0].KeyCount
}
return util.JSONResponse{ return util.JSONResponse{
Code: 200, Code: 200,
JSON: struct { JSON: struct {
OTKCounts interface{} `json:"one_time_key_counts"` OTKCounts interface{} `json:"one_time_key_counts"`
}{uploadRes.OneTimeKeyCounts[0].KeyCount}, }{keyCount},
} }
} }