]> wimlib.net Git - wimlib/blobdiff - src/util.h
check_add_command(): Use WIMLIB_ERR_UNSUPPORTED when appropriate
[wimlib] / src / util.h
index e32496a500ce95c809577d4d88edee9885078dea..3d22cf40101009f5f65722681f87208a0aa55c25 100644 (file)
@@ -279,34 +279,47 @@ wimlib_printf(const tchar *format, ...) FORMAT(printf, 1, 2);
 extern void
 zap_backslashes(tchar *s);
 
+extern tchar *
+canonicalize_wim_path(const tchar *wim_path);
+
+extern tchar *
+canonicalize_fs_path(const tchar *fs_path);
+
 static inline u64
 hash_u64(u64 n)
 {
        return n * 0x9e37fffffffc0001ULL;
 }
 
-typedef int filedes_t;
-
 extern size_t
-full_read(filedes_t fd, void *buf, size_t n);
+full_read(int fd, void *buf, size_t n);
 
 extern size_t
-full_write(filedes_t fd, const void *buf, size_t n);
+full_write(int fd, const void *buf, size_t n);
 
 extern size_t
-full_pread(filedes_t fd, void *buf, size_t nbyte, off_t offset);
+full_pread(int fd, void *buf, size_t nbyte, off_t offset);
 
 extern size_t
-full_pwrite(filedes_t fd, const void *buf, size_t count, off_t offset);
+full_pwrite(int fd, const void *buf, size_t count, off_t offset);
 
+#ifdef __WIN32__
+struct iovec {
+       void *iov_base;
+       size_t iov_len;
+};
+#else
 struct iovec;
+#endif
 
 extern size_t
 full_writev(int fd, struct iovec *iov, int iovcnt);
 
 extern off_t
-filedes_offset(filedes_t fd);
+filedes_offset(int fd);
 
-#define INVALID_FILEDES (-1)
+#ifndef __WIN32__
+#  define O_BINARY 0
+#endif
 
 #endif /* _WIMLIB_UTIL_H */