Begrensde PDF-parserbudgetten

Document-scoped parserbudgetten stoppen vijandige of beschadigde invoer vóór tokenconstructie, geaggregeerd tokenwerk, array- of woordenboekgroei of herhaalde onjuist gevormde tokens overmatige resources verbruiken

Compatibiliteitsstandaarden

Stel elke limiet in op nul om die individuele limiet uit te schakelen

Negatieve waarden werpen ERangeError

Strikt beleid

ApplyStrictParserBudgetPolicy selecteert een tokenlimiet van 1 MiB, 100.000 totale tokens, 10.000 containeritems en 8 onjuist gevormde tokens

PDF.ApplyStrictParserBudgetPolicy;
try
  PDF.LoadFromFile(UntrustedFileName);
except
  on E: EHPDFParserBudgetExceeded do
    LogParserRejection(E.Limit, E.Observed, E.Maximum);
end;

ResetParserBudgetPolicy herstelt de compatibiliteitsstandaarden

Falen en telemetrie

Een overschreden limiet werpt EHPDFParserBudgetExceeded met de waarden Limit, Observed en Maximum

THPDFParserBudgetLimit identificeert pblTokenBytes, pblTotalTokens, pblContainerItems of pblBadTokens

GetLastParserBudgetStatistics retourneert een THPDFParserBudgetStatistics-snapshot met geconfigureerde limieten, token- en onjuist-gevormd-token-aantallen, piektoken- en containerformaten, overschrijdingsinformatie en sessiegeldigheid

Budgetuitzonderingen blijven terminally over moderne parsing, traditionele parsing, cross-reference-herstel en per-object-faalisolatie

Prestatiepoort

De Win32-regressiepoort verwerpt een token van 2 MiB in 215 ms bij een procespiek van 34.476.032 bytes en verwerpt een container met één miljoen tokens in 199 ms bij een procespiek van 36.839.424 bytes

Zie ook: ApplyStrictParserBudgetPolicy, ResetParserBudgetPolicy, GetLastParserBudgetStatistics, Schaalbare lading