summaryrefslogtreecommitdiff
path: root/lib/sockets.h
diff options
context:
space:
mode:
authorSimon Josefsson <simon@josefsson.org>2009-02-09 14:54:23 +0100
committerSimon Josefsson <simon@josefsson.org>2009-02-09 14:54:23 +0100
commitc54ca9a9fab462268deec291f450873905acf226 (patch)
treece99538cd97a82a4c0091401ec03feac6318bdc0 /lib/sockets.h
parente363193cb86bbaf411a1f8e55f8fd42cf7766436 (diff)
downloadgnulib-c54ca9a9fab462268deec291f450873905acf226.tar.gz
sockets: Add gl_fd_to_handle.
Diffstat (limited to 'lib/sockets.h')
-rw-r--r--lib/sockets.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/lib/sockets.h b/lib/sockets.h
index 33348db72d..bf180ac95d 100644
--- a/lib/sockets.h
+++ b/lib/sockets.h
@@ -1,6 +1,6 @@
/* sockets.h - wrappers for Windows socket functions
- Copyright (C) 2008 Free Software Foundation, Inc.
+ Copyright (C) 2008, 2009 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -29,4 +29,17 @@
int gl_sockets_startup (int version);
int gl_sockets_cleanup (void);
+/* This function is useful it you create a socket using gnulib's
+ Winsock wrappers but needs to pass on the socket handle to some
+ other library that only accepts sockets. */
+#if WINDOWS_SOCKETS
+static inline SOCKET
+gl_fd_to_handle (int fd)
+{
+ return _get_osfhandle (fd);
+}
+#else
+#define gl_fd_to_handle(x) (x)
+#endif
+
#endif