utimens: cache whether utimensat syscall works
[pspp] / lib / gethostname.c
index ef58a40313a42064235c3c54612573d6d0fda199..35d82068583cb8cb4b096e123477d5d19b265d3c 100644 (file)
@@ -64,7 +64,7 @@ gethostname (char *name, size_t len)
    - gethostname() requires linking with -lws2_32.
    - GetComputerName() does not return the right kind of hostname.
    - GetComputerNameEx(ComputerNameDnsHostname,...) returns the right hostname,
-     but it hard to use portably:
+     but it is hard to use portably:
        - It requires defining _WIN32_WINNT to at least 0x0500.
        - With mingw, it also requires
          "#define GetComputerNameEx GetComputerNameExA".
@@ -76,9 +76,14 @@ gethostname (char *name, size_t len)
 /* Get winsock2.h. */
 #include <unistd.h>
 
+/* Get INT_MAX.  */
+#include <limits.h>
+
 /* Get set_winsock_errno. */
 #include "w32sock.h"
 
+#include "sockets.h"
+
 #undef gethostname
 
 int
@@ -88,6 +93,7 @@ rpl_gethostname (char *name, size_t len)
 
   if (len > INT_MAX)
     len = INT_MAX;
+  gl_sockets_startup (SOCKETS_1_1);
   r = gethostname (name, (int) len);
   if (r < 0)
     set_winsock_errno ();