a string can be either quoted (single or doublequoted), then the text
between this quotes is returned, quotes are escaped by doubling themself,
no chopping at either end is done,
or not quoted then the the tabs and spaces are chopped from the value
at either end.
even in case of an configuration error the returned value is primed
with the default. The error condition needs still be cleared!
Broken defaults would be unnoticed in case of a double error!
Acquiring mutexes is now wraped in a easy to use MUTEX_SECTION macro.
This scheme will be extended for chained lock propagation soon.
Notes:
* NoBug resourcemanagement is now part of the lower layer,
RESOURCE_ENTER/RESOUCE_LEAVE are maintained automatically
* one must still call RESOURCE_ANNOUNCE/RESOURCE_FORGET, because we want
to maintain high level information about resources.
* MUTEX_SECTIONS must not be left with any kind of jump
lumiera_free() is for now just a static inline wraper around free()
Later this makes it easier to hook in some resource managing functions
or a Garbage Collector in.
Replaced all current uses of free()
Filedescriptors create files at construction, each later access becomes
a reopen on the now existing file.
file_handle_acquire() reopens the file to gain a handle when required
and checks that the file is really the one we expected (ino and dev num)
* add 'backend' for backend global initialization/destruction
and common functions.
* WIP: 'file' acts as interface to named files, provides posix
filehandles with and acquire/release function pair.
* 'filehandle' manages posix filehandles internally, refcounted.
* WIP: 'filehandlecache' keeps unused filehandles in a MRU cache
* WIP: test for filehandle management
* improved filedescriptor test
* make registry initialization singleton, no parameters.
* remove registry init from all functions, has to be called explicitly.
* some nobug improvements
It is now possible to acquire/release filedescriptors for existing files
and files to be created.
Filedescriptors are managed in a registry by refcounts, they get
automatically destructed when the last user releases them.
We have 'File' which associates a name with a file and will be used to
offer an interface for the application.
Posix 'Filehandles' which are managed in a 'Filehandlecache' to utilize
a limited number of fd's at optimum.
Internally we use 'Filedescriptor's which manage files, mapping and all
kinds of metadata. Filedescriptors weak referenced by a registry and freed
when the last user vanishes.
(search & replace). Please feel free to add your name to any files to which you added any contributions.
ALL SOURCECODE IS LICENCED UNDER THE TERMS AND CONDITIONS OF THE GPL (2 and above)