shill: vpn: Implement NSS database interface class.

Use the NSS class to lookup NSS certificates for OpenVPN.

BUG=chromium-os:28792
TEST=unit tests

Change-Id: I2e0c7924d664f375f5b01bc73506e2b91e6f8720
Reviewed-on: https://gerrit.chromium.org/gerrit/19457
Tested-by: Darin Petkov <petkov@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Ready: Darin Petkov <petkov@chromium.org>
diff --git a/shill_daemon.cc b/shill_daemon.cc
index d4782be..5549327 100644
--- a/shill_daemon.cc
+++ b/shill_daemon.cc
@@ -14,6 +14,7 @@
 
 #include "shill/dhcp_provider.h"
 #include "shill/error.h"
+#include "shill/nss.h"
 #include "shill/proxy_factory.h"
 #include "shill/routing_table.h"
 #include "shill/rtnl_handler.h"
@@ -27,6 +28,7 @@
 Daemon::Daemon(Config *config, ControlInterface *control)
     : config_(config),
       control_(control),
+      nss_(NSS::GetInstance()),
       proxy_factory_(ProxyFactory::GetInstance()),
       rtnl_handler_(RTNLHandler::GetInstance()),
       routing_table_(RoutingTable::GetInstance()),
@@ -64,6 +66,7 @@
 
 void Daemon::Start() {
   glib_.TypeInit();
+  nss_->Init(&glib_);
   proxy_factory_->Init();
   rtnl_handler_->Start(&dispatcher_, &sockets_);
   routing_table_->Start();