LRN: Fix automake deps to allow -j* builds again
[oweals/gnunet.git] / src / util / disk.h
index 96324e120a3f56b5df0d29faa0e264faddcfa5f0..793b8219f6cece87200ec423f81d78e524633699 100644 (file)
      along with GNUnet; see the file COPYING.  If not, write to the\r
      Free Software Foundation, Inc., 59 Temple Place - Suite 330,\r
      Boston, MA 02111-1307, USA.\r
-*/\r
-\r
+*/  \r
+  \r
 /**\r
  * @file util/disk.h\r
  * @brief Internal DISK related helper functions\r
  * @author Nils Durner\r
- */\r
-\r
-\r
+ */ \r
+  \r\r
 #ifndef GNUNET_DISK_H_\r
 #define GNUNET_DISK_H_\r
-\r
+  \r
 #include "gnunet_disk_lib.h"\r
-\r
-\r
+  \r\r
 /**\r
  * Handle used to access files (and pipes).  \r
- */\r
-struct GNUNET_DISK_FileHandle\r
-{\r
+ */ \r
+struct GNUNET_DISK_FileHandle \r
+{
+  \r
 #ifdef MINGW\r
   /**\r
    * File handle under W32.\r
-   */\r
-  HANDLE h;\r
-#else\r
+   */ \r
+  HANDLE h;
+\r
   /**\r
-   * File handle on other OSes.\r
+   * Type
    */\r
-  int fd;\r
-#endif\r
-};\r
-\r
+  enum {GNUNET_DISK_FILE, GNUNET_PIPE} type;\r
 \r
+  /**\r
+   * Structure for overlapped reading (for pipes)\r
+   */\r
+  OVERLAPPED *oOverlapRead;\r
 \r
+  /**\r
+   * Structure for overlapped writing (for pipes)\r
+   */\r
+  OVERLAPPED *oOverlapWrite;\r
+#else\r
+
+  /**\r
+   * File handle on other OSes.\r
+   */ \r
+  int fd;
+   \r
+#endif                          /* \r */
+};
+\r\r\r\r
 /**\r
  * Retrieve OS file handle\r
  *\r
@@ -59,9 +73,8 @@ struct GNUNET_DISK_FileHandle
  * @param dst destination buffer\r
  * @param dst_len length of dst\r
  * @return GNUNET_OK on success, GNUNET_SYSERR otherwise\r
- */\r
-int GNUNET_DISK_internal_file_handle_ (const struct GNUNET_DISK_FileHandle *fh,\r
-                                      void *dst,\r
-                                     size_t dst_len);\r
-\r
-#endif /* GNUNET_DISK_H_ */\r
+ */ \r
+int GNUNET_DISK_internal_file_handle_ (const struct GNUNET_DISK_FileHandle
+                                       *fh, \rvoid *dst, \rsize_t dst_len);
+\r\r
+#endif  /* GNUNET_DISK_H_ */\r