Don't give up so quickly on errors

This commit is contained in:
Neil Alexander 2021-07-30 10:50:49 +01:00
parent ddb60859b7
commit efe01519a2
No known key found for this signature in database
GPG key ID: A02A2019A2BB0944
2 changed files with 4 additions and 8 deletions

View file

@ -240,12 +240,12 @@ func (a *KeyInternalAPI) processOtherSignatures(
func (a *KeyInternalAPI) crossSigningKeys(
ctx context.Context, req *api.QueryKeysRequest, res *api.QueryKeysResponse,
) error {
) {
for userID := range req.UserToDevices {
keys, err := a.DB.CrossSigningKeysForUser(ctx, userID)
if err != nil {
logrus.WithError(err).Errorf("Failed to get cross-signing keys for user %q", userID)
return fmt.Errorf("a.DB.CrossSigningKeysForUser (%q): %w", userID, err)
continue
}
for keyType, keyData := range keys {
@ -264,7 +264,7 @@ func (a *KeyInternalAPI) crossSigningKeys(
sigs, err := a.DB.CrossSigningSigsForTarget(ctx, userID, keyID)
if err != nil {
logrus.WithError(err).Errorf("Failed to get cross-signing signatures for user %q key %q", userID, keyID)
return fmt.Errorf("a.DB.CrossSigningSigsForTarget (%q key %q): %w", userID, keyID, err)
continue
}
appendSignature := func(originUserID string, originKeyID gomatrixserverlib.KeyID, signature gomatrixserverlib.Base64Bytes) {
@ -303,6 +303,4 @@ func (a *KeyInternalAPI) crossSigningKeys(
}
}
}
return nil
}

View file

@ -227,9 +227,7 @@ func (a *KeyInternalAPI) QueryKeys(ctx context.Context, req *api.QueryKeysReques
res.Failures = make(map[string]interface{})
// get cross-signing keys from the database
if err := a.crossSigningKeys(ctx, req, res); err != nil {
util.GetLogger(ctx).WithError(err).Error("Failed to retrieve cross-signing keys from database")
}
a.crossSigningKeys(ctx, req, res)
// make a map from domain to device keys
domainToDeviceKeys := make(map[string]map[string][]string)