From e0c8341b3e4e13778bcde00d477e461ea8e94306 Mon Sep 17 00:00:00 2001 From: Stefan Westerfeld Date: Fri, 22 Apr 2016 18:03:37 +0200 Subject: [PATCH 031/176] RCORE: compile fixes for KUbuntu 16.04/gcc 5.3.1-14ubuntu2 Rapicorn uses isnan(...) and isinf(...) from cmath.h, however on KUbuntu 16.04 it should use std::isnan(...) and std::isinf(...) instead. Patch below. Acked-by: Tim Janik --- rcore/strings.cc | 10 +++++----- rcore/tests/benchrcore.cc | 4 ++-- rcore/tests/strings.cc | 4 ++-- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/rcore/strings.cc b/rcore/strings.cc index d5b0216..8b3bc3f 100644 --- a/rcore/strings.cc +++ b/rcore/strings.cc @@ -437,7 +437,7 @@ static long double libc_strtold (const char *nptr, char **endptr) { const long double result = strtold (nptr, endptr); - if (isnan (result) && std::signbit (result) == 0) + if (std::isnan (result) && std::signbit (result) == 0) { const char *p = nptr; while (isspace (*p)) @@ -500,9 +500,9 @@ string_to_double (const char *dblstring, const char **endptr) String string_from_float (float value) { - if (isnan (value)) + if (std::isnan (value)) return std::signbit (value) ? "-NaN" : "+NaN"; - if (isinf (value)) + if (std::isinf (value)) return std::signbit (value) ? "-Infinity" : "+Infinity"; return string_format ("%.7g", value); } @@ -511,9 +511,9 @@ string_from_float (float value) String string_from_double (double value) { - if (isnan (value)) + if (std::isnan (value)) return std::signbit (value) ? "-NaN" : "+NaN"; - if (isinf (value)) + if (std::isinf (value)) return std::signbit (value) ? "-Infinity" : "+Infinity"; return string_format ("%.17g", value); } diff --git a/rcore/tests/benchrcore.cc b/rcore/tests/benchrcore.cc index 3899a08..12fde16 100644 --- a/rcore/tests/benchrcore.cc +++ b/rcore/tests/benchrcore.cc @@ -188,8 +188,8 @@ test_random_numbers() const double rf = random_frange (989617512, 9876547656); TASSERT (rf >= 989617512 && rf < 9876547656); } - TASSERT (isnan (random_frange (NAN, 1))); - TASSERT (isnan (random_frange (0, NAN))); + TASSERT (std::isnan (random_frange (NAN, 1))); + TASSERT (std::isnan (random_frange (0, NAN))); #if 0 // example penalty paid in random_int64() size_t i, j = 0; for (i = 0; i < 100; i++) diff --git a/rcore/tests/strings.cc b/rcore/tests/strings.cc index 468a6e6..dae3e3d 100644 --- a/rcore/tests/strings.cc +++ b/rcore/tests/strings.cc @@ -311,9 +311,9 @@ string_conversions (void) TCMP (string_to_double ("-0.5"), ==, -0.5); double tfloat; tfloat = string_to_double ("+NAN"); - assert (isnan (tfloat) && std::signbit (tfloat) == 0); + assert (std::isnan (tfloat) && std::signbit (tfloat) == 0); tfloat = string_to_double ("-NAN"); - assert (isnan (tfloat) && std::signbit (tfloat) == 1); + assert (std::isnan (tfloat) && std::signbit (tfloat) == 1); TCMP (string_capitalize ("fOO bar"), ==, "Foo Bar"); TCMP (string_capitalize ("foo BAR BAZ", 2), ==, "Foo Bar BAZ"); } -- 2.9.1 e-receive-secrets): Use it instead of raw 'format' calls. Ludovic Courtès 2020-09-29services: secret-service: Add initial client/server handshake....This allows the client running on the host to know when it's actually connect to the server running in the guest. Failing that, the client would connect right away to QEMU and send secrets even though the server is not running yet in the guest, which is unreliable. * gnu/build/secret-service.scm (secret-service-send-secrets): Add #:handshake-timeout. Read from SOCK an initial message from the server. Return #f on error. (secret-service-receive-secrets): Send 'secret-service-server' message to the client. Close SOCK upon timeout. * gnu/services/virtualization.scm (hurd-vm-shepherd-service): 'start' method returns #f when 'secret-service-send-secrets' returns #f. Ludovic Courtès 2020-09-29secret-service: Fix file port leak in 'secret-service-send-secrets'....* gnu/build/secret-service.scm (secret-service-send-secrets): Use 'call-with-input-file' instead of 'open-input-file'. Ludovic Courtès 2020-09-29secret-service: Add a timeout when waiting for a client....* gnu/build/secret-service.scm (secret-service-receive-secrets) [wait-for-client]: Call 'select' with a 60s timeout before 'accept'. Return #f upon timeout. [read-secrets]: Return FILES on success. Adjust caller of 'wait-for-client' to handle #f. Ludovic Courtès 2020-09-29secret-service: Clarify the origin of messages....* gnu/build/secret-service.scm (secret-service-send-secrets) (secret-service-receive-secrets): Prefix messages by "secret service". Ludovic Courtès 2020-09-01services: Add secret-service-type....This adds a "secret-service" that can be added to a Childhurd VM to receive out-of-band secrets (keys) sent from the host. Co-authored-by: Ludovic Courtès <ludo@gnu.org> * gnu/services/virtualization.scm (secret-service-activation): New procedure. (secret-service-type): New variable. * gnu/build/secret-service.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Jan (janneke) Nieuwenhuizen