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

Function param_feerate_val

lightningd/feerate.c:82–114  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

80}
81
82struct command_result *param_feerate_val(struct command *cmd,
83 const char *name, const char *buffer,
84 const jsmntok_t *tok,
85 u32 **feerate_per_kw)
86{
87 jsmntok_t base = *tok;
88 enum feerate_style style;
89 unsigned int num;
90
91 if (json_tok_endswith(buffer, tok,
92 feerate_style_name(FEERATE_PER_KBYTE))) {
93 style = FEERATE_PER_KBYTE;
94 base.end -= strlen(feerate_style_name(FEERATE_PER_KBYTE));
95 } else if (json_tok_endswith(buffer, tok,
96 feerate_style_name(FEERATE_PER_KSIPA))) {
97 style = FEERATE_PER_KSIPA;
98 base.end -= strlen(feerate_style_name(FEERATE_PER_KSIPA));
99 } else
100 style = FEERATE_PER_KBYTE;
101
102 if (!json_to_number(buffer, &base, &num)) {
103 return command_fail(cmd, JSONRPC2_INVALID_PARAMS,
104 "'%s' should be an integer with optional perkw/perkb, not '%.*s'",
105 name, base.end - base.start,
106 buffer + base.start);
107 }
108
109 *feerate_per_kw = tal(cmd, u32);
110 **feerate_per_kw = feerate_from_style(num, style);
111 if (**feerate_per_kw < FEERATE_FLOOR)
112 **feerate_per_kw = FEERATE_FLOOR;
113 return NULL;
114}

Callers 1

param_feerateFunction · 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