Class1Modem::recvBegin(fxStr& emsg)
{
setInputBuffering(false);
- prevPage = false; // no previous page received
+ prevPage = 0; // no previous page received
pageGood = false; // quality of received page
messageReceived = false; // expect message carrier
recvdDCN = false; // haven't seen DCN
time_t t2end = 0;
signalRcvd = 0;
sendERR = false;
- prevPage = false;
+ prevPage = 0;
do {
u_int timer = conf.t2Timer;
if (params.ec != EC_DISABLE) {
pageGood = recvPageData(tif, emsg);
messageReceived = true;
- prevPage = true;
+ prevPage++;
} else {
/*
* Look for message carrier and receive Phase C data.
messageReceived = waitFor(AT_NOCARRIER, 2*1000);
} while (!messageReceived && Sys::now() < (nocarrierstart + 5));
if (messageReceived)
- prevPage = true;
+ prevPage++;
timer = conf.t1Timer; // wait longer for PPM
}
} else {
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
if (wasTimeout()) abortReceive(); // return to command mode
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
}
- if (pprcnt || !prevPage) {
+ if (!prevPage || (pprcnt && frameRev[rtncframe[4]]+1 > prevPage)) {
(void) transmitFrame(FCF_PPR, fxStr(ppr, 32));
tracePPR("RECV send", FCF_PPR);
} else {
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
if (wasTimeout()) abortReceive(); // return to command mode
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages && pagedataseen) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return (false);
if (conf.saveUnconfirmedPages) {
protoTrace("RECV keeping unconfirmed page");
writeECMData(tif, block, (fcount * frameSize), params, (seq |= 2));
- prevPage = true;
+ prevPage++;
}
free(block);
return(false);