mirror of
https://github.com/aljazceru/lightning.git
synced 2026-02-04 05:34:22 +01:00
wallet: Add primitive to store htlc_sigs in the database
Signed-off-by: Christian Decker <decker.christian@gmail.com>
This commit is contained in:
@@ -1495,3 +1495,21 @@ wallet_payment_list(const tal_t *ctx,
|
||||
|
||||
return payments;
|
||||
}
|
||||
|
||||
void wallet_htlc_sigs_save(struct wallet *w, u64 channel_id,
|
||||
secp256k1_ecdsa_signature *htlc_sigs)
|
||||
{
|
||||
/* Clear any existing HTLC sigs for this channel */
|
||||
sqlite3_stmt *stmt =
|
||||
db_prepare(w->db, "DELETE FROM htlc_sigs WHERE channelid = ?");
|
||||
sqlite3_bind_int64(stmt, 1, channel_id);
|
||||
db_exec_prepared(w->db, stmt);
|
||||
|
||||
/* Now insert the new ones */
|
||||
for (size_t i=0; i<tal_count(htlc_sigs); i++) {
|
||||
stmt = db_prepare(w->db, "INSERT INTO htlc_sigs (channelid, signature) VALUES (?, ?)");
|
||||
sqlite3_bind_int64(stmt, 1, channel_id);
|
||||
sqlite3_bind_signature(stmt, 2, &htlc_sigs[i]);
|
||||
db_exec_prepared(w->db, stmt);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -619,4 +619,9 @@ const struct wallet_payment **wallet_payment_list(const tal_t *ctx,
|
||||
struct wallet *wallet,
|
||||
const struct sha256 *payment_hash);
|
||||
|
||||
/**
|
||||
* wallet_htlc_sigs_save - Store the latest HTLC sigs for the channel
|
||||
*/
|
||||
void wallet_htlc_sigs_save(struct wallet *w, u64 channel_id,
|
||||
secp256k1_ecdsa_signature *htlc_sigs);
|
||||
#endif /* WALLET_WALLET_H */
|
||||
|
||||
Reference in New Issue
Block a user