Sync with CrOS error codes.

Add to ErrorCode and metrics::DownloadErrorCode:

- kInternalLibCurlError
- kUnresolvedHostError
- kUnresolvedHostRecovered

Test: builds
Change-Id: Ibe11c02137860aed583b00b7e05b089ef84edb03
diff --git a/metrics_utils.cc b/metrics_utils.cc
index 070626a..ca3b5c9 100644
--- a/metrics_utils.cc
+++ b/metrics_utils.cc
@@ -43,6 +43,9 @@
       return metrics::AttemptResult::kUpdateSucceededNotActive;
 
     case ErrorCode::kDownloadTransferError:
+    case ErrorCode::kInternalLibCurlError:
+    case ErrorCode::kUnresolvedHostError:
+    case ErrorCode::kUnresolvedHostRecovered:
       return metrics::AttemptResult::kPayloadDownloadError;
 
     case ErrorCode::kDownloadInvalidMetadataSize:
@@ -168,6 +171,13 @@
     case ErrorCode::kDownloadTransferError:
       return metrics::DownloadErrorCode::kDownloadError;
 
+    case ErrorCode::kInternalLibCurlError:
+      return metrics::DownloadErrorCode::kInternalLibCurlError;
+    case ErrorCode::kUnresolvedHostError:
+      return metrics::DownloadErrorCode::kUnresolvedHostError;
+    case ErrorCode::kUnresolvedHostRecovered:
+      return metrics::DownloadErrorCode::kUnresolvedHostRecovered;
+
     // All of these error codes are not related to downloading so break
     // out so we can warn and return InputMalformed.
     case ErrorCode::kSuccess: