- * This function stores a public key in whatever storage mechanism we are
- * using. intrans indicates if we're already in a transaction so don't
- * need to start one. update indicates if the key already exists and is
- * just being updated.
+ * This function deletes a public key from whatever storage mechanism we
+ * are using. Returns 0 if the key existed.
+ */
+ int (*delete_key)(uint64_t keyid, bool intrans);
+
+/**
+ * @brief Trys to find the keys that contain the supplied text.
+ * @param search The text to search for.
+ * @param publickey A pointer to a structure to return the key in.
+ *
+ * This function searches for the supplied text and returns the keys that
+ * contain it.
+ */
+ int (*fetch_key_text)(const char *search,
+ struct openpgp_publickey **publickey);
+
+/**
+ * @brief Tries to find the keys from an SKS hash
+ * @param hash The hash to search for.
+ * @param publickey A pointer to a structure to return the key in.