Commit Graph

75 Commits

Author SHA1 Message Date
48e243d5da Define interface for IsoDataSource to access existent images. 2007-12-30 17:47:44 +01:00
54038ec54b Functions to add RR/SUSP entries. Fix little bugs. 2007-12-25 17:53:17 +01:00
d48c553f40 Implement function to compute the size needed for RR field. 2007-12-24 04:31:15 +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
de3c4e4962 Little demo program to test image generation. 2007-12-22 17:09:49 +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
c8715941e6 Define some functions and responsabilities for image generation.
Still very preliminary work.
2007-12-16 19:10:47 +01:00
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
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
115da82c9e First util functions, with corresponding unit test. 2007-12-13 21:02:36 +01:00
d10ed353e2 Implement function to recursively add a dir to an iso tree.
This commit also to the following changes:
- create_node() on builder never frees the IsoFileSource, it is responsability 
  of the caller to free it.
- Recursive addition options added to IsoImage (not exposed to public API yet)
- create_node() takes care about follow_symlinks
- Added little demo program to test it.
2007-12-11 22:47:04 +01:00
7d417e9fa6 Added a mocked filesystem to simulate a real filesystem in tests. 2007-12-07 17:29:27 +01:00
7f9c5c9065 Unit test for tree functions. Little fixes. 2007-12-06 22:45:16 +01:00
f62c34776f Begin implementation of tree operations. 2007-12-06 02:11:05 +01:00
14f4aa7d07 Init builder implementation. 2007-12-04 22:33:40 +01:00
8edc9f2639 Implementation of IsoStream for IsoFileSources. 2007-12-02 22:04:26 +01:00
0ba8a7a85e Add message queue facilities. Each IsoImage will have its own msg queue. 2007-12-02 20:11:44 +01:00
d916b60172 Add getters and setters for image properties, together with unit tests. 2007-12-02 19:49:11 +01:00
c83bac7d9e Add IsoImage, equivalent to old libisofs volume and volset.
IsoImage will be a context for image creation and modification.
2007-12-02 19:10:30 +01:00
3c7f1285d6 Add default skel for unit tests. Move test programs to demo. 2007-11-29 22:06:56 +01:00
db533b2d99 Add a little program to test reading from a file using IsoFileSource. 2007-11-26 21:31:54 +01:00
1478904aaf Implement get_name in FileSource, and add a little test program. 2007-11-26 21:16:38 +01:00
1bda81869b Add IsoFileSource implementation for local filesystem. 2007-11-25 16:46:21 +01:00
6c090c9a7b Added more files, mainly beginning of filesystem sources implementation. 2007-11-24 16:58:36 +01:00
9ee4e39899 Added build files and first code stub. 2007-11-24 13:14:45 +01:00