X-Git-Url: https://uglyman.kremlin.cc/gitweb/gitweb.cgi?a=blobdiff_plain;f=src%2Fmain.c;h=56d3967faecf09bb106364a8863d16281e1cdf30;hb=baa40e286883ba226c5dde2ff43a8123cc621020;hp=d9a6ef960884a633bce6a958265dd1129bdf3da9;hpb=1c38000a88055e0893fb0b6b41a490109348b950;p=systembsd.git diff --git a/src/main.c b/src/main.c index d9a6ef9..56d3967 100644 --- a/src/main.c +++ b/src/main.c @@ -1,43 +1,57 @@ +/* + * Copyright (c) 2014 Ian Sutton + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + /* debugging */ #define INSTALL 1 //#define NO_BUILTIN_XML 1 /* end debugging */ #include +#include +#include +#include #include "config.c" #include "interfaces/hostnamed/hostnamed.c" -//#include "main.h" - -#ifdef INSTALL -static gboolean install_conf() { - -} -#endif +//#include "main/h" -int main() { - //TODO cleanup +gboolean systemd_utils_init() { #ifdef INSTALL if(!config_init()) { g_printf("%s\n", "FAILED to install configs in /etc/!"); - return 1; + return FALSE; } #endif + return TRUE; +} - //TODO cleanup - #if (defined NO_BUILTIN_XML && defined INSTALL) - if(!config_init()) { - g_printf("%s\n", "FAILED to install xml configs!"); - return 1; - } - #else - #endif +int main() { - GMainLoop *mloop = NULL; + GMainLoop *mloop; - mloop = g_main_loop_new(NULL, FALSE); + if(!systemd_utils_init()) { + g_printf("failed to init, are you root?\n"); + return 1; //TODO errno properly. grep for all "return 1;"s, not TODO'ing each one + } + hostnamed_init(); + + mloop = g_main_loop_new(NULL, TRUE); + g_main_loop_run(mloop); + g_main_loop_unref(mloop); return 0; } -