osl.git
10 years agoFix two doxygen warnings.
Andre Noll [Tue, 6 Jan 2009 20:51:37 +0000 (21:51 +0100)]
Fix two doxygen warnings.

11 years agoAdd a comment to search_rbtree().
Andre Noll [Sat, 9 Aug 2008 15:06:02 +0000 (17:06 +0200)]
Add a comment to search_rbtree().

11 years agoosl.h.in: Always include inttypes.h
Andre Noll [Sat, 9 Aug 2008 15:04:43 +0000 (17:04 +0200)]
osl.h.in: Always include inttypes.h

11 years agoGet rid of E_INVALID_OBJECT.
Andre Noll [Fri, 20 Jun 2008 08:22:33 +0000 (10:22 +0200)]
Get rid of E_INVALID_OBJECT.

It's introduction of the one-byte header for mapped objects
was a bad move because it changes the alignment of mapped objects.

This also simplifies the code a bit. The downside is of course
that this changes the on-disk data format. But hey, this stuff
is still pre-beta, so..

11 years agoAdd missing dependency.
Andre Noll [Wed, 18 Jun 2008 13:35:36 +0000 (15:35 +0200)]
Add missing dependency.

11 years agoChange type of struct osl_column_description->storage_{type,flags}.
Andre Noll [Fri, 6 Jun 2008 16:13:38 +0000 (18:13 +0200)]
Change type of struct osl_column_description->storage_{type,flags}.

These values get stored in the table index header as 16 bit
quantities, so it does not make sense to use a different size
for the structure.

11 years agoChange type of struct osl_table_description->flags to uint8_t.
Andre Noll [Fri, 6 Jun 2008 15:45:39 +0000 (17:45 +0200)]
Change type of struct osl_table_description->flags to uint8_t.

We reserve only one byte in the index header of the table, so it
does not make sense to have this field of type enum.

Fixes:

fsck.c:815: warning: dereferencing type-punned pointer will break strict-aliasing rules

11 years agoRename the _S macro to OSL_ERROR.
Andre Noll [Fri, 6 Jun 2008 15:24:57 +0000 (17:24 +0200)]
Rename the _S macro to OSL_ERROR.

On NetBSD, _S is already defined.

11 years agoLet all source files depend on errtab.h
Andre Noll [Fri, 6 Jun 2008 15:24:16 +0000 (17:24 +0200)]
Let all source files depend on errtab.h

11 years agoAdd Makefile magic for NetBSD.
Andre Noll [Fri, 6 Jun 2008 15:01:10 +0000 (17:01 +0200)]
Add Makefile magic for NetBSD.

11 years agoMerge commit 'fml/master'
Andre Noll [Fri, 6 Jun 2008 14:46:50 +0000 (16:46 +0200)]
Merge commit 'fml/master'

11 years agofsck objects depend on osl.h.
Andre Noll [Fri, 6 Jun 2008 14:45:41 +0000 (16:45 +0200)]
fsck objects depend on osl.h.

11 years agoSimplify Makefile.
Andre Noll [Fri, 6 Jun 2008 14:21:29 +0000 (16:21 +0200)]
Simplify Makefile.

Only MacOS needs the braindead .dylib Filenames.

11 years agoSolaris fixes.
Andre Noll [Fri, 6 Jun 2008 13:49:56 +0000 (15:49 +0200)]
Solaris fixes.

11 years agoRename fd.[ch] to util.[ch].
Andre Noll [Fri, 6 Jun 2008 12:54:37 +0000 (14:54 +0200)]
Rename fd.[ch] to util.[ch].

It contains not only fd-related stuff.

11 years agoCosmetics.
Andre Noll [Fri, 6 Jun 2008 12:51:01 +0000 (14:51 +0200)]
Cosmetics.

11 years agoRemove list.h.
Andre Noll [Fri, 6 Jun 2008 12:47:12 +0000 (14:47 +0200)]
Remove list.h.

osl does not use lists.

11 years agoMove and rename para_opendir().
Andre Noll [Fri, 6 Jun 2008 12:43:19 +0000 (14:43 +0200)]
Move and rename para_opendir().

11 years agoInline para_fchdir(), move it to fsck.c and rename it.
Andre Noll [Fri, 6 Jun 2008 12:36:42 +0000 (14:36 +0200)]
Inline para_fchdir(), move it to fsck.c and rename it.

