This commit is contained in:
parent
5763b13705
commit
7be0e28f0a
4 changed files with 41 additions and 7 deletions
|
|
@ -497,6 +497,7 @@ module Wire_disable = struct
|
|||
Pg.update_wire db_conn ~is_active:false ~last_change:validity_end wire
|
||||
|> unwrap_err_caqti
|
||||
in
|
||||
Logs.info (fun m -> m "disabled wire method");
|
||||
()
|
||||
|
||||
let jsont = WireTeardownMessage.jsont
|
||||
|
|
|
|||
|
|
@ -82,7 +82,7 @@ offline_tool global-fees \
|
|||
offline_tool upload --input $b --url $url"/management/global-fees"
|
||||
echo "[OK] /management/global-fees"
|
||||
|
||||
offline_tool wire \
|
||||
offline_tool enable-wire \
|
||||
--master_key $master_key \
|
||||
--output $b \
|
||||
--payto_uri "" \
|
||||
|
|
@ -91,7 +91,13 @@ offline_tool wire \
|
|||
offline_tool upload --input $b --url $url"/management/wire"
|
||||
echo "[OK] /management/wire"
|
||||
|
||||
# todo test disable wire
|
||||
offline_tool disable-wire \
|
||||
--master_key $master_key \
|
||||
--output $b \
|
||||
--payto_uri ""
|
||||
offline_tool upload --input $b --url $url"/management/wire/disable"
|
||||
echo "[OK] /management/wire/disable"
|
||||
|
||||
# todo test drain
|
||||
# todo test aml-officer
|
||||
# todo test partners
|
||||
|
|
|
|||
|
|
@ -292,7 +292,7 @@ let global_fees_cmd =
|
|||
~account_fee ~purse_fee ~history_expiration ~purse_account_limit
|
||||
~purse_timeout
|
||||
|
||||
let wire_cmd =
|
||||
let enable_wire_cmd =
|
||||
let doc = "Enable wire method." in
|
||||
let payto_uri =
|
||||
Arg.(required & opt (some string) None & info [ "payto_uri" ])
|
||||
|
|
@ -301,14 +301,26 @@ let wire_cmd =
|
|||
Arg.(value & opt (some string) None & info [ "bank_label" ])
|
||||
in
|
||||
let priority = Arg.(value & opt (some int) None & info [ "priority" ]) in
|
||||
Cmd.make (Cmd.info "wire" ~doc)
|
||||
Cmd.make (Cmd.info "enable-wire" ~doc)
|
||||
@@
|
||||
let+ output = output
|
||||
and+ master_key = master_key
|
||||
and+ payto_uri = payto_uri
|
||||
and+ bank_label = bank_label
|
||||
and+ priority = priority in
|
||||
wire ~output ~master_key ~payto_uri ~bank_label ~priority
|
||||
enable_wire ~output ~master_key ~payto_uri ~bank_label ~priority
|
||||
|
||||
let disable_wire_cmd =
|
||||
let doc = "Disable wire method." in
|
||||
let payto_uri =
|
||||
Arg.(required & opt (some string) None & info [ "payto_uri" ])
|
||||
in
|
||||
Cmd.make (Cmd.info "disable-wire" ~doc)
|
||||
@@
|
||||
let+ output = output
|
||||
and+ master_key = master_key
|
||||
and+ payto_uri = payto_uri in
|
||||
disable_wire ~output ~master_key ~payto_uri
|
||||
|
||||
let drain_cmd =
|
||||
let doc =
|
||||
|
|
@ -354,7 +366,8 @@ let cli =
|
|||
wire_fee_cmd;
|
||||
global_fees_cmd;
|
||||
drain_cmd;
|
||||
wire_cmd;
|
||||
enable_wire_cmd;
|
||||
disable_wire_cmd;
|
||||
(* - *)
|
||||
test_hash64_cmd;
|
||||
]
|
||||
|
|
|
|||
|
|
@ -342,7 +342,7 @@ let wire_fee ~output ~master_key ~wire_method ~fee_start ~fee_end ~closing_fee
|
|||
hash over json, hash over string option?
|
||||
|
||||
~conversion_url ~credit_restrictions ~debit_restrictions *)
|
||||
let wire ~output ~master_key ~payto_uri ~bank_label ~priority =
|
||||
let enable_wire ~output ~master_key ~payto_uri ~bank_label ~priority =
|
||||
let* key = read_master_key_file master_key in
|
||||
let ns = Mtime_clock.now_ns () in
|
||||
let validity_start = Timestamp.of_s @@ Int64.unsigned_div ns 1_000_000_000L in
|
||||
|
|
@ -394,6 +394,20 @@ let wire ~output ~master_key ~payto_uri ~bank_label ~priority =
|
|||
let* () = write_file output s in
|
||||
Ok ()
|
||||
|
||||
let disable_wire ~output ~master_key ~payto_uri =
|
||||
let* key = read_master_key_file master_key in
|
||||
let ns = Mtime_clock.now_ns () in
|
||||
let validity_end = Timestamp.of_s @@ Int64.unsigned_div ns 1_000_000_000L in
|
||||
let h_wire = Hash.FullPaytoHash.hash payto_uri in
|
||||
let master_sig_del =
|
||||
let open Signatures.MasterDelWire in
|
||||
signf (EddsaSignature.sign ~key) { end_date= validity_end; h_wire }
|
||||
in
|
||||
let v = Api.WireTeardownMessage.{ payto_uri; master_sig_del; validity_end } in
|
||||
let* s = Api.encode Api.WireTeardownMessage.jsont v in
|
||||
let* () = write_file output s in
|
||||
Ok ()
|
||||
|
||||
let drain ~output ~master_key ~debit_account_section ~credit_payto_uri ~wtid
|
||||
~date ~amount =
|
||||
let* key = read_master_key_file master_key in
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue