When an MPE PID is marked as suspect from switching encryption on/off, but it has already sucessfully delivered IPv4 or LLC PDUs, the suspicion is cleared.
All checks were successful
🚀 Pack skyscraper8 / make-zip (push) Successful in 47s
All checks were successful
🚀 Pack skyscraper8 / make-zip (push) Successful in 47s
This commit is contained in:
parent
c4c08d1494
commit
f7aa6ecf67
@ -15,7 +15,10 @@ namespace skyscraper5.src.Mpeg2.PacketFilter
|
||||
{
|
||||
state = new bool?[8192];
|
||||
suspicions = new byte[8192];
|
||||
exemptions = new bool[8192];
|
||||
}
|
||||
|
||||
private bool[] exemptions;
|
||||
private bool?[] state;
|
||||
private byte[] suspicions;
|
||||
private const byte LIMIT = 3;
|
||||
@ -24,7 +27,12 @@ namespace skyscraper5.src.Mpeg2.PacketFilter
|
||||
{
|
||||
bool scrambled = packet.TSC != 0;
|
||||
|
||||
if (!state[packet.PID].HasValue)
|
||||
if (exemptions[packet.PID])
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!state[packet.PID].HasValue)
|
||||
{
|
||||
state[packet.PID] = scrambled;
|
||||
return true;
|
||||
@ -45,5 +53,12 @@ namespace skyscraper5.src.Mpeg2.PacketFilter
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
internal void SetExempt(int pid)
|
||||
{
|
||||
exemptions[pid] = true;
|
||||
state[pid] = null;
|
||||
suspicions[pid] = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
"profiles": {
|
||||
"skyscraper8": {
|
||||
"commandName": "Project",
|
||||
"commandLineArgs": "salvage strat3 \"Z:\\Persönliches\\Satellitescommunity\\Skyscraper Test Fixture\\105.5E_4169.263_H_5237_(2026-04-24 12.36.13)_dump.ts\"",
|
||||
"commandLineArgs": "salvage strat1 \"C:\\Users\\Sascha Schiemann\\Downloads\\65.0W_11304.256_V_30000_(2026-05-17 09.44.02)_dump.ts\"",
|
||||
"remoteDebugEnabled": false
|
||||
},
|
||||
"Container (Dockerfile)": {
|
||||
|
||||
@ -1744,6 +1744,7 @@ namespace skyscraper5.Skyscraper.Scraper
|
||||
public void OnIpDatagram(int pid, byte[] payload)
|
||||
{
|
||||
UiJunction?.EnableUiFeature(SkyscraperUiFeature.IpTrafficAnalysis);
|
||||
TeiOnOffFilter.SetExempt(pid);
|
||||
if (ipTrafficHandler == null)
|
||||
{
|
||||
StorageConnectionManager storageConnectionManager = StorageConnectionManager.GetInstance();
|
||||
@ -3008,6 +3009,7 @@ namespace skyscraper5.Skyscraper.Scraper
|
||||
{
|
||||
if (Array.TrueForAll(contents, x => x == 0))
|
||||
return;
|
||||
TeiOnOffFilter.SetExempt(pid);
|
||||
if (etherType <= 1500)
|
||||
{
|
||||
OnLlcFrame((ushort)pid, source, destination, etherType, contents);
|
||||
@ -3108,7 +3110,7 @@ namespace skyscraper5.Skyscraper.Scraper
|
||||
return;
|
||||
}
|
||||
|
||||
ipTrafficHandler.HandleLlcFrame(pid, source, destination, etherType, contents);
|
||||
//ipTrafficHandler.HandleLlcFrame(pid, source, destination, etherType, contents);
|
||||
|
||||
|
||||
MemoryStream llcStream = new MemoryStream(contents, true);
|
||||
|
||||
@ -4,7 +4,7 @@ namespace skyscraper8;
|
||||
|
||||
public class VersionInfo
|
||||
{
|
||||
private const int PUBLIC_RELEASE = 19;
|
||||
private const int PUBLIC_RELEASE = 20;
|
||||
|
||||
public static int GetPublicReleaseNumber()
|
||||
{
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user