X-Git-Url: https://uglyman.kremlin.cc/gitweb/gitweb.cgi?p=systembsd.git;a=blobdiff_plain;f=src%2Fmain.c;h=3c30ae041be0bafdb6540fcca353d682187a6b50;hp=2ff00fddfad06945dcf15802bfa0ecf0ddc8b4a8;hb=5b005882b2af5868261a01a386028291516aabb0;hpb=ea207ed3d155cde4001063c981f7a263c47daf64 diff --git a/src/main.c b/src/main.c index 2ff00fd..3c30ae0 100644 --- a/src/main.c +++ b/src/main.c @@ -1,7 +1,58 @@ -#include "modules/hostnamed/hostnamed.c" +/* + * 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. + */ + +#include +#include +#include +#include + +#include "config.c" + +#include "interfaces/hostnamed/hostnamed.c" +#include "interfaces/localed/localed.c" +#include "interfaces/timedated/timedated.c" +#include "interfaces/logind/logind.c" + +gboolean systemd_utils_init() { + if(!config_init()) { + gchar *tmp; + tmp = "/etc/systemd_compat.conf"; + + g_printf("FAILED to open config %s! did you `make install`?\n", tmp); + return FALSE; + } + return TRUE; +} int main() { - hostnamed_init(); - for(;;) {} - return 0; + + GMainLoop *mloop; + + 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(); + localed_init(); + + mloop = g_main_loop_new(NULL, TRUE); + + g_main_loop_run(mloop); + g_main_loop_unref(mloop); + + return 0; }