11 years agoRename para_chdir() and make it an inline function.
Andre Noll [Fri, 6 Jun 2008 12:31:40 +0000 (14:31 +0200)]
Rename para_chdir() and make it an inline function.

11 years agofsck.c depends on errtab.h.
Andre Noll [Fri, 6 Jun 2008 12:23:00 +0000 (14:23 +0200)]
fsck.c depends on errtab.h.

11 years agoKill E_OSL_TRUNC.
Andre Noll [Fri, 6 Jun 2008 12:22:42 +0000 (14:22 +0200)]
Kill E_OSL_TRUNC.

11 years agoGet rid of E_OSL_STAT.
Andre Noll [Fri, 6 Jun 2008 09:43:43 +0000 (11:43 +0200)]
Get rid of E_OSL_STAT.

Use system error code instead.

11 years agoRename para_truncate() to truncate_file().
Andre Noll [Fri, 6 Jun 2008 09:36:17 +0000 (11:36 +0200)]
Rename para_truncate() to truncate_file().

11 years agoMove para_truncate from osl.c to fd.c.
Andre Noll [Fri, 6 Jun 2008 09:34:50 +0000 (11:34 +0200)]
Move para_truncate from osl.c to fd.c.

11 years agofsck: Rename para_malloc() and friends.
Andre Noll [Fri, 6 Jun 2008 09:33:22 +0000 (11:33 +0200)]
fsck: Rename para_malloc() and friends.

11 years agofsck: --database-dir is required, no need to set defaults.
Andre Noll [Fri, 6 Jun 2008 09:23:14 +0000 (11:23 +0200)]
fsck: --database-dir is required, no need to set defaults.

11 years agoDo not use gengetopt's --version output.
Andre Noll [Fri, 6 Jun 2008 09:20:35 +0000 (11:20 +0200)]
Do not use gengetopt's --version output.

11 years agoReformat fsck.ggo and add more help text.
Andre Noll [Fri, 6 Jun 2008 09:18:14 +0000 (11:18 +0200)]
Reformat fsck.ggo and add more help text.

11 years agoAdd .gitignore.
Andre Noll [Fri, 6 Jun 2008 09:04:43 +0000 (11:04 +0200)]
Add .gitignore.

11 years agoRename base_dir to database-dir and check in fsck.ggo.
Andre Noll [Fri, 6 Jun 2008 09:03:10 +0000 (11:03 +0200)]
Rename base_dir to database-dir and check in fsck.ggo.

11 years agoinit loglevel.
Andre Noll [Fri, 6 Jun 2008 08:53:33 +0000 (10:53 +0200)]
init loglevel.

Global variables that are defined in different object files need to be initialised
on the Mac. Fixes

ld: common symbols not allowed with MH_DYLIB output format with the -multi_module option
osl.o private external definition of common _loglevel (size 4)
/usr/bin/libtool: internal link edit command failed

11 years agoosl.h depends on Makefile.
Andre Noll [Fri, 6 Jun 2008 08:44:14 +0000 (10:44 +0200)]
osl.h depends on Makefile.

11 years agoError codes must not start with zero.
Andre Noll [Fri, 6 Jun 2008 08:43:42 +0000 (10:43 +0200)]
Error codes must not start with zero.

11 years agofsck.o depends also on fsck.cmdline.[ch].
Andre Noll [Fri, 6 Jun 2008 08:34:27 +0000 (10:34 +0200)]
fsck.o depends also on fsck.cmdline.[ch].

11 years agoBuild oslfsck by default.
Andre Noll [Thu, 5 Jun 2008 22:33:26 +0000 (00:33 +0200)]
Build oslfsck by default.

11 years agofsck cleanups.
Andre Noll [Thu, 5 Jun 2008 22:32:52 +0000 (00:32 +0200)]
fsck cleanups.

11 years agoSet loglevel and use fsck_cmdline_parser_ext().
Andre Noll [Thu, 5 Jun 2008 22:32:38 +0000 (00:32 +0200)]
Set loglevel and use fsck_cmdline_parser_ext().

11 years agoRemove para_log() from fsck.c.
Andre Noll [Thu, 5 Jun 2008 22:31:01 +0000 (00:31 +0200)]
Remove para_log() from fsck.c.

oslfsck may use the log function of osl.c.

11 years agoMake loglevel non-static.
Andre Noll [Thu, 5 Jun 2008 22:29:56 +0000 (00:29 +0200)]
Make loglevel non-static.

