address_len);
+/**
+ * Box a native socket (and check that it is a socket).
+ *
+ * @param fd socket to box
+ * @return NULL on error (including not supported on target platform)
+ */
+struct GNUNET_NETWORK_Handle *
+GNUNET_NETWORK_socket_box_native (int fd);
+
+
/**
* Bind to a connected socket
*
ssize_t GNUNET_NETWORK_socket_send (const struct GNUNET_NETWORK_Handle *desc,
const void *buffer, size_t length);
+
/**
* Send data to a particular destination (always non-blocking).
* This function only works for UDP sockets.
const struct GNUNET_NETWORK_Handle *desc);
+#ifdef __MINGW32__
+/* TODO: maybe #ifdef WINDOWS? -ndurner */
+/**
+ * Add a W32 file handle to the fd set
+ * @param fds fd set
+ * @param h the file handle to add
+ */
+void
+GNUNET_NETWORK_fdset_handle_set_native_w32_handle (struct GNUNET_NETWORK_FDSet *fds,
+ HANDLE h);
+#endif
+
+
/**
* Check whether a socket is part of the fd set
* @param fds fd set
void GNUNET_NETWORK_fdset_set_native (struct GNUNET_NETWORK_FDSet *to,
int nfd);
+
+/**
+ * Test native fd in a set
+ *
+ * @param to set to test, NULL for empty set
+ * @param nfd native FD to test, -1 for none
+ * @return GNUNET_YES if to contains nfd
+ */
+int
+GNUNET_NETWORK_fdset_test_native (const struct GNUNET_NETWORK_FDSet *to,
+ int nfd);
+
+
/**
* Add a file handle to the fd set
* @param fds fd set