#define __GSIGNOND_CONFIG_DB_H_
#define GSIGNOND_CONFIG_DB_SSO "Storage"
-#define GSIGNOND_CONFIG_DB_FILE_SYSTEM_NAME GSIGNOND_CONFIG_DB_SSO \
- "/FileSystemName"
-#define GSIGNOND_CONFIG_DB_SIZE GSIGNOND_CONFIG_DB_SSO \
- "/Size"
-#define GSIGNOND_CONFIG_DB_FILE_SYSTEM_TYPE GSIGNOND_CONFIG_DB_SSO \
- "/FileSystemType"
#define GSIGNOND_CONFIG_DB_SECRET_DB_FILENAME GSIGNOND_CONFIG_DB_SSO \
"/SecretDBFilename"
#define GSIGNOND_CONFIG_DB_METADATA_DB_FILENAME GSIGNOND_CONFIG_DB_SSO \
#define GSIGNOND_CONFIG_GENERAL "General"
#define GSIGNOND_CONFIG_GENERAL_STORAGE_PATH GSIGNOND_CONFIG_GENERAL \
"/StoragePath"
-#define GSIGNOND_CONFIG_GENERAL_LOG_LEVEL GSIGNOND_CONFIG_GENERAL \
- "/LoggingLevel"
#define GSIGNOND_CONFIG_GENERAL_EXTENSIONS_DIR GSIGNOND_CONFIG_GENERAL \
"/ExtensionsDir"
#define GSIGNOND_CONFIG_GENERAL_PLUGINS_DIR GSIGNOND_CONFIG_GENERAL \
#include "gsignond/gsignond-log.h"
#include "gsignond/gsignond-secret-storage.h"
-#define GSIGNOND_DB_SECRET_DEFAULT_DB_FILENAME "secret.db"
-
#define GSIGNOND_SECRET_STORAGE_GET_PRIVATE(obj) \
(G_TYPE_INSTANCE_GET_PRIVATE ((obj),\
GSIGNOND_TYPE_SECRET_STORAGE, \
dir = gsignond_config_get_string (self->config,
GSIGNOND_CONFIG_GENERAL_SECURE_DIR);
if (!dir) {
- DBG("No directory specified in config object for secret db...");
+ ERR ("No directory specified in config object for secret db...");
return FALSE;
}
filename = gsignond_config_get_string (self->config,
GSIGNOND_CONFIG_DB_SECRET_DB_FILENAME);
if (!filename) {
- filename = GSIGNOND_DB_SECRET_DEFAULT_DB_FILENAME;
+ ERR ("Database filename not specified");
+ return FALSE;
}
db_filename = g_build_filename (dir, filename, NULL);
if (!db_filename) {
- DBG("Invalid db filename...");
+ ERR ("Invalid db filename...");
return FALSE;
}
SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE);
g_free (db_filename);
if (!ret) {
- DBG ("Open DB failed");
+ ERR ("Open DB failed");
g_object_unref (self->priv->database);
self->priv->database = NULL;
return FALSE;
#include "gsignond/gsignond-log.h"
#include "gsignond/gsignond-dictionary.h"
+#define GSIGNOND_DB_METADATA_DEFAULT_DB_FILENAME "metadata.db"
+#define GSIGNOND_DB_SECRET_DEFAULT_DB_FILENAME "secret.db"
+
struct _GSignondConfigPrivate
{
gchar *config_file_path;
{
const gchar *e_val = 0;
guint timeout = 0;
- gint level = 0;
e_val = g_getenv ("SSO_DAEMON_TIMEOUT");
if (e_val && (timeout = atoi(e_val)))
GSIGNOND_CONFIG_DBUS_AUTH_SESSION_TIMEOUT,
e_val);
- e_val = g_getenv ("SSO_LOGGING_LEVEL");
- if (e_val && (level = atoi(e_val)))
- gsignond_config_set_string (self,
- GSIGNOND_CONFIG_GENERAL_LOG_LEVEL,
- e_val);
-
e_val = g_getenv ("SSO_PLUGINS_DIR");
if (e_val)
gsignond_config_set_string (self,
default_data_path);
g_free (default_data_path);
+ gsignond_config_set_string (self,
+ GSIGNOND_CONFIG_DB_SECRET_DB_FILENAME,
+ GSIGNOND_DB_SECRET_DEFAULT_DB_FILENAME);
+ gsignond_config_set_string (self,
+ GSIGNOND_CONFIG_DB_METADATA_DB_FILENAME,
+ GSIGNOND_DB_METADATA_DEFAULT_DB_FILENAME);
+
if (!_load_config (self))
WARN ("load configuration failed, using default settings");
# ifdef ENABLE_DEBUG
#include "common/db/gsignond-db-error.h"
#include "gsignond-db-metadata-database.h"
-#define GSIGNOND_DB_METADATA_DEFAULT_DB_FILENAME "metadata.db"
-
#define RETURN_IF_NOT_OPEN(obj, retval) \
if (gsignond_db_sql_database_is_open (obj) == FALSE) { \
GError* last_error = gsignond_db_create_error( \
g_return_val_if_fail (self, FALSE);
if (!filename || strlen (filename) <= 0) {
- filename = GSIGNOND_DB_METADATA_DEFAULT_DB_FILENAME;
+ ERR ("Missing Metadata DB filename");
+ return FALSE;
}
dir = gsignond_config_get_string (self->config,
GSIGNOND_CONFIG_GENERAL_STORAGE_PATH);
if (!dir) {
- DBG ("Invalid Metadata DB directory");
+ ERR ("Invalid Metadata DB directory");
return FALSE;
}
db_filename = g_build_filename (dir, filename, NULL);
if (!db_filename) {
- DBG ("Invalid Metadata DB filename");
+ ERR ("Invalid Metadata DB filename");
return FALSE;
}
dir_created = g_mkdir_with_parents (dir, S_IRWXU);
if (dir_created != 0) {
- DBG ("Metadata DB directory does not exist");
+ ERR ("Metadata DB directory does not exist");
goto _open_exit;
}
};
DBG ("before: real uid %d effective uid %d", getuid (), geteuid ());
- setreuid (-1, getuid());
+ if (setreuid (-1, getuid()))
+ WARN ("setreuid() failed");
DBG ("after: real uid %d effective uid %d", getuid (), geteuid ());
DBG ("before: real gid %d effective gid %d", getgid (), getegid ());
- setregid (-1, getgid());
+ if (setregid (-1, getgid()))
+ WARN ("setregid() failed");
DBG ("after: real gid %d effective gid %d", getgid (), getegid ());
#if !GLIB_CHECK_VERSION (2, 36, 0)
DBG ("mount options: %s", mntopts);
uid_t uid = getuid ();
gid_t gid = getgid ();
- setreuid (-1, 0);
- setregid (-1, 0);
+ if (setreuid (-1, 0))
+ WARN ("setreuid() failed");
+ if (setregid (-1, 0))
+ WARN ("setregid() failed");
DBG ("perform mount %s -> %s", priv->cdir, parent->location);
if (mount (priv->cdir, parent->location,
"ecryptfs", MS_NOSUID | MS_NODEV, mntopts)) {
_mount_exit:
g_free (mntopts);
- setreuid (-1, uid);
- setregid (-1, gid);
+ if (setreuid (-1, uid))
+ WARN ("setreuid() failed");
+ if (setregid (-1, gid))
+ WARN ("setregid() failed");
return retval;
}