X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fusers.c;h=d0bd63cdb540ef2bc8d5e145e386f2590e604ef7;hb=9bbf7d748e3fc79ac66b496cfda50706228e7c2b;hp=afe26e1e27fc27a3d155b135b56d3571290bcd46;hpb=e6fc1600ee7bcde75c95db9b1f617caf78fc4c6a;p=collectd.git diff --git a/src/users.c b/src/users.c index afe26e1e..d0bd63cd 100644 --- a/src/users.c +++ b/src/users.c @@ -23,6 +23,10 @@ #include "common.h" #include "plugin.h" +#if HAVE_STATGRAB_H +# include +#endif /* HAVE_STATGRAB_H */ + #if HAVE_UTMPX_H # include /* #endif HAVE_UTMPX_H */ @@ -45,8 +49,8 @@ static void users_submit (gauge_t value) vl.values = values; vl.values_len = 1; vl.time = time (NULL); - strcpy (vl.host, hostname_g); - strcpy (vl.plugin, "users"); + sstrncpy (vl.host, hostname_g, sizeof (vl.host)); + sstrncpy (vl.plugin, "users", sizeof (vl.plugin)); plugin_dispatch_values ("users", &vl); } /* void users_submit */ @@ -89,6 +93,16 @@ static int users_read (void) users_submit (users); /* #endif HAVE_GETUTENT */ +#elif HAVE_LIBSTATGRAB + sg_user_stats *us; + + us = sg_get_user_stats (); + if (us == NULL) + return (-1); + + users_submit ((gauge_t) us->num_entries); +/* #endif HAVE_LIBSTATGRAB */ + #else # error "No applicable input method." #endif