From da68a5368b597cdb0f37db359bbe55d8f884665d Mon Sep 17 00:00:00 2001 From: Dennis Netterdon Date: Fri, 15 May 2020 10:56:29 +0200 Subject: [PATCH 1/2] tix taddr --- frontend/service.go | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/frontend/service.go b/frontend/service.go index 61da90f..aeef4ed 100644 --- a/frontend/service.go +++ b/frontend/service.go @@ -8,6 +8,7 @@ import ( "strconv" "strings" "time" + "regexp" "github.com/btcsuite/btcd/rpcclient" "github.com/sirupsen/logrus" @@ -51,7 +52,17 @@ func (s *SqlStreamer) GetLatestBlock(ctx context.Context, placeholder *walletrpc } func (s *SqlStreamer) GetAddressTxids(addressBlockFilter *walletrpc.TransparentAddressBlockFilter, resp walletrpc.CompactTxStreamer_GetAddressTxidsServer) error { - params := make([]json.RawMessage, 1) + var err error + var errCode int64 + + // Test to make sure Address is a single t address + match, err := regexp.Match("^R[a-zA-Z0-9]{34}$", []byte(addressBlockFilter.Address)) + if err != nil || !match { + s.log.Errorf("Unrecognized address: %s", addressBlockFilter.Address) + return nil + } + + params := make([]json.RawMessage, 1) st := "{\"addresses\": [\"" + addressBlockFilter.Address + "\"]," + "\"start\": " + strconv.FormatUint(addressBlockFilter.Range.Start.Height, 10) + ", \"end\": " + strconv.FormatUint(addressBlockFilter.Range.End.Height, 10) + "}" @@ -60,8 +71,6 @@ func (s *SqlStreamer) GetAddressTxids(addressBlockFilter *walletrpc.TransparentA result, rpcErr := s.client.RawRequest("getaddresstxids", params) - var err error - var errCode int64 // For some reason, the error responses are not JSON if rpcErr != nil { From c952f7e3d9a6359fb3740a26f913a08e784f287d Mon Sep 17 00:00:00 2001 From: Dennis Netterdon Date: Fri, 15 May 2020 11:19:41 +0200 Subject: [PATCH 2/2] tix taddr --- frontend/service.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/service.go b/frontend/service.go index aeef4ed..1b82bc1 100644 --- a/frontend/service.go +++ b/frontend/service.go @@ -56,7 +56,7 @@ func (s *SqlStreamer) GetAddressTxids(addressBlockFilter *walletrpc.TransparentA var errCode int64 // Test to make sure Address is a single t address - match, err := regexp.Match("^R[a-zA-Z0-9]{34}$", []byte(addressBlockFilter.Address)) + match, err := regexp.Match("^R[a-zA-Z0-9]{33}$", []byte(addressBlockFilter.Address)) if err != nil || !match { s.log.Errorf("Unrecognized address: %s", addressBlockFilter.Address) return nil