370 Commits

Author SHA1 Message Date
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
Tyler Dauwalder
fd54330a11 Forgot namespace qualification.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5560 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-04 08:08:35 +00:00
Tyler Dauwalder
e05a3e1e2b Added crc table.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5559 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-04 08:06:01 +00:00
Tyler Dauwalder
f546c8aff5 Initial checkin. Standalone program used to generate crc table needed
for calculating udf crc checksums.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5558 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-04 07:59:49 +00:00
Tyler Dauwalder
e976b957c3 Bought a dictionary.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5553 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-03 09:20:29 +00:00
Tyler Dauwalder
af44f8e659 Added bool_to_string() and check_size_error().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5548 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-03 08:42:47 +00:00
Tyler Dauwalder
2cc6b97a1d Added volume_structure_descriptor_header constructor.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-03 08:42:11 +00:00
Tyler Dauwalder
21ea9aea0c Removed category stuff from UdfDebug.h since it ended
up not being as useful as I'd hoped, and I need to use the
same debugging macros for makeudfimage as for udf.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5544 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-03 05:14:44 +00:00
Tyler Dauwalder
f79d99c80d - DiskStructures.{h,cpp} -> UdfStructures.{h,cpp}
- Added Udf::get_block_shift()


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5529 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-02 10:50:23 +00:00
Tyler Dauwalder
9c6a058880 DiskStructures.{h,cpp} -> UdfStructures.{h,cpp}
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5528 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-02 10:49:37 +00:00
Tyler Dauwalder
c21aaa8af4 Added extent_address constructor.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5527 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-02 10:49:03 +00:00
Tyler Dauwalder
ead0c3e203 DiskStructures.{h,cpp} -> UdfStructures.{h,cpp}
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5526 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-02 10:47:49 +00:00
Tyler Dauwalder
9b8775ea74 Renamed {primary,logical,anchor}_descriptor structs to more
accurately be {primary,logical,anchor}_volume_descriptor.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5475 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-25 00:23:16 +00:00
Tyler Dauwalder
1379caca11 Removed "udf_" prefix from udf on-disk data structures, as they already
live in the Udf:: namespace, and I'll be referencing them fully qualified in
makeudfimage and don't feel like typing udf twice each time.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-25 00:12:50 +00:00
Axel Dörfler
70a5b6f894 Fixed compilation on x86. Also moved the SmallDataStart() inline out of
the structure definition.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5351 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-13 19:42:15 +00:00
Tyler Dauwalder
43c2ddb481 Upgraded my vocabulary.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-11 19:11:25 +00:00
Tyler Dauwalder
c6c7acd44e Removed PartitionMap.cpp from the build.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5318 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-11 09:17:06 +00:00
Tyler Dauwalder
b65e0cf963 Adjusted Udf::Volume::Mount() parameter order according to new Mount() function.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5317 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-11 09:12:28 +00:00
Tyler Dauwalder
d4e8b936cc Enormous cleanup.
- Finished migration of current capabilities (i.e. vanilla physical partition
  support) to new partition mapping system.
- Eliminated a lot of unnecesary cruft.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5316 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-11 09:11:43 +00:00
Tyler Dauwalder
3d8229dc67 - Got rid of some warnings
- Changed a variable name to eliminate shadowing.
- Fixed (I think) N and N-256 avdp locations.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5315 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-11 09:08:40 +00:00
Tyler Dauwalder
a1b5a724ed Physical blocks are off_t's, not uint32's.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5314 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-11 09:06:53 +00:00
Tyler Dauwalder
78b6ddea31 - Added partition type id udf_entity_id constants
- Added udf_entity_id::{udf_entity_id(),matches()}
- Added partial udf_metadata_partition_map
- Added actual space for partition maps to udf_logical_descriptor,
  since I now allocate said descriptors on the stack sometimes,
  instead of just casting a pre-allocated chunk of memory to said
  descriptor type.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5313 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-11 09:04:23 +00:00
Tyler Dauwalder
6d5694a8ea Added C-String constructor and SetTo().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5312 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-11 09:00:51 +00:00
Tyler Dauwalder
f5317138d6 Removed. No longer needed with new partition system.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5311 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-11 08:59:50 +00:00
Nathan Whitehorn
f929e15217 Eliminated the huge bugs caused by replacing thingy[0] with thingy[1]. Replaced small_data_start with an inline function SmallDataStart() that knows how to pacify mwcc. Should have negligible to no impact on x86 performance.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5286 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-08 20:16:28 +00:00
Axel Dörfler
55e3d98707 Fixes Nathan's changes at least for gcc.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-08 18:27:36 +00:00
Nathan Whitehorn
1a49a0986b Bunches of changes to make mwcc like the code. I also coded an _atomic_set() and _atomic_test_and_set() for PowerPC. Of course, there's already one in the kernel tree, but mine's better. :P Now builds (and works, after a fashion) on R5 PowerPC.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-08 04:39:58 +00:00
Axel Dörfler
6503b7c3be Added missing statics; static functions doesn't need to be extern "C".
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5256 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-05 10:31:50 +00:00