Commit Graph

56 Commits

Author SHA1 Message Date
910a63f28a Fix little bug related with dir length calculation. 2008-01-14 01:33:36 +01:00
a1bcc73198 Support for relaxed filenames on ISO-9660 images. 2008-01-13 01:06:56 +01:00
0d06e24cd5 Add support for El-Torito. 2008-01-10 19:41:08 +01:00
4f029437e2 Handling of El-Torito boot catalog at low level. 2008-01-10 18:53:39 +01:00
51df8c6284 Fix bug introduced when adding Joliet that causes libisofs to hang.
It causes an attempt to read an extra block from ring buffer to overwrite 
buffer, which causes libisofs to hang. The problem is that Volume Descriptor
Set terminator should not be read from buffer, but generated instead.
2008-01-09 18:57:47 +01:00
41472e66b7 Pad volume attributes with " " to ensure ECMA-119 compliance. 2008-01-08 21:58:36 +01:00
747bed11b8 Bug fix: Joliet writer should be only created when Joliet is enabled. 2008-01-08 19:33:17 +01:00
5d81305042 Expose Joliet. 2008-01-08 16:10:25 +01:00
e9bcb22cee Write Joliet directory structures and path tables. 2008-01-06 19:08:35 +01:00
bd0f787f61 Store joliet-related info in Ecma119Image target insted of Writer.
In fact, this is not a good decission, writer is a better place for 
writer dependent data, but for now I prefer to store anything in the 
target. Later we can improve Writer encapsulation.
2008-01-06 17:52:58 +01:00
17e9955f93 Begin Joliet support. Creation of Joliet writer and Joliet tree. 2008-01-06 17:38:31 +01:00
f3c27e681f Improve growing by padding the image, if needed.
The padding ensures first 64 KiB can be overwritten without data lost if 
we grow the image.
2008-01-05 03:16:33 +01:00
7af02cddd9 Support for image growing. 2008-01-05 02:03:22 +01:00
e471333b0b Rename function to create burn_source. 2008-01-05 00:42:32 +01:00
ee78419935 Add support for appendable multisession images. 2008-01-04 23:54:31 +01:00
ad2974940a Correctly manage image size and written progress. 2008-01-01 20:25:07 +01:00
e18f5d8898 Change message functions signature. 2007-12-30 22:04:41 +01:00
c786fc70b6 Fix bug in progress info, count last written bytes in percent. 2007-12-30 18:05:35 +01:00
d9c9aea0c5 Fix integer overflow in progress count. 2007-12-29 22:21:11 +01:00
7e66fe43ce Reduce memory usage in low level tree, by storing dir info separately. 2007-12-29 18:30:59 +01:00
4b8db2f274 Report writting progress. 2007-12-29 17:42:57 +01:00
4c9d83f051 Define code style formatter for eclipse and apply it to source. 2007-12-28 22:10:17 +01:00
9a90afcf69 Support for setting an output charset for RR NM entries.
It will default to input charset (i.e. the locale charset for now). 
Names will be stored internally in that locale charset. Note that input 
charset musn't be changed by user. Instead, we can provide an input 
charset property to IsoFilesystem implementations.
2007-12-28 00:20:02 +01:00
1e4851792b First step to input/output charset handling. 2007-12-27 18:55:47 +01:00
a8636eaa60 Support for setting default modes for files and dirs. 2007-12-27 18:10:14 +01:00
941e2022e8 Expose RockRidge option. 2007-12-27 10:43:06 +01:00
ddd703e7c4 Fix several bugs related to RR SL/NM fields (PT 2 :). 2007-12-26 18:19:00 +01:00
49344b3ca9 Fix bug in path table size computation. 2007-12-25 23:33:37 +01:00
d954957d83 If needed, add version number to symlinks and special files too. 2007-12-25 18:59:20 +01:00
bf0c1dd219 Add nlink and ino fields. No true usage for now. 2007-12-25 18:51:00 +01:00
f8f2dcb6b0 RockRidge support, now RR/SUSP entries are correctly written.
This also fix a little bug, ensuring SP is written first to the "." 
entry of the directory record.
2007-12-25 18:35:10 +01:00
c3af3553df Define functions to generate and write the RR/SUSP fields. 2007-12-24 16:29:57 +01:00
778e39ba3c Take care about the RR entries when computing the size, and cache it.
When computing the size of the directory structures, take care about the size
taken by the RR/SUSP fields. Also, cache that size, otherwise we need to do
this computation several times and it is ugly, because the CE entries need to 
know where the Continuation Area will be stored.
2007-12-24 14:24:09 +01:00
041858360a Handle reallocation of directories. 2007-12-23 17:11:32 +01:00
ca1385cce1 Begin RR support. Symlinks and Special files added to low level tree. 2007-12-23 16:16:26 +01:00
b8aa48038b Minor changes. 2007-12-23 15:39:41 +01:00
002a832ac3 Minor changes. 2007-12-23 02:58:54 +01:00
6154fb1f0a Replace the pipe with the ring buffer. 2007-12-23 02:46:35 +01:00
94e687d9d3 Add a ring buffer implementation.
This is intented to replace the pipe between the writer and reader 
threads. That way we can have a much better control of cancelation 
situations. Still to be optimized.
2007-12-23 02:24:21 +01:00
9ec475a900 Change iso name conversion functions back to old style. 2007-12-22 20:49:30 +01:00
35ef22cdd7 Implement ECMA-119 burn_source and writer thread handling.
At this time, nglibisofs is able to output an image!! Note that communication
between writer and read thread is done via a pipe. That will be replaced by a
ring buffer in the near future.
2007-12-22 17:09:28 +01:00
2ab23693db Replace path table size computation by a recursive version.
The recursive version wastes less memory, as it doesn't need the path table
array.
2007-12-22 16:02:29 +01:00
d07fed1a4c Add write function. Fix bug in PVD writing and dir. record len computation. 2007-12-22 14:45:00 +01:00
5cf2980c9c Append version number to file ids. 2007-12-21 23:08:21 +01:00
2fd3195747 Write the path tables on the ISO structure. 2007-12-21 22:53:48 +01:00
31ee89c47b Code to write directory structure of the ECMA-119 tree. 2007-12-21 00:35:43 +01:00
46ffb6d33d Fix implementation of PVD writing. 2007-12-21 00:05:41 +01:00
2f383215ff Implement Writer for file contents.
Some aspects, such as better reporting of file bigger or smaller than 
expected is needed, but all situations are handled propertly.
2007-12-20 22:17:18 +01:00
e6bd1586d6 Replace glibc tsearch() with a custom red-black tree implementation.
The library supplied tree estructure is not enought for our needs, due to its
limited API. Thus, we have implemented a suitable red-black tree.
2007-12-20 00:25:25 +01:00
5eb3a7e038 Implementation of function to write the PVD.
The directory entry for the root directory is still missing.
2007-12-18 21:55:01 +01:00