#include <wimlib/types.h>
-#define WILDCARD_FLAG_USE_LITERAL_IF_NO_MATCHES 0x00000001
-#define WILDCARD_FLAG_WARN_IF_NO_MATCH 0x00000002
-#define WILDCARD_FLAG_ERROR_IF_NO_MATCH 0x00000004
-#define WILDCARD_FLAG_CASE_INSENSITIVE 0x00000008
+struct wim_dentry;
-extern int
-expand_wildcard_wim_paths(WIMStruct *wim,
- const char * const *wildcards,
- size_t num_wildcards,
- tchar ***expanded_paths_ret,
- size_t *num_expanded_paths_ret,
- u32 flags);
+#define WILDCARD_FLAG_WARN_IF_NO_MATCH 0x00000001
+#define WILDCARD_FLAG_ERROR_IF_NO_MATCH 0x00000002
+#define WILDCARD_FLAG_CASE_INSENSITIVE 0x00000004
-#ifdef __WIN32__
extern int
-fnmatch(const tchar *pattern, const tchar *string, int flags);
-# define FNM_CASEFOLD 0
-#else
-# include <fnmatch.h>
-# ifndef FNM_CASEFOLD
-# warning "FNM_CASEFOLD not defined!"
-# define FNM_CASEFOLD 0
-# endif
-#endif
+expand_wildcard(WIMStruct *wim,
+ const tchar *wildcard_path,
+ int (*consume_dentry)(struct wim_dentry *, void *),
+ void *consume_dentry_ctx,
+ u32 flags);
+
+extern bool
+match_path(const tchar *path, size_t path_nchars,
+ const tchar *wildcard, tchar path_sep, bool prefix_ok);
#endif /* _WIMLIB_WILDCARD_H */