helper exception callback lesser parameters
[oweals/gnunet.git] / src / include / gnunet_network_lib.h
index a14d5f0bb6fd0d87c2d3287071dfe3a88c2e6084..762e2faca36c361578aaf8d0236ebf3bffec8e0e 100644 (file)
@@ -68,11 +68,23 @@ struct GNUNET_NETWORK_FDSet
 };
 
 
-
 #include "gnunet_disk_lib.h"
 #include "gnunet_time_lib.h"
 
 
+/**
+ * Given a unixpath that is too long (larger than UNIX_PATH_MAX),
+ * shorten it to an acceptable length while keeping it unique
+ * and making sure it remains a valid filename (if possible).
+ *
+ * @param unixpath long path, will be freed (or same pointer returned
+ *        with moved 0-termination).
+ * @return shortened unixpath, NULL on error
+ */
+char *
+GNUNET_NETWORK_shorten_unixpath (char *unixpath);
+
+
 /**
  * Accept a new connection on a socket.  Configure it for non-blocking
  * IO and mark it as non-inheritable to child processes (set the
@@ -373,6 +385,26 @@ int
 GNUNET_NETWORK_get_fd (struct GNUNET_NETWORK_Handle *desc);
 
 
+/**
+ * Return the sockaddr for this network handle
+ *
+ * @param desc wrapper to process
+ * @return POSIX file descriptor
+ */
+struct sockaddr*
+GNUNET_NETWORK_get_addr (struct GNUNET_NETWORK_Handle *desc);
+
+
+/**
+ * Return sockaddr length for this network handle
+ *
+ * @param desc wrapper to process
+ * @return socklen_t for sockaddr
+ */
+socklen_t
+GNUNET_NETWORK_get_addrlen (struct GNUNET_NETWORK_Handle *desc);
+
+
 /**
  * Copy a native fd set
  * @param to destination