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

Function param_feerate_val

lightningd/feerate.c:133–165  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

131}
132
133struct command_result *param_feerate_val(struct command *cmd,
134 const char *name, const char *buffer,
135 const jsmntok_t *tok,
136 u32 **feerate_per_kw)
137{
138 jsmntok_t base = *tok;
139 enum feerate_style style;
140 unsigned int num;
141
142 if (json_tok_endswith(buffer, tok,
143 feerate_style_name(FEERATE_PER_KBYTE))) {
144 style = FEERATE_PER_KBYTE;
145 base.end -= strlen(feerate_style_name(FEERATE_PER_KBYTE));
146 } else if (json_tok_endswith(buffer, tok,
147 feerate_style_name(FEERATE_PER_KSIPA))) {
148 style = FEERATE_PER_KSIPA;
149 base.end -= strlen(feerate_style_name(FEERATE_PER_KSIPA));
150 } else
151 style = FEERATE_PER_KBYTE;
152
153 if (!json_to_number(buffer, &base, &num)) {
154 return command_fail(cmd, JSONRPC2_INVALID_PARAMS,
155 "'%s' should be an integer with optional perkw/perkb, not '%.*s'",
156 name, base.end - base.start,
157 buffer + base.start);
158 }
159
160 *feerate_per_kw = tal(cmd, u32);
161 **feerate_per_kw = feerate_from_style(num, style);
162 if (**feerate_per_kw < FEERATE_FLOOR)
163 **feerate_per_kw = FEERATE_FLOOR;
164 return NULL;
165}

Callers 1

param_feerate_uncheckedFunction · 0.85

Calls 5

json_tok_endswithFunction · 0.85
feerate_style_nameFunction · 0.85
feerate_from_styleFunction · 0.85
command_failFunction · 0.70
json_to_numberFunction · 0.50

Tested by

no test coverage detected