This way, oslfsck can set it to the value given at the command
line to overwrite it. It's not exported though, i.e. it is invisible
to users of libosl.

11 years agoFix fsck error codes.
Andre Noll [Thu, 5 Jun 2008 19:44:42 +0000 (21:44 +0200)]
Fix fsck error codes.

11 years agoAdd oslfsck.
Andre Noll [Thu, 5 Jun 2008 19:17:07 +0000 (21:17 +0200)]
Add oslfsck.

This needs more work, but at least it compiles with only one warning.

11 years agoMove a couple of functions from osl.c to fd.c.
Andre Noll [Thu, 5 Jun 2008 19:14:22 +0000 (21:14 +0200)]
Move a couple of functions from osl.c to fd.c.

This makes them available also to fsck (coming soon).

11 years agoDo not specify LDLAGS twice.
Andre Noll [Thu, 5 Jun 2008 08:29:52 +0000 (10:29 +0200)]
Do not specify LDLAGS twice.

11 years agoMerge commit 'meins/master'
Andre Noll [Thu, 5 Jun 2008 08:27:14 +0000 (10:27 +0200)]
Merge commit 'meins/master'

11 years agoKill the MAX macro.
Andre Noll [Thu, 5 Jun 2008 08:24:11 +0000 (10:24 +0200)]
Kill the MAX macro.

It's unused and produces a warning on Mac OS.

11 years agoFix target osl_errors.h on MacOS.
Andre Noll [Thu, 5 Jun 2008 08:20:15 +0000 (10:20 +0200)]
Fix target osl_errors.h on MacOS.

The sed on Mac doesn't understand \n.

11 years agoRename para_munmap() to osl_munmap().
Andre Noll [Wed, 4 Jun 2008 21:25:11 +0000 (23:25 +0200)]
Rename para_munmap() to osl_munmap().

11 years agoRename para_rename() and move it to fd.h.
Andre Noll [Wed, 4 Jun 2008 21:22:34 +0000 (23:22 +0200)]
Rename para_rename() and move it to fd.h.

11 years agoMake para_mkdir() static inline and rename it to osl_mkdir().
Andre Noll [Wed, 4 Jun 2008 21:19:21 +0000 (23:19 +0200)]
Make para_mkdir() static inline and rename it to osl_mkdir().

11 years agoMakefile improvements.
Andre Noll [Wed, 4 Jun 2008 19:07:51 +0000 (21:07 +0200)]
Makefile improvements.

Cleanups, add documentation and install target.

11 years agoFix an embarassing bug in make_message().
Andre Noll [Wed, 4 Jun 2008 15:35:23 +0000 (17:35 +0200)]
Fix an embarassing bug in make_message().

Outch.

11 years agoFix and document compile options on Darwin.
Andre Noll [Wed, 4 Jun 2008 14:12:14 +0000 (16:12 +0200)]
Fix and document compile options on Darwin.

11 years agoThe linker on MacOS 10.4 does not understand -Wl,-z,defs.
Andre Noll [Wed, 4 Jun 2008 13:44:28 +0000 (15:44 +0200)]
The linker on MacOS 10.4 does not understand -Wl,-z,defs.

11 years agoSimply use the major version of the lib also on MacOS.
Andre Noll [Wed, 4 Jun 2008 13:41:17 +0000 (15:41 +0200)]
Simply use the major version of the lib also on MacOS.

The braindead idea to use letters instead of numbers for the
major version is only a recommendation, so ignore it.

11 years agoMove documentation of exported osl functions from osl.c to osl.h.in.
Andre Noll [Tue, 3 Jun 2008 10:31:14 +0000 (12:31 +0200)]
Move documentation of exported osl functions from osl.c to osl.h.in.

It's better to have this information in osl.h as this is the file
which is visible to the users.

11 years agoAdd errlist.
Andre Noll [Mon, 2 Jun 2008 08:12:47 +0000 (10:12 +0200)]
Add errlist.

Argh, I forgot to check in an important file. Again.

11 years agoLoglevel adjustments.
Andre Noll [Sat, 31 May 2008 17:59:01 +0000 (19:59 +0200)]
Loglevel adjustments.

11 years agoFix loglevel handling.
Andre Noll [Sat, 31 May 2008 17:48:32 +0000 (19:48 +0200)]
Fix loglevel handling.

Use the content of the enviroment variable OSL_LOGLEVEL.

