File tree Expand file tree Collapse file tree 1 file changed +14
-2
lines changed Expand file tree Collapse file tree 1 file changed +14
-2
lines changed Original file line number Diff line number Diff line change @@ -456,12 +456,24 @@ namespace sdk {
456456 result[" error" ] = res::id_invalid_payment_request_assetid;
457457 break ;
458458 } else if (uri_params[" bip21-params" ].contains (" assetid" )) {
459+ const std::string assetid = uri_params[" bip21-params" ][" assetid" ];
460+ if (assetid.length () != 64 ) {
461+ result[" error" ] = res::id_invalid_payment_request_assetid;
462+ break ;
463+ }
464+ unsigned char buff[32 ];
465+ size_t written;
466+ int ret = wally_hex_to_bytes (assetid.data (), buff, 32 , &written);
467+ if (ret != WALLY_OK) {
468+ result[" error" ] = res::id_invalid_payment_request_assetid;
469+ break ;
470+ }
459471 addressees_have_assets = true ;
460472
461- if (uri_params[ " bip21-params " ][ " assetid" ] == net_params.policy_asset ()) {
473+ if (assetid == net_params.policy_asset ()) {
462474 addressee[" asset_tag" ] = " btc" ;
463475 } else {
464- addressee[" asset_tag" ] = uri_params[ " bip21-params " ][ " assetid" ] ;
476+ addressee[" asset_tag" ] = assetid;
465477 }
466478 }
467479 }
You can’t perform that action at this time.
0 commit comments