mirror of
https://github.com/g4klx/MMDVMHost
synced 2025-12-21 23:45:49 +08:00
Add invalid access attempt logging.
This commit is contained in:
@@ -120,8 +120,10 @@ bool CYSFControl::writeModem(unsigned char *data, unsigned int len)
|
||||
return false;
|
||||
}
|
||||
|
||||
if (type == TAG_LOST)
|
||||
if (type == TAG_LOST) {
|
||||
m_rfState = RS_RF_LISTENING;
|
||||
return false;
|
||||
}
|
||||
|
||||
// Have we got RSSI bytes on the end?
|
||||
if (len == (YSF_FRAME_LENGTH_BYTES + 4U)) {
|
||||
@@ -212,9 +214,12 @@ bool CYSFControl::processVWData(bool valid, unsigned char *data)
|
||||
|
||||
if (m_selfOnly) {
|
||||
bool ret = checkCallsign(m_rfSource);
|
||||
if (!ret)
|
||||
if (!ret) {
|
||||
LogMessage("YSF, invalid access attempt from %10.10s", m_rfSource);
|
||||
m_rfState = RS_RF_REJECTED;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
unsigned char cm = m_lastFICH.getCM();
|
||||
if (cm == YSF_CM_GROUP)
|
||||
@@ -271,9 +276,9 @@ bool CYSFControl::processVWData(bool valid, unsigned char *data)
|
||||
|
||||
m_display->writeFusionRSSI(m_rssi);
|
||||
} else if (valid && fi == YSF_FI_TERMINATOR) {
|
||||
if (m_rfState != RS_RF_AUDIO)
|
||||
return false;
|
||||
|
||||
if (m_rfState == RS_RF_REJECTED) {
|
||||
m_rfState = RS_RF_LISTENING;
|
||||
} else if (m_rfState == RS_RF_AUDIO) {
|
||||
m_rfPayload.processHeaderData(data + 2U);
|
||||
|
||||
CSync::addYSFSync(data + 2U);
|
||||
@@ -313,6 +318,7 @@ bool CYSFControl::processVWData(bool valid, unsigned char *data)
|
||||
LogMessage("YSF, received RF end of transmission, %.1f seconds, BER: %.1f%%", float(m_rfFrames) / 10.0F, float(m_rfErrs * 100U) / float(m_rfBits));
|
||||
|
||||
writeEndRF();
|
||||
}
|
||||
|
||||
return false;
|
||||
} else {
|
||||
@@ -392,9 +398,12 @@ bool CYSFControl::processDNData(bool valid, unsigned char *data)
|
||||
|
||||
if (m_selfOnly) {
|
||||
bool ret = checkCallsign(m_rfSource);
|
||||
if (!ret)
|
||||
if (!ret) {
|
||||
LogMessage("YSF, invalid access attempt from %10.10s", m_rfSource);
|
||||
m_rfState = RS_RF_REJECTED;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
unsigned char cm = m_lastFICH.getCM();
|
||||
if (cm == YSF_CM_GROUP)
|
||||
@@ -451,9 +460,9 @@ bool CYSFControl::processDNData(bool valid, unsigned char *data)
|
||||
|
||||
m_display->writeFusionRSSI(m_rssi);
|
||||
} else if (valid && fi == YSF_FI_TERMINATOR) {
|
||||
if (m_rfState != RS_RF_AUDIO)
|
||||
return false;
|
||||
|
||||
if (m_rfState == RS_RF_REJECTED) {
|
||||
m_rfState = RS_RF_LISTENING;
|
||||
} else if (m_rfState == RS_RF_AUDIO) {
|
||||
m_rfPayload.processHeaderData(data + 2U);
|
||||
|
||||
CSync::addYSFSync(data + 2U);
|
||||
@@ -493,6 +502,7 @@ bool CYSFControl::processDNData(bool valid, unsigned char *data)
|
||||
LogMessage("YSF, received RF end of transmission, %.1f seconds, BER: %.1f%%", float(m_rfFrames) / 10.0F, float(m_rfErrs * 100U) / float(m_rfBits));
|
||||
|
||||
writeEndRF();
|
||||
}
|
||||
|
||||
return false;
|
||||
} else {
|
||||
@@ -607,9 +617,12 @@ bool CYSFControl::processDNData(bool valid, unsigned char *data)
|
||||
|
||||
if (m_selfOnly) {
|
||||
bool ret = checkCallsign(m_rfSource);
|
||||
if (!ret)
|
||||
if (!ret) {
|
||||
LogMessage("YSF, invalid access attempt from %10.10s", m_rfSource);
|
||||
m_rfState = RS_RF_REJECTED;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
m_rfFrames = 0U;
|
||||
m_rfErrs = 0U;
|
||||
@@ -726,9 +739,12 @@ bool CYSFControl::processFRData(bool valid, unsigned char *data)
|
||||
|
||||
if (m_selfOnly) {
|
||||
bool ret = checkCallsign(m_rfSource);
|
||||
if (!ret)
|
||||
if (!ret) {
|
||||
LogMessage("YSF, invalid access attempt from %10.10s", m_rfSource);
|
||||
m_rfState = RS_RF_REJECTED;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
unsigned char cm = m_lastFICH.getCM();
|
||||
if (cm == YSF_CM_GROUP)
|
||||
@@ -782,9 +798,9 @@ bool CYSFControl::processFRData(bool valid, unsigned char *data)
|
||||
|
||||
m_display->writeFusionRSSI(m_rssi);
|
||||
} else if (valid && fi == YSF_FI_TERMINATOR) {
|
||||
if (m_rfState != RS_RF_DATA)
|
||||
return false;
|
||||
|
||||
if (m_rfState == RS_RF_REJECTED) {
|
||||
m_rfState = RS_RF_LISTENING;
|
||||
} else if (m_rfState == RS_RF_DATA) {
|
||||
m_rfPayload.processHeaderData(data + 2U);
|
||||
|
||||
CSync::addYSFSync(data + 2U);
|
||||
@@ -824,6 +840,7 @@ bool CYSFControl::processFRData(bool valid, unsigned char *data)
|
||||
LogMessage("YSF, received RF end of transmission, %.1f seconds", float(m_rfFrames) / 10.0F);
|
||||
|
||||
writeEndRF();
|
||||
}
|
||||
|
||||
return false;
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user