64 lines
1.7 KiB
Diff
64 lines
1.7 KiB
Diff
diff -up ypbind-mt-1.20.4/src/ypbind-mt.c.network ypbind-mt-1.20.4/src/ypbind-mt.c
|
|
--- ypbind-mt-1.20.4/src/ypbind-mt.c.network 2009-10-29 11:53:00.265296485 +0100
|
|
+++ ypbind-mt-1.20.4/src/ypbind-mt.c 2009-10-29 11:53:00.269297063 +0100
|
|
@@ -297,6 +299,25 @@ load_config (int check_syntax)
|
|
return 0;
|
|
}
|
|
|
|
+
|
|
+/* Load the configuration, exiting if there's an error */
|
|
+static void
|
|
+load_config_or_exit(void)
|
|
+{
|
|
+ if (load_config (0) != 0)
|
|
+ {
|
|
+ fputs (_("No NIS server and no -broadcast option specified.\n"),
|
|
+ stderr);
|
|
+ fprintf (stderr,
|
|
+ _("Add a NIS server to the %s configuration file,\n"),
|
|
+ configfile);
|
|
+ fputs (_("or start ypbind with the -broadcast option.\n"),
|
|
+ stderr);
|
|
+ exit (1);
|
|
+ }
|
|
+}
|
|
+
|
|
+
|
|
/* Create a pidfile on startup */
|
|
static void
|
|
create_pidfile (void)
|
|
@@ -765,18 +803,22 @@ main (int argc, char **argv)
|
|
BINDINGDIR, strerror (errno));
|
|
exit (1);
|
|
}
|
|
- /*
|
|
- * Load config if we're not using DBUS/NetworkManager, since we
|
|
- * assume the network is available now. If we're using NetworkManager,
|
|
- * the config will be loaded when a network becomes available.
|
|
- */
|
|
- if (disable_dbus)
|
|
- {
|
|
- /* Load the configuration. If the load fails, set up broadcast mode. */
|
|
- if (!use_broadcast && (load_config (0) != 0))
|
|
- use_broadcast = 1;
|
|
+
|
|
+ if (!use_broadcast)
|
|
+ {
|
|
+#ifdef USE_DBUS_NM
|
|
+ /* If we don't use DBUS, exit with an error if we cannot load the
|
|
+ config. Else load the config, maybe there is a network already
|
|
+ running. */
|
|
+ if (disable_dbus)
|
|
+ load_config_or_exit ();
|
|
+ else
|
|
+ load_config (0);
|
|
+#else
|
|
+ load_config_or_exit ();
|
|
+#endif
|
|
}
|
|
- if (use_broadcast)
|
|
+ else
|
|
add_server (domain, NULL, 0);
|
|
|
|
unlink_bindingdir ();
|