Closed Bug 1439468 Opened 2 years ago Closed 2 years ago

Add new error codes in the Safe Browsing parser

Categories

(Toolkit :: Safe Browsing, defect, P1)

defect

Tracking

()

RESOLVED FIXED
mozilla60
Tracking Status
firefox60 --- fixed

People

(Reporter: francois, Assigned: francois)

References

Details

Attachments

(1 file)

While looking at the log from bug 1439450, I took a look at this error:

[Parent 22894, URL Classifier] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80004005: file /home/francois/devel/mozilla-unified/toolkit/components/url-classifier/ProtocolParser.cpp, line 869
[Parent 22894, URL Classifier] WARNING: Failed to process one response.: file /home/francois/devel/mozilla-unified/toolkit/components/url-classifier/ProtocolParser.cpp, line 786

Given that NS_ERROR_FAILURE = 0x80004005, it looks like ProcessAdditionOrRemoval() on line 869 (removals) fails here: https://searchfox.org/mozilla-central/rev/0c0ddaa7e859a2b76a56a0e2e9c0de88af166812/toolkit/components/url-classifier/ProtocolParser.cpp#1099

  nsTArray<uint32_t> decoded;
  nsresult rv = DoRiceDeltaDecode(aRemoval.rice_indices(), decoded);
  if (NS_FAILED(rv)) {
    PARSER_LOG(("Failed to decode encoded removal indices."));
    return rv;
  }

In order to make these errors more useful, I could add new error codes:

  NS_ERROR_UC_PARSER_MISSING_PARAM
  NS_ERROR_UC_PARSER_DECODE_FAILURE

There are a few places in the parser where I could use these new error codes.
Comment on attachment 8952531 [details]
Bug 1439468 - Improve error reporting in Safe Browsing protocol parser.

https://reviewboard.mozilla.org/r/221750/#review227846
Attachment #8952531 - Flags: review?(gpascutto) → review+
Pushed by fmarier@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/308f2a530cd1
Improve error reporting in Safe Browsing protocol parser. r=gcp
https://hg.mozilla.org/mozilla-central/rev/308f2a530cd1
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla60
You need to log in before you can comment on or make changes to this bug.