Commit Graph

28 Commits

Author SHA1 Message Date
Vreixo Formoso
6d276ac0f6 Write Joliet Supplementary Volume Descriptor. 2008-01-06 18:45:32 +01:00
Vreixo Formoso
2ab47e5bac Compute length and position of Joliet structures. 2008-01-06 18:08:29 +01:00
Vreixo Formoso
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
Vreixo Formoso
17e9955f93 Begin Joliet support. Creation of Joliet writer and Joliet tree. 2008-01-06 17:38:31 +01:00
Vreixo Formoso
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
Vreixo Formoso
ee78419935 Add support for appendable multisession images. 2008-01-04 23:54:31 +01:00
Vreixo Formoso
4b8db2f274 Report writting progress. 2007-12-29 17:42:57 +01:00
Vreixo Formoso
4c9d83f051 Define code style formatter for eclipse and apply it to source. 2007-12-28 22:10:17 +01:00
Vreixo Formoso
1e4851792b First step to input/output charset handling. 2007-12-27 18:55:47 +01:00
Vreixo Formoso
a8636eaa60 Support for setting default modes for files and dirs. 2007-12-27 18:10:14 +01:00
Vreixo Formoso
bf0c1dd219 Add nlink and ino fields. No true usage for now. 2007-12-25 18:51:00 +01:00
Vreixo Formoso
041858360a Handle reallocation of directories. 2007-12-23 17:11:32 +01:00
Vreixo Formoso
ca1385cce1 Begin RR support. Symlinks and Special files added to low level tree. 2007-12-23 16:16:26 +01:00
Vreixo Formoso
6154fb1f0a Replace the pipe with the ring buffer. 2007-12-23 02:46:35 +01:00
Vreixo Formoso
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
Vreixo Formoso
d07fed1a4c Add write function. Fix bug in PVD writing and dir. record len computation. 2007-12-22 14:45:00 +01:00
Vreixo Formoso
5cf2980c9c Append version number to file ids. 2007-12-21 23:08:21 +01:00
Vreixo Formoso
2fd3195747 Write the path tables on the ISO structure. 2007-12-21 22:53:48 +01:00
Vreixo Formoso
46ffb6d33d Fix implementation of PVD writing. 2007-12-21 00:05:41 +01:00
Vreixo Formoso
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
Vreixo Formoso
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
Vreixo Formoso
36894d6a23 Implementation of the write function to use by the Writers. 2007-12-18 00:37:24 +01:00
Vreixo Formoso
257b08bfcf Code to compute position of directory records and path tables. 2007-12-18 00:20:03 +01:00
Vreixo Formoso
5e2de57aa9 Initial structure for ECMA-119 writer. 2007-12-17 23:22:19 +01:00
Vreixo Formoso
c8715941e6 Define some functions and responsabilities for image generation.
Still very preliminary work.
2007-12-16 19:10:47 +01:00
Vreixo Formoso
40b27dbacc Initial support for low level ECMA-119 tree.
This only adds the tree creation functions, no sorting and name mangling 
yet. Only plain ECMA-119 supported for now, nor RR, relaxed 
restrictions, etc..

This also adds a little test program.
2007-12-15 16:55:44 +01:00
Vreixo Formoso
aa312cf7d7 Fix bug in IsoFileSrc implementation, related to a wrogn usage of tsearch.
It happens that tsearch seems to not return a pointer to the inserted element,
but a pointer to a pointer to the inserted element (that makes sense, as we
are inserted pointers...). This bug, thus, was related to a wrong 
understanding of the tsearch API!
2007-12-15 16:48:50 +01:00
Vreixo Formoso
7b241176fb Init implementation of IsoFileSrc.
Ecma119Image, defined for first time in this commit, is the context for image 
written. It keeps the low level objects needed during image written.

IsoFileSrc is the low level object that takes care about the info needed to
write file contents to image. It takes care about reading from Stream in 2K
block chunks. To prevent the same file be written twice to image, we keep in
Ecma119Image a search tree, indexed by the triple key (fs, device, inode) that
uniquelly identifies a source.
2007-12-15 13:13:49 +01:00