diff --git a/iguana/iguana_sign.c b/iguana/iguana_sign.c index 24ce1bd62..bb41ced17 100755 --- a/iguana/iguana_sign.c +++ b/iguana/iguana_sign.c @@ -24,7 +24,17 @@ int32_t iguana_vinparse(struct iguana_info *coin,int32_t rwflag,uint8_t *seriali len += iguana_rwbignum(rwflag,&serialized[len],sizeof(msg->prev_hash),msg->prev_hash.bytes); len += iguana_rwnum(rwflag,&serialized[len],sizeof(msg->prev_vout),&msg->prev_vout); if ( rwflag == 1 ) + { tmp = msg->scriptlen + msg->userdatalen + msg->p2shlen; + if ( msg->p2shlen != 0 ) + { + if ( msg->p2shlen < 76 ) + tmp++; + else if ( msg->p2shlen < 0x100 ) + tmp += 2; + else tmp += 3; + } + } len += iguana_rwvarint32(rwflag,&serialized[len],&tmp); if ( rwflag == 0 ) {