aboutsummaryrefslogtreecommitdiffstats
path: root/src/interfaces
diff options
context:
space:
mode:
authorkremlin <ian@kremlin.cc>2014-06-22 14:11:25 +0800
committerkremlin <ian@kremlin.cc>2014-06-22 14:11:25 +0800
commit1cd5e6fecdb03d2a3611f72fdc6021cbdf998afc (patch)
treeae0d5dd01973fcb9d5210eb8cd5300af9b9931ab /src/interfaces
parentfc45cad95837cd38432b6ab73c27b22ac28ee23d (diff)
downloadsystembsd-1cd5e6fecdb03d2a3611f72fdc6021cbdf998afc.tar
systembsd-1cd5e6fecdb03d2a3611f72fdc6021cbdf998afc.tar.gz
systembsd-1cd5e6fecdb03d2a3611f72fdc6021cbdf998afc.tar.bz2
systembsd-1cd5e6fecdb03d2a3611f72fdc6021cbdf998afc.tar.lz
systembsd-1cd5e6fecdb03d2a3611f72fdc6021cbdf998afc.tar.xz
systembsd-1cd5e6fecdb03d2a3611f72fdc6021cbdf998afc.tar.zst
systembsd-1cd5e6fecdb03d2a3611f72fdc6021cbdf998afc.zip
change buffer size for gethostname() to HOST_NAME_MAX to avoid accidently truncating the terminating byte on systems that handle gethostname() poorly
Diffstat (limited to 'src/interfaces')
-rw-r--r--src/interfaces/hostnamed/hostnamed.c74
1 files changed, 37 insertions, 37 deletions
diff --git a/src/interfaces/hostnamed/hostnamed.c b/src/interfaces/hostnamed/hostnamed.c
index 0cacc41..522d750 100644
--- a/src/interfaces/hostnamed/hostnamed.c
+++ b/src/interfaces/hostnamed/hostnamed.c
@@ -27,68 +27,68 @@ GPtrArray *hostnamed_freeable;
GDBusNodeInfo *spect_data;
static void on_bus_acquired(GDBusConnection *conn,
- const gchar *name,
- gpointer user_data) {
+ const gchar *name,
+ gpointer user_data) {
- GError *err;
+ GError *err;
- g_print("got bus, name: %s\n", name);
+ g_print("got bus, name: %s\n", name);
}
static void on_name_acquired(GDBusConnection *conn,
- const gchar *name,
- gpointer user_data) {
+ const gchar *name,
+ gpointer user_data) {
- g_print("got name %s\n", name);
+ g_print("got name %s\n", name);
}
static void on_name_lost(GDBusConnection *conn,
- const gchar *name,
- gpointer user_data) {
+ const gchar *name,
+ gpointer user_data) {
- g_print("lost name %s, exiting...", name);
+ g_print("lost name %s, exiting...", name);
- hostnamed_mem_clean();
+ hostnamed_mem_clean();
- //TODO exit through g_main_loop properly...
+ //TODO exit through g_main_loop properly...
}
/* safe call to try and start hostnamed */
GError *hostnamed_init() {
- guint bus_descriptor;
- GError *err = NULL;
- gchar **hostnamed_ispect_xml;
- gchar *hostnamed_joined_xml;
+ guint bus_descriptor;
+ GError *err = NULL;
+ gchar **hostnamed_ispect_xml;
+ gchar *hostnamed_joined_xml;
- hostnamed_freeable = g_ptr_array_new();
- hostnamed_ispect_xml = g_malloc(3000);
+ hostnamed_freeable = g_ptr_array_new();
+ hostnamed_ispect_xml = g_malloc(3000);
- g_file_get_contents("conf/hostnamed-ispect.xml", hostnamed_ispect_xml, NULL, NULL);
- hostnamed_joined_xml = g_strjoinv("\n", hostnamed_ispect_xml);
- spect_data = g_dbus_node_info_new_for_xml(hostnamed_joined_xml, NULL);
+ g_file_get_contents("conf/hostnamed-ispect.xml", hostnamed_ispect_xml, NULL, NULL);
+ hostnamed_joined_xml = g_strjoinv("\n", hostnamed_ispect_xml);
+ spect_data = g_dbus_node_info_new_for_xml(hostnamed_joined_xml, NULL);
- g_free(hostnamed_ispect_xml);
- g_ptr_array_add(hostnamed_freeable, hostnamed_joined_xml);
+ g_free(hostnamed_ispect_xml);
+ g_ptr_array_add(hostnamed_freeable, hostnamed_joined_xml);
- bus_descriptor = g_bus_own_name(G_BUS_TYPE_SYSTEM,
- "org.freedesktop.hostname1",
- G_BUS_NAME_OWNER_FLAGS_NONE,
- on_bus_acquired,
- on_name_acquired,
- on_name_lost,
- NULL,
- NULL);
+ bus_descriptor = g_bus_own_name(G_BUS_TYPE_SYSTEM,
+ "org.freedesktop.hostname1",
+ G_BUS_NAME_OWNER_FLAGS_NONE,
+ on_bus_acquired,
+ on_name_acquired,
+ on_name_lost,
+ NULL,
+ NULL);
- //TODO: malloc and return reference as if a main() closed
- return err;
+ //TODO: malloc and return reference as if a main() closed
+ return err;
}
/* free()'s */
void hostnamed_mem_clean() {
- g_ptr_array_foreach(hostnamed_freeable, (GFunc) g_free, NULL);
+ g_ptr_array_foreach(hostnamed_freeable, (GFunc) g_free, NULL);
}
//TODO figure out DMI variables on obsd
@@ -97,9 +97,9 @@ void hostnamed_mem_clean() {
gchar *filebuf = NULL;
gchar *ret = NULL;
- //TODO vm check
+ //TODO vm check
- #if defined(__i386__) || defined(__x86_64__)
+ #if defined(__i386__) || defined(__x86_64__)
Taken with a few minor changes from systemd's hostnamed.c,
copyright 2011 Lennart Poettering.
@@ -132,7 +132,7 @@ void hostnamed_mem_clean() {
goto out;
}
}
- #endif
+ #endif
ret = g_strdup ("computer");
out:
g_free (filebuf);