11 years agoFix a design flaw in osl_rbtree_loop() and osl_rbtree_loop_reverse().
Andre Noll [Sat, 31 May 2008 17:18:31 +0000 (19:18 +0200)]
Fix a design flaw in osl_rbtree_loop() and osl_rbtree_loop_reverse().

In case the loop was terminated because the user-supplied loop function
returned a negative value, the old code returned this value back to
the caller of osl_rbtree_loop(). This is bad because osl functions
should only return osl error codes.

Moreover, the return value of the loop function might coincide with an
osl error code making it impossible to distinguish between the two
errors.

The fix is to introduce a new osl error code E_OSL_LOOP which is returned
by osl_rbtree_loop() in case the loop function returned a negative value.
It's up to the caller to save any further information about the error
in the private_data struct.

11 years agoosl.h.in cleanups and improvments.
Andre Noll [Sat, 31 May 2008 15:15:57 +0000 (17:15 +0200)]
osl.h.in cleanups and improvments.

- Add visibility pragmas
- More documentation
- Kill compare function pointers.

11 years agoKill uint32_compare().
Andre Noll [Sat, 31 May 2008 15:14:02 +0000 (17:14 +0200)]
Kill uint32_compare().

The user of the library might as well provide this.

11 years agoMakefile: Activate optimization and -Wuninitialized.
Andre Noll [Sat, 31 May 2008 15:13:02 +0000 (17:13 +0200)]
Makefile: Activate optimization and -Wuninitialized.

11 years agoMakefile: Disallow undefined symbols.
Andre Noll [Sat, 31 May 2008 15:12:18 +0000 (17:12 +0200)]
Makefile: Disallow undefined symbols.

11 years agoSwitch to the new error code handling.
Andre Noll [Sat, 31 May 2008 14:17:27 +0000 (16:17 +0200)]
Switch to the new error code handling.

11 years agoGenerate osl.h from osl.h.in.
Andre Noll [Sat, 31 May 2008 06:32:50 +0000 (08:32 +0200)]
Generate osl.h from osl.h.in.

We need to export the osl error codes to the applications that link
against osl. Prefix these error codes with OSL.

11 years agoAlways compile with -fvisibility=hidden.
Andre Noll [Thu, 29 May 2008 20:39:16 +0000 (22:39 +0200)]
Always compile with -fvisibility=hidden.

And explicitly mark exported functions with
__attribute__((visibility("default"))). This only works with gcc-4,
but hey, let's just require gcc-4.

11 years agoRename para_open() to osl_open().
Andre Noll [Thu, 29 May 2008 20:28:46 +0000 (22:28 +0200)]
Rename para_open() to osl_open().

11 years agoDo not export para_lseek() and para_write_file().
Andre Noll [Mon, 26 May 2008 23:30:18 +0000 (01:30 +0200)]
Do not export para_lseek() and para_write_file().

11 years agoRemove unused for_each_file_in_dir().
Andre Noll [Mon, 26 May 2008 21:15:10 +0000 (23:15 +0200)]
Remove unused for_each_file_in_dir().

11 years agoMake para_write_file() static.
Andre Noll [Mon, 26 May 2008 21:14:38 +0000 (23:14 +0200)]
Make para_write_file() static.

11 years agoMake some functions static.
Andre Noll [Mon, 26 May 2008 21:13:13 +0000 (23:13 +0200)]
Make some functions static.

And remove the "para" prefix while we're at it.

11 years agoKill the VSPRINTF macro.
Andre Noll [Mon, 26 May 2008 21:06:48 +0000 (23:06 +0200)]
Kill the VSPRINTF macro.

It has only one user, make_message(), so move it there.

11 years agoRemove Makefile.deps.
Andre Noll [Mon, 26 May 2008 20:52:25 +0000 (22:52 +0200)]
Remove Makefile.deps.

It's a derived file.

11 years agoGet rid of string.c and string.h.
Andre Noll [Mon, 26 May 2008 20:51:43 +0000 (22:51 +0200)]
Get rid of string.c and string.h.

These function contained only the malloc wrappers which exited on
allocation failures which is not an acceptable behaviour for a
library. We must therefore bite the bullet and check the return
values in the callers.

11 years agoInitial git import.
Andre Noll [Mon, 26 May 2008 19:37:38 +0000 (21:37 +0200)]
Initial git import.

This code is taken straight from the paraslash package.  It needs a
lot more work to transform it into a proper library package.