| 334 | } |
| 335 | |
| 336 | struct node_id *db_col_node_id_arr(const tal_t *ctx, struct db_stmt *stmt, |
| 337 | const char *colname) |
| 338 | { |
| 339 | size_t col = db_query_colnum(stmt, colname); |
| 340 | struct node_id *ret; |
| 341 | size_t n = db_column_bytes(stmt, col) / sizeof(ret->k); |
| 342 | const u8 *arr = db_column_blob(stmt, col); |
| 343 | assert(n * sizeof(ret->k) == (size_t)db_column_bytes(stmt, col)); |
| 344 | ret = tal_arr(ctx, struct node_id, n); |
| 345 | |
| 346 | db_column_null_warn(stmt, colname, col); |
| 347 | for (size_t i = 0; i < n; i++) |
| 348 | memcpy(ret[i].k, arr + i * sizeof(ret[i].k), sizeof(ret[i].k)); |
| 349 | |
| 350 | return ret; |
| 351 | } |
| 352 | |
| 353 | void db_col_pubkey(struct db_stmt *stmt, |
| 354 | const char *colname, |
no test coverage detected