Commit Graph
51 Commits
Author SHA1 Message Date
Carl Johnsen f8e0f4df2b Linux should use helper class for calling scripts, not another implementation of the same functionality 2026-03-12 11:22:40 +01:00
Carl Johnsen 9d9ecca963 Made Linux native library calls compile like the Mac one for multiple architectures. 2026-03-12 08:45:47 +00:00
Carl Johnsen 41e811aac4 Added shortcut return 0 for when a request to disk is of size 0 2026-03-12 08:51:26 +01:00
Carl Johnsen 0be0aa227b Mac doesn't have O_DIRECT, but it has F_NOCACHE 2026-03-12 06:23:26 +01:00
Carl Johnsen 64aacdabf2 Windows' WriteBytesAsync returned incorrect number of bytes 2026-03-11 15:33:20 +01:00
Carl Johnsen 5b52eae0bc Made Windows handle unaligned read and write 2026-03-11 15:10:38 +01:00
Carl Johnsen dac373a03f Made Mac handle unaligned read and write buffers as well 2026-03-11 15:09:22 +01:00
Carl Johnsen cdc1b49f42 Linux should use the same call to GetPInvokeErrorMessage() as Mac 2026-03-11 15:08:38 +01:00
Carl Johnsen fabff9828a Properly handled unaligned read/write in Linux disk accesses 2026-03-11 09:06:02 +00:00
Carl Johnsen 62c2244faf Reordered interface definitions for a more structured order 2026-03-11 08:16:29 +00:00
Carl Johnsen 623a6b1cf5 Updated the Linux disk interface to match the new interface 2026-03-10 08:59:49 +00:00
Carl Johnsen f64ee59111 Merge branch 'master' into feature/full-disk-linux 2026-03-10 08:28:41 +00:00
Carl Johnsen b627ea87c9 Changed from PInvoke call to get error messages to the Marshal library call that does the same 2026-03-05 18:11:53 +01:00
Carl Johnsen 298f916e8d Shift to plist for all diskutil commands to alleviate localization and other human-readable-related parsing errors 2026-03-05 17:42:24 +01:00
Carl Johnsen 222ec0433a Using constants rather than copied hardcoded strings 2026-03-05 16:08:32 +01:00
Carl Johnsen ca1fb3ac9b Restructured the DiskImage project to lift the OS specific disk listings to the disk interface and to centralize the functionality for running external processes 2026-03-05 15:30:36 +01:00
Carl Johnsen 5fd62b0fc2 Made the Mac system library wrapper a precompiled file that is copied alongside referencing projects output folder 2026-03-05 13:28:54 +01:00
Carl Johnsen ad66e7029d 'Disk has mounted partitions' check should only be made on drives where write access is requested 2026-03-02 15:16:43 +00:00
Carl Johnsen 73404adb17 Made the Linux disk interface throw an exception when trying to restore to a device that has mounted partitions 2026-03-02 13:50:39 +00:00
Carl Johnsen 0252cf0bd4 Drive should be opened using O_DIRECT 2026-03-02 13:35:51 +00:00
Carl Johnsen 6b1331fd42 Fixed Linux read and write to utilize aligned buffer 2026-03-02 09:31:35 +00:00
Carl Johnsen 8c0d9de080 First implementation of Linux raw disk support 2026-03-01 11:09:22 +01:00
Carl Johnsen 18d8a41701 Added Linux libc wrapper 2026-03-01 11:09:07 +01:00
Carl Johnsen 1fc37ab165 Incorrectly unmounted the target drive on every restore to a Mac disk 2026-02-24 09:49:03 +01:00
Carl Johnsen 61fc0a5e39 F_FULLSYNC doesn't apply to non-filesystem file descriptors 2026-02-23 20:28:08 +01:00
Carl Johnsen 90f2f6d2b1 Renamed the libSystem wrapper as other variadic system functions may be needed 2026-02-23 20:24:31 +01:00
Carl Johnsen 7e72f2682a ioctl request was incorrect 2026-02-23 11:48:59 +01:00
Carl Johnsen eb9f2b224c Partial keyword needed for PInvoke 2026-02-23 11:48:59 +01:00
Carl Johnsen 21eff8762c Added a wrapper to MacOS system libraries using variadic arguments. 2026-02-23 11:48:59 +01:00
Carl Johnsen 1cc3a0cdb2 Used newer LibraryImport instead of DllImport 2026-02-23 11:48:59 +01:00
Carl Johnsen 87fe9c6df3 Added errno error messages 2026-02-23 11:48:59 +01:00
Carl Johnsen 6c5351074a Initial MacOS implementation using libc through PInvoke 2026-02-23 11:48:59 +01:00
Kenneth Skovhede 22c4f585ef Minor adjustments for WebUI picker 2026-02-20 15:29:25 +01:00
Carl Johnsen 454dffc70e Added additional check for the requested disk number during auto unmounting. 2026-02-19 18:17:55 +01:00
Carl Johnsen 3d6e8f3db5 Changed disk image specific classes to being internal, so they're not accessed externally. 2026-02-19 18:16:36 +01:00
Carl Johnsen 53aa494f47 Fixed auto mount powershell script 2026-02-16 11:26:23 +01:00
Carl Johnsen ce67996823 Added auto unmount option for disk image restore 2026-02-16 10:03:10 +01:00
Carl Johnsen e3caf5401d Added Windows I/O write error hints 2026-02-16 09:12:01 +01:00
Carl Johnsen b52e0cfcda Changed to pooled buffer allocations to improve performance 2026-02-15 14:47:07 +01:00
Carl Johnsen 268a94d7fa Added reusable buffers and zero copy reads 2026-02-15 13:13:01 +01:00
Carl Johnsen 4845c22233 Added docstrings 2026-02-15 12:45:59 +01:00
Carl Johnsen cf9eb24254 Added bound checking to raw disk read for better error messages 2026-02-13 16:42:09 +01:00
Carl Johnsen 79c4cec029 Handled the access denied on flushing during reading of a disk 2026-02-13 16:41:46 +01:00
Carl Johnsen 377d638750 Fixed a bug where an aligned write would be incorrect by an additional sector 2026-02-13 09:02:06 +01:00
Carl Johnsen a962c13d10 Added unaligned writes for Windows disks 2026-02-13 06:57:29 +01:00
Carl Johnsen 927a138847 Added more descriptive error messages on Windows disks 2026-02-13 06:56:59 +01:00
Carl Johnsen 186b6b4b93 More detailed windows error messages. The first restore has been performed! 2026-02-12 13:17:28 +01:00
Carl Johnsen 7a71dc3e31 First implementation of disk image restore 2026-02-06 06:05:34 +01:00
Carl Johnsen 10ca7045da Handled platform-specific functionality warning. 2026-02-04 11:14:01 +01:00
Carl Johnsen fdf778da71 Renamed namespace to follow folder restructuring 2026-02-04 11:13:44 +01:00