PolicyManager: Add a random number provider.

This patch adds a new provider with a single variable that returns a
random value from /dev/urandom every time it is called. The variable
is exported to all the policy implementations (currently none) in the
policy_manager/all_variables.h file.

BUG=None
TEST=unittests.

Change-Id: I6efdecd0f37f1a706b5a0dfd3a77ac4205e35aa0
Reviewed-on: https://chromium-review.googlesource.com/181537
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Alex Deymo <deymo@chromium.org>
Tested-by: Alex Deymo <deymo@chromium.org>
diff --git a/SConstruct b/SConstruct
index 7e0c30b..df6e8d8 100644
--- a/SConstruct
+++ b/SConstruct
@@ -282,6 +282,8 @@
                    p2p_manager.cc
                    payload_signer.cc
                    payload_state.cc
+                   policy_manager/random_provider.cc
+                   policy_manager/random_vars.cc
                    postinstall_runner_action.cc
                    prefs.cc
                    proxy_resolver.cc
@@ -331,6 +333,7 @@
                             payload_signer_unittest.cc
                             payload_state_unittest.cc
                             policy_manager/generic_variables_unittest.cc
+                            policy_manager/random_provider_unittest.cc
                             postinstall_runner_action_unittest.cc
                             prefs_unittest.cc
                             simple_key_value_store_unittest.cc