+/*
+ * win32.h - Windows-specific declarations needed by non-Windows-specific files.
+ */
+
#ifndef _WIMLIB_WIN32_H
#define _WIMLIB_WIN32_H
#ifdef __WIN32__
-#include "wimlib/callback.h"
#include "wimlib/types.h"
-#include <direct.h>
-#include <windef.h>
-struct wim_lookup_table_entry;
-struct iovec;
+struct blob_descriptor;
+struct read_blob_callbacks;
+struct windows_file;
-extern int
-read_win32_file_prefix(const struct wim_lookup_table_entry *lte,
- u64 size,
- consume_data_callback_t cb,
- void *ctx_or_buf,
- int _ignored_flags);
+extern struct windows_file *
+clone_windows_file(const struct windows_file *file);
+
+extern void
+free_windows_file(struct windows_file *file);
extern int
-read_win32_encrypted_file_prefix(const struct wim_lookup_table_entry *lte,
- u64 size,
- consume_data_callback_t cb,
- void *ctx_or_buf,
- int _ignored_flags);
+cmp_windows_files(const struct windows_file *file1,
+ const struct windows_file *file2);
+extern int
+read_windows_file_prefix(const struct blob_descriptor *blob, u64 size,
+ const struct read_blob_callbacks *cbs);
-extern void
+extern int
win32_global_init(int init_flags);
extern void
win32_global_cleanup(void);
-#define FNM_PATHNAME 0x1
-#define FNM_NOESCAPE 0x2
-#define FNM_NOMATCH 1
-extern int
-fnmatch(const tchar *pattern, const tchar *string, int flags);
-
extern int
fsync(int fd);
-extern unsigned
-win32_get_number_of_processors(void);
-
extern tchar *
realpath(const tchar *path, tchar *resolved_path);
-typedef enum {
- CODESET
-} nl_item;
-
extern int
win32_rename_replacement(const tchar *oldpath, const tchar *newpath);
extern int
win32_strerror_r_replacement(int errnum, tchar *buf, size_t buflen);
-extern int
-win32_get_file_and_vol_ids(const wchar_t *path, u64 *ino_ret, u64 *dev_ret);
+extern FILE *
+win32_open_logfile(const wchar_t *path);
extern ssize_t
pread(int fd, void *buf, size_t count, off_t offset);
extern ssize_t
pwrite(int fd, const void *buf, size_t count, off_t offset);
-extern ssize_t
-writev(int fd, const struct iovec *iov, int iovcnt);
-
#endif /* __WIN32__ */
#endif /* _WIMLIB_WIN32_H */