Logger.minor(this, "Node "+pn+" rejected FNPGetOfferedKey as invalid with reason "+reply.getShort(DMT.REASON));
return OFFER_STATUS.TRY_ANOTHER;
} else if(reply.getSpec() == DMT.FNPSSKDataFoundHeaders) {
byte[] headers = ((ShortBuffer) reply.getObject(DMT.BLOCK_HEADERS)).getData();
// Wait for the data
MessageFilter mfData = MessageFilter.create().setSource(pn).setField(DMT.UID, uid).setTimeout(getOfferedTimeout).setType(DMT.FNPSSKDataFoundData);
Message dataMessage;
try {
dataMessage = node.usm.waitFor(mfData, this);
} catch (DisconnectedException e) {
if(logMINOR)
Logger.minor(this, "Disconnected: "+pn+" getting data for offer for "+key);
return OFFER_STATUS.TRY_ANOTHER;
}
if(dataMessage == null) {
Logger.error(this, "Got headers but not data from "+pn+" for offer for "+key+" on "+this);
return OFFER_STATUS.TRY_ANOTHER;
}
byte[] sskData = ((ShortBuffer) dataMessage.getObject(DMT.DATA)).getData();
if(pubKey == null) {
MessageFilter mfPK = MessageFilter.create().setSource(pn).setField(DMT.UID, uid).setTimeout(getOfferedTimeout).setType(DMT.FNPSSKPubKey);
Message pk;
try {
pk = node.usm.waitFor(mfPK, this);
} catch (DisconnectedException e) {
if(logMINOR)