mirror of
https://github.com/aljazceru/cyphernode.git
synced 2025-12-17 12:45:22 +01:00
Validate address before watching it
This commit is contained in:
@@ -84,6 +84,7 @@ get_mempool_info() {
|
|||||||
send_to_watcher_node "${data}" | jq ".result"
|
send_to_watcher_node "${data}" | jq ".result"
|
||||||
return $?
|
return $?
|
||||||
}
|
}
|
||||||
|
|
||||||
get_blockhash() {
|
get_blockhash() {
|
||||||
trace "Entering get_blockhash()..."
|
trace "Entering get_blockhash()..."
|
||||||
local blockheight=${1}
|
local blockheight=${1}
|
||||||
@@ -91,3 +92,14 @@ get_blockhash() {
|
|||||||
send_to_watcher_node "${data}" | jq ".result"
|
send_to_watcher_node "${data}" | jq ".result"
|
||||||
return $?
|
return $?
|
||||||
}
|
}
|
||||||
|
|
||||||
|
validateaddress() {
|
||||||
|
trace "Entering validateaddress()..."
|
||||||
|
|
||||||
|
local address=${1}
|
||||||
|
trace "[validateaddress] address=${address}"
|
||||||
|
local data="{\"method\":\"validateaddress\",\"params\":[\"${address}\"]}"
|
||||||
|
trace "[validateaddress] data=${data}"
|
||||||
|
send_to_watcher_node "${data}"
|
||||||
|
return $?
|
||||||
|
}
|
||||||
|
|||||||
@@ -21,6 +21,28 @@ watchrequest() {
|
|||||||
local result
|
local result
|
||||||
trace "[watchrequest] Watch request on address (\"${address}\"), cb 0-conf (${cb0conf_url}), cb 1-conf (${cb1conf_url}) with event_message=${event_message}"
|
trace "[watchrequest] Watch request on address (\"${address}\"), cb 0-conf (${cb0conf_url}), cb 1-conf (${cb1conf_url}) with event_message=${event_message}"
|
||||||
|
|
||||||
|
local isvalid
|
||||||
|
isvalid=$(validateaddress "${address}" | jq ".result.isvalid")
|
||||||
|
if [ "${isvalid}" != "true" ]; then
|
||||||
|
result="{
|
||||||
|
\"result\":null,
|
||||||
|
\"error\":{
|
||||||
|
\"code\":-5,
|
||||||
|
\"message\":\"Invalid address\",
|
||||||
|
\"data\":{
|
||||||
|
\"event\":\"watch\",
|
||||||
|
\"address\":\"${address}\",
|
||||||
|
\"unconfirmedCallbackURL\":${cb0conf_url},
|
||||||
|
\"confirmedCallbackURL\":${cb1conf_url},
|
||||||
|
\"eventMessage\":${event_message}}}}"
|
||||||
|
trace "[watchrequest] Invalid address"
|
||||||
|
trace "[watchrequest] responding=${result}"
|
||||||
|
|
||||||
|
echo "${result}"
|
||||||
|
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
result=$(importaddress_rpc ${address})
|
result=$(importaddress_rpc ${address})
|
||||||
returncode=$?
|
returncode=$?
|
||||||
trace_rc ${returncode}
|
trace_rc ${returncode}
|
||||||
@@ -54,7 +76,7 @@ watchrequest() {
|
|||||||
fees144blocks=$(getestimatesmartfee 144)
|
fees144blocks=$(getestimatesmartfee 144)
|
||||||
trace_rc $?
|
trace_rc $?
|
||||||
|
|
||||||
local data="{\"id\":\"${id_inserted}\",
|
result="{\"id\":\"${id_inserted}\",
|
||||||
\"event\":\"watch\",
|
\"event\":\"watch\",
|
||||||
\"imported\":\"${imported}\",
|
\"imported\":\"${imported}\",
|
||||||
\"inserted\":\"${inserted}\",
|
\"inserted\":\"${inserted}\",
|
||||||
@@ -66,9 +88,9 @@ watchrequest() {
|
|||||||
\"estimatesmartfee36blocks\":\"${fees36blocks}\",
|
\"estimatesmartfee36blocks\":\"${fees36blocks}\",
|
||||||
\"estimatesmartfee144blocks\":\"${fees144blocks}\",
|
\"estimatesmartfee144blocks\":\"${fees144blocks}\",
|
||||||
\"eventMessage\":${event_message}}"
|
\"eventMessage\":${event_message}}"
|
||||||
trace "[watchrequest] responding=${data}"
|
trace "[watchrequest] responding=${result}"
|
||||||
|
|
||||||
echo "${data}"
|
echo "${result}"
|
||||||
|
|
||||||
return ${returncode}
|
return ${returncode}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user