public XMRTaskImageResponse XMR_GetImages(BitfiWallet.NOXWS.ImageRequestTable[] requestTable)
{
XMRTaskImageResponse taskTransferResponse = new XMRTaskImageResponse();
try
{
List\\ imgList = new List\\();
foreach (var tx in requestTable)
{
compute_key_images img = new compute_key_images();
img.pub_spendKey_string = MoneroWallet.Converters.ByteArrayToHex(wallet.Keys.SpendPublic);
img.sec_spendKey_string = MoneroWallet.Converters.ByteArrayToHex(wallet.Keys.SpendSecret);
img.sec_viewKey_string = MoneroWallet.Converters.ByteArrayToHex(wallet.Keys.ViewSecret);
img.tx_pub_key = tx.TxPubKey;
img.out_index = tx.OutIndex;
byte[] abcArr = Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(img, ser));
var rrr = XMRNative.GenerateKeyImage(abcArr, abcArr.Length);
byte[] res123 = new byte[rrr];
XMRNative.GenerateKeyImageGetData(res123, rrr);
var result123 = Encoding.UTF8.GetString(res123);
var resp = JsonConvert.DeserializeObject\\(result123, ser);
if (resp != null && !string.IsNullOrEmpty(resp.retVal))
{
if (string.IsNullOrEmpty(resp.err_msg))
{
imgList.Add(resp.retVal);
}
}
}
taskTransferResponse.SpendKeyImages = imgList.ToArray();
taskTransferResponse.WalletAddress = wallet.Address;
taskTransferResponse.Error = null;
if (imgList.Count() \ {
taskTransferResponse.Error = "Invalid info or request for key images.";
}
return taskTransferResponse;
}
catch (Exception ex)
{
taskTransferResponse.Error = ex.Message;
return taskTransferResponse;
}
}
}