Add initial sketch to shill repository
BUG=chromium-os:12066
TEST=command-line
Change-Id: If1d01bf78fca80de4cc8a26e096e1967293d9738
Review URL: http://codereview.chromium.org//6575006
diff --git a/shill_daemon.cc b/shill_daemon.cc
new file mode 100644
index 0000000..91175bc
--- /dev/null
+++ b/shill_daemon.cc
@@ -0,0 +1,43 @@
+// Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include <stdio.h>
+#include <glib.h>
+
+#include <algorithm>
+#include <string>
+#include <vector>
+
+#include "shill/shill_logging.h"
+#include "shill/shill_daemon.h"
+#include "shill/control_interface.h"
+#include "shill/dbus_control.h"
+
+using std::max;
+using std::min;
+using std::string;
+using std::vector;
+
+namespace shill {
+
+static const char kTaggedFilePath[] = "/var/lib/shill";
+
+// Daemon: Main for connection manager. Starts main process and holds event
+// loop.
+
+Daemon::Daemon(Config *config, ControlInterface *control)
+ : config_(config),
+ control_(control),
+ manager_(control_, &dispatcher_) { }
+Daemon::~Daemon() {}
+
+
+void Daemon::Run() {
+ GMainLoop* loop = g_main_loop_new(NULL, false);
+ SHILL_LOG(INFO, SHILL_LOG_DAEMON) << "Running main loop.";
+ g_main_loop_run(loop);
+}
+
+
+} // namespace shill