+const struct apply_operations win32_apply_ops = {
+ .name = L"Win32",
+
+ .target_is_root = win32_path_is_root_of_drive,
+ .start_extract = win32_start_extract,
+ .finish_extract = win32_finish_extract,
+ .abort_extract = win32_finish_extract,
+ .create_file = win32_create_file,
+ .create_directory = win32_create_directory,
+ .create_hardlink = win32_create_hardlink,
+ .create_symlink = win32_create_symlink,
+ .extract_unnamed_stream = win32_extract_unnamed_stream,
+ .extract_named_stream = win32_extract_named_stream,
+ .extract_encrypted_stream = win32_extract_encrypted_stream,
+ .set_file_attributes = win32_set_file_attributes,
+ .set_reparse_data = win32_set_reparse_data,
+ .set_short_name = win32_set_short_name,
+ .set_security_descriptor = win32_set_security_descriptor,
+ .set_timestamps = win32_set_timestamps,
+
+ .path_prefix = L"\\\\?\\",
+ .path_prefix_nchars = 4,
+ .path_separator = L'\\',
+ .path_max = 32768,
+
+ .requires_realtarget_in_paths = 1,
+ .realpath_works_on_nonexisting_files = 1,
+ .root_directory_is_special = 1,
+ .requires_final_set_attributes_pass = 1,
+ .extract_encrypted_stream_creates_file = 1,
+ .requires_short_name_reordering = 1, /* TODO: check if this is really needed */
+};
+