jl777 9 years ago
parent
commit
2f3fd4d23d
  1. 2
      basilisk/basilisk.h
  2. 4
      basilisk/basilisk_swap.c
  3. 2
      iguana/iguana_interpreter.c
  4. 11
      iguana/iguana_sign.c

2
basilisk/basilisk.h

@ -16,7 +16,7 @@
#ifndef H_BASILISK_H
#define H_BASILISK_H
//#define BASILISK_DISABLESENDTX
#define BASILISK_DISABLESENDTX
#define BASILISK_DISABLEWAITTX
#include "../iguana/iguana777.h"

4
basilisk/basilisk_swap.c

@ -119,8 +119,8 @@ int32_t basilisk_alicescript(uint8_t *redeemscript,int32_t *redeemlenp,uint8_t *
{
uint8_t i,p2sh160[20]; struct vin_info V;
memset(&V,0,sizeof(V));
memcpy(&V.signers[1].pubkey[1],pubAm.bytes,sizeof(pubAm)), V.signers[1].pubkey[0] = 0x02;
memcpy(&V.signers[0].pubkey[1],pubBn.bytes,sizeof(pubBn)), V.signers[0].pubkey[0] = 0x03;
memcpy(&V.signers[0].pubkey[1],pubAm.bytes,sizeof(pubAm)), V.signers[0].pubkey[0] = 0x02;
memcpy(&V.signers[1].pubkey[1],pubBn.bytes,sizeof(pubBn)), V.signers[1].pubkey[0] = 0x03;
V.M = V.N = 2;
*redeemlenp = bitcoin_MofNspendscript(p2sh160,redeemscript,n,&V);
bitcoin_address(msigaddr,altps2h,p2sh160,sizeof(p2sh160));

2
iguana/iguana_interpreter.c

@ -786,7 +786,7 @@ int32_t iguana_checkmultisig(struct iguana_info *coin,struct iguana_interpreter
return(0);
}
printf("n.%d stackdepth.%d\n",n,stacks->stackdepth);
for (i=N-1; i>=0; i--)
for (i=0; i<N; i++)
{
if ( stacks->stackdepth <= 0 )
return(0);

11
iguana/iguana_sign.c

@ -524,12 +524,19 @@ bits256 bitcoin_sigtxid(struct iguana_info *coin,int32_t height,uint8_t *seriali
void iguana_vinobjset(struct iguana_msgvin *vin,cJSON *item,uint8_t *spendscript,int32_t maxsize)
{
char *redeemstr,*hexstr; cJSON *sobj;
char *redeemstr,*hexstr=0; cJSON *sobj;
if ( (redeemstr= jstr(item,"redeemScript")) != 0 && is_hexstr(redeemstr,0) > 0 )
{
vin->p2shlen = (int32_t)strlen(redeemstr) >> 1;
vin->spendlen = vin->p2shlen;
hexstr = redeemstr;
}
if ( (sobj= jobj(item,"scriptPubKey")) != 0 && (hexstr= jstr(sobj,"hex")) != 0 && is_hexstr(hexstr,0) > 0 && (vin->spendlen == 0 || vin->spendscript == 0) )
{
vin->spendlen = (int32_t)strlen(hexstr) >> 1;
}
if ( hexstr != 0 && vin->spendlen != 0 )
{
if ( vin->spendlen < maxsize )
{
if ( vin->spendscript == 0 )
@ -541,7 +548,7 @@ void iguana_vinobjset(struct iguana_msgvin *vin,cJSON *item,uint8_t *spendscript
int32_t iguana_rwmsgtx(struct iguana_info *coin,int32_t height,int32_t rwflag,cJSON *json,uint8_t *serialized,int32_t maxsize,struct iguana_msgtx *msg,bits256 *txidp,char *vpnstr,uint8_t *extraspace,int32_t extralen,cJSON *vins,int32_t suppress_pubkeys)
{
int32_t i,n,len = 0,extraused=0; uint8_t spendscript[8192],*txstart = serialized,*sigser=0; char txidstr[65]; cJSON *vinarray=0,*voutarray=0; bits256 sigtxid;
int32_t i,n,len = 0,extraused=0; uint8_t spendscript[IGUANA_MAXSCRIPTSIZE],*txstart = serialized,*sigser=0; char txidstr[65]; cJSON *vinarray=0,*voutarray=0; bits256 sigtxid;
len += iguana_rwnum(rwflag,&serialized[len],sizeof(msg->version),&msg->version);
if ( json != 0 )
{

Loading…
Cancel
Save