MCPcopy Create free account
hub / github.com/ElementsProject/lightning / bech32_push_bits

Function bech32_push_bits

common/bech32_util.c:11–27  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

9}
10
11void bech32_push_bits(u5 **data, const void *src, size_t nbits)
12{
13 size_t i, b;
14 size_t data_len = tal_count(*data);
15
16 for (i = 0; i < nbits; i += b) {
17 tal_resize(data, data_len+1);
18 (*data)[data_len] = 0;
19 for (b = 0; b < 5; b++) {
20 (*data)[data_len] <<= 1;
21 /* If we need bits we don't have, zero */
22 if (i+b < nbits)
23 (*data)[data_len] |= get_bit(src, i+b);
24 }
25 data_len++;
26 }
27}
28
29static u8 get_u5_bit(const u5 *src, size_t bitoff)
30{

Callers 6

seednamesFunction · 0.85
push_varlen_uintFunction · 0.85
push_fieldFunction · 0.85
push_fallback_addrFunction · 0.85
bolt11_encode_Function · 0.85
to_bech32_charsetFunction · 0.85

Calls 1

get_bitFunction · 0.85

Tested by

no test coverage detected