| 348 | } |
| 349 | |
| 350 | static u8 *create_nannounce(const tal_t *ctx, |
| 351 | struct lightningd *ld, |
| 352 | const secp256k1_ecdsa_signature *sig, |
| 353 | const struct wireaddr *addrs, |
| 354 | u32 timestamp, |
| 355 | const struct lease_rates *rates) |
| 356 | { |
| 357 | u8 *addresses = tal_arr(tmpctx, u8, 0); |
| 358 | u8 *announcement; |
| 359 | struct tlv_node_ann_tlvs *na_tlv; |
| 360 | |
| 361 | for (size_t i = 0; i < tal_count(addrs); i++) |
| 362 | towire_wireaddr(&addresses, &addrs[i]); |
| 363 | |
| 364 | na_tlv = tlv_node_ann_tlvs_new(tmpctx); |
| 365 | na_tlv->option_will_fund = cast_const(struct lease_rates *, rates); |
| 366 | |
| 367 | announcement = |
| 368 | towire_node_announcement(ctx, sig, |
| 369 | ld->our_features->bits[NODE_ANNOUNCE_FEATURE], |
| 370 | timestamp, |
| 371 | &ld->our_nodeid, ld->rgb, ld->alias, |
| 372 | addresses, |
| 373 | na_tlv); |
| 374 | return announcement; |
| 375 | } |
| 376 | |
| 377 | /* Return an array of wireaddr to announce */ |
| 378 | static const struct wireaddr *gather_addresses(const tal_t *ctx, |
no test coverage detected