Index: chromeos/network/onc/onc_validator.h |
diff --git a/chromeos/network/onc/onc_validator.h b/chromeos/network/onc/onc_validator.h |
index 8d8efeeb47b125d97457cee2d639580b78a23a0c..9655dd16d3365abda0b02f7a1f3f67731793eae0 100644 |
--- a/chromeos/network/onc/onc_validator.h |
+++ b/chromeos/network/onc/onc_validator.h |
@@ -5,6 +5,7 @@ |
#ifndef CHROMEOS_NETWORK_ONC_ONC_VALIDATOR_H_ |
#define CHROMEOS_NETWORK_ONC_ONC_VALIDATOR_H_ |
+#include <set> |
#include <string> |
#include <vector> |
@@ -174,6 +175,14 @@ class CHROMEOS_EXPORT Validator : public Mapper { |
bool RequireField(const base::DictionaryValue& dict, const std::string& key); |
+ // The function checks if the GUID is unique. It returns true if the GUID is |
pneubeck (no reviews)
2014/02/17 16:07:40
nit: remove first sentence. Start with "Returns tr
|
+ // unique or if the GUID is empty (error handled elsewhere) and false |
pneubeck (no reviews)
2014/02/17 16:07:40
empty GUID isn't handled specially in this functio
|
+ // otherwise. The function also adds the GUID to a set in order to identify |
pneubeck (no reviews)
2014/02/17 16:26:20
... or if the field |kGUID| doesn't exist in |dict
|
+ // duplicates. |
+ bool CheckGuidIsUniqueAndAddToSet(const base::DictionaryValue& dict, |
+ const std::string& kGUID, |
+ std::set<std::string> *guids); |
+ |
// Prohibit certificate patterns for device policy ONC so that an unmanaged |
// user won't have a certificate presented for them involuntarily. |
bool IsCertPatternInDevicePolicy(const std::string& cert_type); |
@@ -195,6 +204,14 @@ class CHROMEOS_EXPORT Validator : public Mapper { |
// are stored as strings in decimal notation. |
std::vector<std::string> path_; |
+ // Accumulates all network GUIDs during validation. Used to identify |
+ // duplicate GUIDs. |
+ std::set<std::string> network_guids_; |
+ |
+ // Accumulates all certificate GUIDs during validation. Used to identify |
+ // duplicate GUIDs. |
+ std::set<std::string> certificate_guids_; |
+ |
// Tracks if an error or warning occurred within validation initiated by |
// function ValidateAndRepairObject. |
bool error_or_warning_found_; |