Ok, managed to get something working but only in the case of using two separate wallets with one private key located in each. In addition both wallets need to have the multi-sig address you're using added to them, despite them already containing one private key each.
Is there a way to have a wallet correctly sign a multi-sig transaction without explicitly adding the multi-sig address to it?
Ok, to answer my own question, *yes* there is a way, and here is how:
* use createmultisig 2 [pubKeyA, pubKeyB] to generate a
redeemScript and an address
* createrawtransaction as usual
* signrawtransaction using private key A, and also you must pass, for
each transaction output:
{
txid - this is the txid of the transaction you just created, NOT the funding transaction
vout - index of transaction output
scriptPubKey - this is from the output (indexed vout) for the transaction you just created
redeemScript - this is from createmultisig
}
* transmit the hex transaction to the other party
along with the redeemScript* have the other party perform the same process for signing on their end
* transaction is signed correctly.
I was unable to determine if the other party could extract the redeemScript from the transaction alone which would save some messing around.
note: something which threw me was the offical documentation for signrawtransaction, which omits to mention redeemScript. This could do with fixingCheers, Paul.