Replace systemlinux.org URL and email address. Although the web page is still online at the old location, the new location at tuebingen.mpg.de is now the "official" one. This commit changes the URL in the INSTALL file and all email addresses to the new domain.
split_args(): Do not insist on checking the return value. Currently, split_args() of string.c has the __must_check attribute which instructs gcc to warn whenever the return value of this function is ignored by the caller. However, since the returned array is NULL terminated anyway, there are situations the return value my safely be ignored, for example if the returned array is passed to execvp(), which does not receive a length argument. This patch removes the __must_check attribute and fixes a "set but not used" warning on newer gcc versions.
Transform the database_dir/database_root arg into an absolute path. adu --create failed badly if called with --database_dir or --database_root being relative path. This patch fixes the bug. Unfortunately, it's not completely trivial to obtain the cwd in a portable and secure manner. The method used in the new absolute_path() function, while still not bullet-proof, is the best what one can do if portability is an issue.
Add yet more source code documentation.
Move user and user ID related functions to separate files.
Add create_argv() to string.c. A problem with gengetopt's string parser is that it can not handle whitespace within parameters. It's therefore necessary to roll our own line splitting code.
Add pretty-printing formating functions. This adds a generic format string parser. The new code is compiled in but not yet used.
Make --uid take a comma-separated list of uids and move it to select.ggo. This means --uid no needs to be a multiple option. Also, add descriptions to all interactive commands.
Move the uid-range parser to string.c. This code will also be needed by the interactive mode.
Replace para_ prefix by adu_.
Kill a bunch of unused cruft.
Initial git checkin. Not nice, but kinda working.