From e15f75d1f6e98af836447e2295054415f8dae82e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Luttringer?= Date: Sat, 29 Dec 2007 05:21:45 +0000 Subject: [PATCH] Add daemon code Add log file printing --- sls/trunk/src/database.cc | 3 ++ sls/trunk/src/database.hh | 57 +++++++++++++++++++++++++++++++++++++- sls/trunk/src/option.cc | 18 ++++++++---- sls/trunk/src/option.hh | 1 + sls/trunk/src/server.cc | 33 ++++++++++++++++++++++ sls/trunk/src/server.hh | 23 ++++++++++++++++ sls/trunk/src/sls.cc | 51 ++++++++++++++++++++++++++++------ sls/trunk/src/sls.hh | 58 +-------------------------------------- 8 files changed, 172 insertions(+), 72 deletions(-) diff --git a/sls/trunk/src/database.cc b/sls/trunk/src/database.cc index 12b2c6e..cf41527 100644 --- a/sls/trunk/src/database.cc +++ b/sls/trunk/src/database.cc @@ -47,7 +47,10 @@ void Database::open(const string &path) { load_users_(); load_scripts_(); load_aliases_(); +} +bool Database::opened() const { + return !!db_; } void Database::close() { diff --git a/sls/trunk/src/database.hh b/sls/trunk/src/database.hh index 32132ab..1a03e4b 100644 --- a/sls/trunk/src/database.hh +++ b/sls/trunk/src/database.hh @@ -19,16 +19,71 @@ #ifndef DATABASE_HH # define DATABASE_HH +# include # include # include "sls.hh" -// Data container +// ----------------------------------------------------------------------------- +// Classes +// ----------------------------------------------------------------------------- + +// Host + +struct Host { + string login; + string pass; + string ipv4; + int level; +}; + +typedef std::list Hosts; + +// Group + +struct Group { + string name; + Hosts hosts; +}; + +typedef std::list Groups; + +// User +struct User { + string login; + string pass; + int level; + bool priv; +}; +typedef std::list Users; + +// Script + +struct Script { + string name; + string path; + int level; +}; + +typedef std::list