Tyler Dauwalder
e9927e2b64
- Switched from USER to _KERNEL_MODE for detecting user vs. kernel versions.
...
- Added UDF 1.50 support code
- Added empty functions to file_icb_entry() to make its interface compatible
with extended_file_icb_entry().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6186 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-20 06:22:25 +00:00
Tyler Dauwalder
f1ee5f11af
- Added check of udf revision.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6185 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-20 06:20:26 +00:00
Tyler Dauwalder
8c32c26731
- Actually set Cs0 length in Cs0 SetTo() now.
...
- Updated constructors/SetTo()s that take array<char>
params to expect d-strings instead of Cs0 strings.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6088 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-15 01:12:45 +00:00
Tyler Dauwalder
3bfc8fdd89
Added check for udf implementation use descriptor in vds.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-15 01:11:37 +00:00
Tyler Dauwalder
301e9f216f
#if'd out debug code in udf_release_vnode() when DEBUG_TO_FILE is enabled.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6021 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-11 21:56:46 +00:00
Tyler Dauwalder
bb4462fd33
Added call to remove_cached_device_blocks() in _Unset().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6020 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-11 21:55:49 +00:00
Tyler Dauwalder
161f777667
Fixed a warning.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-11 21:55:22 +00:00
Tyler Dauwalder
ab2b3ca0c9
Now actually copies utf8 string in utf8 SetTo().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-11 05:41:22 +00:00
Tyler Dauwalder
9a043bf95f
Added:
...
- struct logical_volume_info
- struct udf_id_suffix
- kLogicalVolumeInfoId constant
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-10 09:32:48 +00:00
Tyler Dauwalder
80b849abc7
- Added flags and unique_id fields to file_id_descriptor.
...
- Fixed implementation_use_length field in file_id_descriptor.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5998 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-09 09:58:30 +00:00
Tyler Dauwalder
10186d5dda
Fixed a myriad of stupid errors, oversights, and miscalculations caught by Phillips' handy-dandy UDF verifier.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5969 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-07 08:27:03 +00:00
Tyler Dauwalder
b2322fd1e0
Added check for existence of unallocated space descriptor in volume descriptor sequence.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5967 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-07 08:25:55 +00:00
Tyler Dauwalder
57c80a0c50
Added DString.cpp.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5966 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-07 08:25:24 +00:00
Tyler Dauwalder
3871cd303a
Initial checkin. Class for creating UDF fixed-length-field d-strings.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5965 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-07 08:24:55 +00:00
Tyler Dauwalder
b3a4ae39dd
- Further rounded out logical_volume_integrity_descriptor
...
- Fixed some broken pointer arithmetic.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5927 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-06 06:08:50 +00:00
Tyler Dauwalder
8d3a43fbd0
Messed with the #includes, which still need some cleaning up.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5926 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-06 06:05:58 +00:00
Tyler Dauwalder
f50008f9ba
Switched back to new(nothrow), now that it works properly again.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5925 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-06 06:05:31 +00:00
Tyler Dauwalder
495b7e4743
Added verification of logical volume integrity sequence.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-04 09:59:20 +00:00
Tyler Dauwalder
663f03ef0e
Undid switch to new(nothrow), which I'd thought compiled properly but apparently didn't.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-04 09:58:22 +00:00
Tyler Dauwalder
335fd88306
Polished up logical_volume_integrity_descriptor.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5897 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-04 09:57:30 +00:00
Tyler Dauwalder
2cf79bd296
Moved block_for_offset() from Utils to UdfBuilder.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5896 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-04 09:56:45 +00:00
Tyler Dauwalder
2b215e7a92
- Fixed 16-bit compressed unicode string creation, which was apparently
...
seg-faulting due to unaligned memory accesses.
- Switched from new to new(nothrow).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5880 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-03 01:59:33 +00:00
Tyler Dauwalder
e376a854f6
Turned off block-cache-disabling for userland mode.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5861 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-02 02:54:25 +00:00
Tyler Dauwalder
533f9c6b62
Added block_for_offset()
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5860 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-02 02:54:01 +00:00
Tyler Dauwalder
4f0e6a75b3
Added partial allocation descriptor dumps in icbs.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5859 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-02 02:51:16 +00:00
Tyler Dauwalder
5198a15dbc
Replaced user- and kernel-specific includes I accidentally removed previously.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-02 02:50:31 +00:00
Tyler Dauwalder
4224781a31
More debugging output.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5857 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-02 02:49:52 +00:00
Tyler Dauwalder
8054ebed90
Removed unneeded "#include <stdio.h>"
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5856 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-02 02:49:22 +00:00
Tyler Dauwalder
ef663589e6
- Added call to close device which is opened briefly in udf_mount()
...
- Volume object is now deleted when volume is unmounted
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5683 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-17 10:05:15 +00:00
Tyler Dauwalder
237ced1168
- Remembered that -1 means uninitialized device, not 0...
...
- Added call to close device on destruction
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5682 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-17 10:04:05 +00:00
Tyler Dauwalder
e631ed5131
- Major const update for [extended_]file_icb_entry structs
...
- Added [extended_]file_icb_entry::dump() functions
- Added file access permissions enum
- Added logical_block_address constructor
- Added icb strategy types enum
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5681 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-17 10:02:44 +00:00
Tyler Dauwalder
de76a7ebe6
Added file entry dumps.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5680 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-17 10:00:33 +00:00
Tyler Dauwalder
17b66e62ef
Fixed stupid oversight while checking file set descriptor in Mount()
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5656 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-12 06:37:29 +00:00
Tyler Dauwalder
d1a0387efb
- Added long_address constructor.
...
- Polished up file_set_descriptor a bit.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5655 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-12 06:36:27 +00:00
Tyler Dauwalder
d8b4553a67
Added some missing error checking in Mount() when investigating file set descriptor
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5646 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-11 06:09:27 +00:00
Tyler Dauwalder
730ba00a62
- Added domain_id_suffix struct.
...
- Added domain flags enum.
- Added domain_id_suffix constructor for entity_id
- Added kLogicalVolumeDescriptorBaseSize
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5645 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-11 06:08:31 +00:00
Tyler Dauwalder
b68d3ebe4a
Removed a redundant logical volume descriptor dump.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5644 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-11 06:07:17 +00:00
Tyler Dauwalder
29d3fced6a
Added extra debugging output.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5643 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-11 06:06:49 +00:00
Tyler Dauwalder
003d4e83df
Fixed timestamp to correctly use localtime(), thanks to mphipps. :-)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5633 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-09 00:45:06 +00:00
Tyler Dauwalder
9b438e897c
- Added implementation_id_suffix struct.
...
- Added operating system class and identifier enums
- Fixed timestamp::timezone() for negative timezones.
- Added timestamp(time_t) constructor.
- Added Udf::kImplementationId constant.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-07 08:22:11 +00:00
Tyler Dauwalder
cd0f0e996d
- Added utf8 to unicode support thanks to Axel. :-)
...
- Rounded out new double-character-set support.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-07 08:20:14 +00:00
Tyler Dauwalder
f5f5f2ecce
I guess our compiler doesn't support partial specialization...
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-07 08:19:07 +00:00
Tyler Dauwalder
1801834fb1
- CS0String -> UdfString
...
- Added charspec constructor and friends.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5589 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-06 08:31:22 +00:00
Tyler Dauwalder
f8af3d31df
- Set up new from-Ut8 constructors.
...
- Added doxygen to constructors and assignment functions.
- Added Utf8() and Cs0() get-string functions (former is mostly functional,
latter is in progress).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5588 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-06 08:30:40 +00:00
Tyler Dauwalder
dce2dc5cab
CS0String -> UdfString
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5587 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-06 08:29:13 +00:00
Tyler Dauwalder
d40fb3032e
Renamed CS0String.{h,cpp} and class Udf::CS0String to UdfString.{h,cpp}
...
and class Udf::String, since I now need the class to work both ways (to and
from cs0 and utf8).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5586 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-06 00:16:04 +00:00
Tyler Dauwalder
5a97c04e6b
- Added Udf::descriptor_tag::set_checksums() template.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5573 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-05 05:39:11 +00:00
Tyler Dauwalder
9dccd3a042
Forgot to check for NULL data parameter in Udf::calculate_crc().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5571 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-04 23:04:15 +00:00
Tyler Dauwalder
04d90c2afa
Finally added crc checking for descriptor_tags.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5570 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-04 22:59:51 +00:00
Tyler Dauwalder
8528b6dc19
Added Udf::calculate_crc().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5569 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-04 22:59:02 +00:00