[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r27067 - gnunet/src/testbed
From: |
gnunet |
Subject: |
[GNUnet-SVN] r27067 - gnunet/src/testbed |
Date: |
Wed, 8 May 2013 13:52:44 +0200 |
Author: harsha
Date: 2013-05-08 13:52:44 +0200 (Wed, 08 May 2013)
New Revision: 27067
Modified:
gnunet/src/testbed/gnunet-service-testbed_cpustatus.c
Log:
- limit hostname as gethostname() has undefined behavior when hostname exceeds
- the given length
Modified: gnunet/src/testbed/gnunet-service-testbed_cpustatus.c
===================================================================
--- gnunet/src/testbed/gnunet-service-testbed_cpustatus.c 2013-05-08
11:40:10 UTC (rev 27066)
+++ gnunet/src/testbed/gnunet-service-testbed_cpustatus.c 2013-05-08
11:52:44 UTC (rev 27067)
@@ -642,7 +642,8 @@
char *hostname;
char *stats_dir;
char *fn;
-
+ size_t len;
+
#if MINGW
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
"Load statistics logging now available for windows\n");
@@ -653,17 +654,20 @@
GNUNET_CONFIGURATION_get_value_string (cfg, "testbed",
"STATS_DIR", &stats_dir))
return;
- hostname = GNUNET_malloc (GNUNET_OS_get_hostname_max_length ());
- if (0 != gethostname (hostname, GNUNET_OS_get_hostname_max_length ()))
+ len = GNUNET_OS_get_hostname_max_length ();
+ hostname = GNUNET_malloc (len);
+ if (0 != gethostname (hostname, len))
{
GNUNET_log_strerror (GNUNET_ERROR_TYPE_WARNING, "gethostname");
GNUNET_free (stats_dir);
+ GNUNET_free (hostname);
return;
}
fn = NULL;
- (void) GNUNET_asprintf (&fn, "%s/%s-%jd.dat", stats_dir,
+ (void) GNUNET_asprintf (&fn, "%s/%.*s-%jd.dat", stats_dir, len,
hostname, (intmax_t) getpid());
GNUNET_free (stats_dir);
+ GNUNET_free (hostname);
if (NULL == (bw = GNUNET_BIO_write_open (fn)))
{
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r27067 - gnunet/src/testbed,
gnunet <=