@@ -32,20 +32,15 @@ const selectCrossSigningKeysForUserSQL = "" +
3232 "SELECT key_type, key_data FROM keyserver_cross_signing_keys" +
3333 " WHERE user_id = $1"
3434
35- const selectCrossSigningKeysForUserAndKeyTypeSQL = "" +
36- "SELECT key_type, key_data FROM keyserver_cross_signing_keys" +
37- " WHERE user_id = $1 AND key_type = $2"
38-
3935const upsertCrossSigningKeysForUserSQL = "" +
4036 "INSERT INTO keyserver_cross_signing_keys (user_id, key_type, key_data)" +
4137 " VALUES($1, $2, $3)" +
4238 " ON CONFLICT (user_id, key_type) DO UPDATE SET key_data = $3"
4339
4440type crossSigningKeysStatements struct {
45- db * sql.DB
46- selectCrossSigningKeysForUserStmt * sql.Stmt
47- selectCrossSigningKeysForUserAndKeyTypeStmt * sql.Stmt
48- upsertCrossSigningKeysForUserStmt * sql.Stmt
41+ db * sql.DB
42+ selectCrossSigningKeysForUserStmt * sql.Stmt
43+ upsertCrossSigningKeysForUserStmt * sql.Stmt
4944}
5045
5146func NewPostgresCrossSigningKeysTable (db * sql.DB ) (tables.CrossSigningKeys , error ) {
@@ -63,7 +58,6 @@ func NewPostgresCrossSigningKeysTable(db *sql.DB) (tables.CrossSigningKeys, erro
6358 }
6459 return s , sqlutil.StatementList {
6560 {& s .selectCrossSigningKeysForUserStmt , selectCrossSigningKeysForUserSQL },
66- {& s .selectCrossSigningKeysForUserAndKeyTypeStmt , selectCrossSigningKeysForUserAndKeyTypeSQL },
6761 {& s .upsertCrossSigningKeysForUserStmt , upsertCrossSigningKeysForUserSQL },
6862 }.Prepare (db )
6963}
@@ -93,35 +87,6 @@ func (s *crossSigningKeysStatements) SelectCrossSigningKeysForUser(
9387 return
9488}
9589
96- func (s * crossSigningKeysStatements ) SelectCrossSigningKeysForUserAndKeyType (
97- ctx context.Context , txn * sql.Tx , userID string , keyType fclient.CrossSigningKeyPurpose ,
98- ) (r types.CrossSigningKeyMap , err error ) {
99- keyTypeInt , ok := types .KeyTypePurposeToInt [keyType ]
100- if ! ok {
101- return nil , fmt .Errorf ("unknown key purpose %q" , keyType )
102- }
103- rows , err := sqlutil .TxStmt (txn , s .selectCrossSigningKeysForUserAndKeyTypeStmt ).QueryContext (ctx , userID , keyTypeInt )
104- if err != nil {
105- return nil , err
106- }
107- defer internal .CloseAndLogIfError (ctx , rows , "SelectCrossSigningKeysForUserAndKeyType: rows.close() failed" )
108- r = types.CrossSigningKeyMap {}
109- for rows .Next () {
110- var keyTypeInt int16
111- var keyData spec.Base64Bytes
112- if err = rows .Scan (& keyTypeInt , & keyData ); err != nil {
113- return nil , err
114- }
115- keyType , ok := types .KeyTypeIntToPurpose [keyTypeInt ]
116- if ! ok {
117- return nil , fmt .Errorf ("unknown key purpose int %d" , keyTypeInt )
118- }
119- r [keyType ] = keyData
120- }
121- err = rows .Err ()
122- return
123- }
124-
12590func (s * crossSigningKeysStatements ) UpsertCrossSigningKeysForUser (
12691 ctx context.Context , txn * sql.Tx , userID string , keyType fclient.CrossSigningKeyPurpose , keyData spec.Base64Bytes ,
12792) error {
0 commit comments