8 years agointeractive.c: Kill pointless initialization.
Andre Noll [Sat, 3 Jan 2015 17:38:08 +0000 (17:38 +0000)]
interactive.c: Kill pointless initialization.

Found by cppcheck.

9 years agoRemove stale sentence about the logo.
Andre Noll [Fri, 5 Sep 2014 14:15:38 +0000 (16:15 +0200)]
Remove stale sentence about the logo.

The new logo was created with gimp, but this does not really matter,
so remove the sentence from INSTALL.

9 years agoReplace URL and email address.
Andre Noll [Fri, 15 Aug 2014 13:36:03 +0000 (15:36 +0200)]
Replace URL and email address.

Although the web page is still online at the old location, the new
location at is now the "official" one.

This commit changes the URL in the INSTALL file and all email addresses
to the new domain.

9 years agoAdd new logo.
Andre Noll [Mon, 11 Aug 2014 16:15:00 +0000 (18:15 +0200)]
Add new logo.

To paraphrase a similar change in the ratpoison project: it was hard
to say good-bye to the old logo but sometimes we just have to let the
past be the past.

9 years agoMove adu_strerror() to adu.c.
Andre Noll [Sat, 18 Aug 2012 14:28:18 +0000 (16:28 +0200)]
Move adu_strerror() to adu.c.

This function is a bit too large to be inlined, and it depends on osl.

9 years agoRemove VSPRINTF.
Andre Noll [Sat, 18 Aug 2012 16:33:19 +0000 (18:33 +0200)]

This macro has only a single user in string.c, and it's kind of
pointless for this code to be a macro.

9 years agoMove adu_isspace() to interactive.c.
Andre Noll [Sat, 18 Aug 2012 16:28:26 +0000 (18:28 +0200)]
Move adu_isspace() to interactive.c.

This macro is only used there, so it need not be public.

9 years agoadu.ggo: Remove unused --config-file option.
Andre Noll [Wed, 15 Aug 2012 21:02:09 +0000 (23:02 +0200)]
adu.ggo: Remove unused --config-file option.

This never worked since we do not even call the generated config file
parser. Also remove --conf-parser from gengetopt options.

9 years agointeractive.c: Return proper error on icom_set() failure.
Andre Noll [Wed, 15 Aug 2012 20:44:19 +0000 (22:44 +0200)]
interactive.c: Return proper error on icom_set() failure.

If an interactive set command fails, we currently reset the
configuration to the default and return success. This is probably
not what the user expected.

Make the command fail instead.

10 years agoPrint directory name on create errors.
Andre Noll [Mon, 5 Aug 2013 10:46:39 +0000 (12:46 +0200)]
Print directory name on create errors.

In create mode, if the database directory already exists, adu prints
an error message of the form

main: directory exists.

This is a bit sparse, so let's add a log message which prints the
directory name. With the patch applied the output becomes

open_dir_table: could not create /ebio/maan/tmp/adu-lists/
main: directory exists

10 years agoFix user summary accounting if pattern is given.
Andre Noll [Sun, 9 Jun 2013 15:48:36 +0000 (17:48 +0200)]
Fix user summary accounting if pattern is given.

In user summary select mode we iterate over each row in the user
info table and get the directory name from the number stored in the
row. Next we match this name against the given pattern and only take
matching directories into account for the user summary.

Currently we call get_dir_name_of_row(), but this is wrong:
Since we iterate over the user info table, we must call
get_dir_name_of_user_row() instead as the former function expects a
pointer to a dir table row.

This bug caused wrong directory names to be matched against the
pattern, hence the results of the user summary were incorrect.

10 years agoAvoid gcc warning.
Andre Noll [Sun, 9 Jun 2013 16:31:55 +0000 (18:31 +0200)]
Avoid gcc warning.

Introduce a default case for the body of the switch statement in
print_statistics() to avoid the following gcc-4.8.1 warning:

select.c: In function 'print_statistics':
select.c:806:2: warning: enumeration value 'select_mode__NULL' not handled in switch [-Wswitch]
  switch (select_conf.select_mode_arg) {

11 years agoformat.c: Remove an unused variable.
Andre Noll [Mon, 25 Jun 2012 19:07:22 +0000 (21:07 +0200)]
format.c: Remove an unused variable.

In format_items(), "unit" is set but unused. gcc is right to complain
here. This variable is pointless and can go away.

11 years agosplit_args(): Do not insist on checking the return value.
Andre Noll [Mon, 25 Jun 2012 18:59:17 +0000 (20:59 +0200)]
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.

11 years agoFix check for return value of catch_signal().
Andre Noll [Mon, 25 Jun 2012 18:48:53 +0000 (20:48 +0200)]
Fix check for return value of catch_signal().

Commit 2d7a4d61 made adu's signal handling portable by switching from
signal() to sigaction() for installing signal handlers.  This commit
added the new function catch_signal() which returns the return value
of the underlying call to sigaction(), i.e. zero on success, and -1
on errors.

However, embarrassingly enough, one caller of catch_signal() still
checked this return value against SIG_ERR, which is the value that
is returned from signal() on errors.

Fix this bug by testing the return value against zero.

11 years agoMakefile: Honor CPPFLAGS also when creating dependencies.
Andre Noll [Mon, 25 Jun 2012 16:23:15 +0000 (18:23 +0200)]
Makefile: Honor CPPFLAGS also when creating dependencies.

Makefile.deps is created using a cc -MM -MG command which might need
the CPPFLAGS provided by the user, just as the ordinary cc commands
for creating an object file.

For example, the user might have passed -I$HOME/include, since
libosl was installed in $HOME. In this case we need to pass
this to the cc command that creates the Makefile as well.

11 years agofd.c: Make __chdir() static.
Andre Noll [Mon, 25 Jun 2012 16:16:58 +0000 (18:16 +0200)]
fd.c: Make __chdir() static.

This function is only used in fd.c.

11 years agoFix signal handling.
Andre Noll [Thu, 2 Feb 2012 16:07:35 +0000 (17:07 +0100)]
Fix signal handling.

Using signal() to set the disposition of a signal is always a bad idea
as POSIX does not specify whether a system call which was interrupted
should be restarted or not.

For interactive sessions, the Linux behaviour is to automatically
restart slow system calls, specifically read(2) in case nothing had
been read before the interrupt arrived. This is rather unfortunate
as adu calls fgets(3) (hence read(2)) in an endless loop to read the
user input. Therefore automatically restarted read() calls result
in interactive sessions that can not be terminated easily, as was
noticed by Sebastian Stark.

This patch makes the signal initialization code call sigaction()
instead of signal() to set up the handlers. This buys us well-defined
semantics across all operating systems, namely to *not* restart slow
system calls. As a side effect of this change, interactive sessions
can now be terminated by sending SIGINT (e.g., by pressing CTRL+C).

12 years agoMinor help text improvements.
Andre Noll [Sat, 22 Jan 2011 11:49:55 +0000 (12:49 +0100)]
Minor help text improvements.

12 years agoFix typo in comment.
Andre Noll [Sat, 22 Jan 2011 11:50:26 +0000 (12:50 +0100)]
Fix typo in comment.

12 years agoadu-0.1.0. maint v0.1.0
Andre Noll [Fri, 21 Jan 2011 16:23:42 +0000 (17:23 +0100)]

No bug reports and no commits for more than one year. This can only mean
that adu is ready for production use now ;)

13 years agoMakefile: Remove -lcrypto.
Andre Noll [Fri, 13 Aug 2010 08:47:04 +0000 (10:47 +0200)]
Makefile: Remove -lcrypto.

As libosl.0.1.1 does not depend on libssl any more, linking against libcrypto
is no longer necessary.

14 years agoRevert "Use ?:= as the assignement operator for PREFIX."
Andre Noll [Thu, 5 Nov 2009 10:28:37 +0000 (11:28 +0100)]
Revert "Use ?:= as the assignement operator for PREFIX."

This reverts commit 59af25aafd51b706ed67784aa84332965c31bb26 as
it does not work with all versions of (gnu) make.

14 years agoUse ?:= as the assignement operator for PREFIX.
Andre Noll [Mon, 2 Nov 2009 13:45:15 +0000 (14:45 +0100)]
Use ?:= as the assignement operator for PREFIX.

This creates a simply expanded variable which is more suitable for
the PREFIX variable.

14 years agoSet CC to gcc by default.
Andre Noll [Mon, 2 Nov 2009 13:43:51 +0000 (14:43 +0100)]
Set CC to gcc by default.

On systems where cc != gcc, compilation likely fails because we are
using quite some gccisms in adu. So default to gcc but let the user
override the default by setting CC manually.

The straight-forward CC ?= gcc does not work with gnu make as make
assigns CC the default value "cc".

Thanks to Steffen Schmidt for pointing out this shortcoming.

14 years agoReplace hard-coded gcc by $(CC) in Makefile.deps target.
Andre Noll [Mon, 2 Nov 2009 13:42:42 +0000 (14:42 +0100)]
Replace hard-coded gcc by $(CC) in Makefile.deps target.

If the user chooses alternative compiler, she will likely also generate
the dependency file by using that compiler.

14 years agoAdd wrapper for isspace() which is needed for NetBSD.
Andre Noll [Mon, 24 Aug 2009 15:52:31 +0000 (17:52 +0200)]
Add wrapper for isspace() which is needed for NetBSD.

14 years agoTransform the database_dir/database_root arg into an absolute path.
Andre Noll [Fri, 21 Aug 2009 11:25:04 +0000 (13:25 +0200)]
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.

14 years agoINSTALL: Link to the new osl web page rather than to the gitweb page.
Andre Noll [Fri, 21 Aug 2009 09:29:30 +0000 (11:29 +0200)]
INSTALL: Link to the new osl web page rather than to the gitweb page.

14 years agoFix typo.
Christina Wassermann [Wed, 5 Aug 2009 13:49:14 +0000 (15:49 +0200)]
Fix typo.

Fix typo in the README file.

14 years agoDocumenatation improvements.
Andre Noll [Mon, 15 Jun 2009 18:14:30 +0000 (20:14 +0200)]
Documenatation improvements.

This patch adds an illustration of the user-list mode to README and an
examples section to the man page. Thanks to Klaus Kopec who suggested
this improvement.

14 years agoIncrease width of uid column to 6.
Andre Noll [Mon, 8 Jun 2009 07:31:15 +0000 (09:31 +0200)]
Increase width of uid column to 6.

This makes the user summary output look nicer if there are uids > 10000.

14 years agoAdd an example to README.
Andre Noll [Fri, 8 May 2009 11:20:30 +0000 (13:20 +0200)]
Add an example to README.

Suggested by Sebastian Stark.

14 years agoINSTALL: Add a link to the public git repo.
Andre Noll [Fri, 8 May 2009 08:47:48 +0000 (10:47 +0200)]
INSTALL: Add a link to the public git repo.

14 years agoMerge commit 'athcx/bloom'
Andre Noll [Fri, 24 Apr 2009 09:37:08 +0000 (11:37 +0200)]
Merge commit 'athcx/bloom'



14 years agoFix another typo.
Andre Noll [Sun, 19 Apr 2009 13:31:13 +0000 (15:31 +0200)]
Fix another typo.

Two typos in the same log message..

14 years agoFix typo.
Andre Noll [Fri, 10 Apr 2009 00:05:01 +0000 (02:05 +0200)]
Fix typo.

14 years agoImplement --trailer select option.
Andre Noll [Wed, 11 Feb 2009 09:57:56 +0000 (10:57 +0100)]
Implement --trailer select option.

It works just like the --header option.

14 years agoMerge commit 'fml/master'
Andre Noll [Tue, 10 Feb 2009 22:08:20 +0000 (23:08 +0100)]
Merge commit 'fml/master'


14 years agoremove paraslash relict in comment
Sebastian Stark [Sun, 1 Feb 2009 22:51:59 +0000 (23:51 +0100)]
remove paraslash relict in comment

14 years agoflush output after each command in interactive mode.
Sebastian Stark [Mon, 2 Feb 2009 09:32:12 +0000 (10:32 +0100)]
flush output after each command in interactive mode.

Otherwise "clients" that are not terminals have difficulties
seeing adu's output.

14 years agoadd simple install target for adu and adu.1
Sebastian Stark [Mon, 2 Feb 2009 10:03:49 +0000 (11:03 +0100)]
add simple install target for adu and adu.1

14 years agonew option database-root
Sebastian Stark [Wed, 4 Feb 2009 10:16:01 +0000 (11:16 +0100)]
new option database-root

If database-root is given, the database dir is computed by
appending the base dir to it. Obviously this works only if
base dir is given, even for select mode.
The needed directory structure is created below database-root
by the new function mkpath(), which recursively creates any
directory needed to copy the structure of base dir. This
has the side-effect that the database dir is always created
for the user (if permissions allow) which wasn't the case

database_dir is now a global variable just like conf and should
be used whenever conf.database_dir_arg was used before.

14 years agoMerge branch 'master' into bloom
Andre Noll [Thu, 25 Dec 2008 11:23:10 +0000 (12:23 +0100)]
Merge branch 'master' into bloom


14 years agoMake user.c independent of command line options.
Andre Noll [Thu, 25 Dec 2008 11:19:56 +0000 (12:19 +0100)]
Make user.c independent of command line options.

14 years agoMerge branch 'master' into bloom
Andre Noll [Thu, 25 Dec 2008 10:54:46 +0000 (11:54 +0100)]
Merge branch 'master' into bloom

14 years agoRemove unused option --config-file.
Andre Noll [Thu, 25 Dec 2008 10:54:26 +0000 (11:54 +0100)]
Remove unused option --config-file.

14 years agobloom.c: Remove some unneccessary includes.
Andre Noll [Thu, 25 Dec 2008 10:48:53 +0000 (11:48 +0100)]
bloom.c: Remove some unneccessary includes.

14 years agoAdd source code documentation for bloom_insert().
Andre Noll [Thu, 25 Dec 2008 10:46:41 +0000 (11:46 +0100)]
Add source code documentation for bloom_insert().

14 years agoRename bloom_test_and_insert() to bloom_insert().
Andre Noll [Wed, 24 Dec 2008 13:02:50 +0000 (14:02 +0100)]
Rename bloom_test_and_insert() to bloom_insert().

In order to keep statistics up to date, we always need to do the test.

14 years agoRename bloom_init() to bloom_new().
Andre Noll [Wed, 24 Dec 2008 12:59:14 +0000 (13:59 +0100)]
Rename bloom_init() to bloom_new().

14 years agobloom: Add some source documentation.
Andre Noll [Wed, 24 Dec 2008 12:51:29 +0000 (13:51 +0100)]
bloom: Add some source documentation.

14 years agoMerge branch 'master' into bloom
Andre Noll [Wed, 24 Dec 2008 12:14:11 +0000 (13:14 +0100)]
Merge branch 'master' into bloom

14 years agoDocument the stat64 compatibility fix.
Andre Noll [Wed, 24 Dec 2008 12:13:52 +0000 (13:13 +0100)]
Document the stat64 compatibility fix.

14 years agoMerge branch 'master' into bloom
Andre Noll [Tue, 23 Dec 2008 16:27:06 +0000 (17:27 +0100)]
Merge branch 'master' into bloom

14 years agoMake it compile on FreeBSD and NetBSD.
Andre Noll [Tue, 23 Dec 2008 16:26:52 +0000 (17:26 +0100)]
Make it compile on FreeBSD and NetBSD.

off_t on BSD is 64 bit even on 32bit machines, so there are no
special tricks needed to get large file support. In fact, getconf
has no options for large file support and struct stat64 and lstat64()
do not exist on BSD systems. This caused the compilation to fail on
those systems.

Fix this problem by checking for BSD via uname -s in the Makefile. If
uname indicates we're on BSD, then do not use getconf and #define
stat64 and lstat64() to stat and lstat() respectively.

14 years agoFirst draft of hard link detection via bloom filters.
Andre Noll [Sun, 21 Dec 2008 22:47:28 +0000 (23:47 +0100)]
First draft of hard link detection via bloom filters.

14 years agoFix a design bug concerning struct user_info.
Andre Noll [Wed, 17 Dec 2008 22:32:21 +0000 (23:32 +0100)]
Fix a design bug concerning struct user_info.

It was a bad idea to include the accounting data (#files, #dirs,
information about the user only.

So move the accounting data to user_summary_info. This allows
to get rid of the ugly uid_hash_table_sort_idx construct and of
sort_hash_table(). These were only needed because of the broken
design.  We now never sort the hash table but allocate an array of
user_summary_info structures on each query and sort that array instead.

This patch not only simplifies code but also fixes a real bug noted by
Sebastian Stark: If the user_summary was requested more than once in
interactive mode, the old code computed incorrect values because the
above mentioned accounting fields were only initialized once. The new
code gets this right automatically because a fresh array is created
on each query.

15 years agoprint_complete_help_and_die() does not return.
Andre Noll [Sat, 22 Nov 2008 22:40:18 +0000 (23:40 +0100)]
print_complete_help_and_die() does not return.

So change the return type to void.

15 years agoMerge commit 'fml/master'
Andre Noll [Sat, 22 Nov 2008 22:38:39 +0000 (23:38 +0100)]
Merge commit 'fml/master'

15 years agoSome more source code documentation.
Andre Noll [Wed, 12 Nov 2008 21:40:00 +0000 (22:40 +0100)]
Some more source code documentation.

15 years agoAdd documentation of parse_select_options().
Andre Noll [Wed, 12 Nov 2008 20:28:55 +0000 (21:28 +0100)]
Add documentation of parse_select_options().

15 years agoFix a compiler warning.
Andre Noll [Wed, 12 Nov 2008 17:12:40 +0000 (18:12 +0100)]
Fix a compiler warning.

It's kinda bogus, but anyway. It fixes

select.c:532: warning: 'comp' may be used uninitialized in this function

15 years agoAdd documentation of DEFINE_ERRLIST.
Andre Noll [Tue, 11 Nov 2008 22:39:50 +0000 (23:39 +0100)]
Add documentation of DEFINE_ERRLIST.

15 years agoStart writing the mainpage for the API reference.
Andre Noll [Tue, 11 Nov 2008 22:39:06 +0000 (23:39 +0100)]
Start writing the mainpage for the API reference.

This should also contain a general overview..

15 years agoAdd yet more source code documentation.
Andre Noll [Tue, 11 Nov 2008 22:08:43 +0000 (23:08 +0100)]
Add yet more source code documentation.

15 years agoAdd some more souce code documentation.
Andre Noll [Tue, 11 Nov 2008 21:09:00 +0000 (22:09 +0100)]
Add some more souce code documentation.

15 years agoMake close_all_tables() static.
Andre Noll [Tue, 11 Nov 2008 20:58:33 +0000 (21:58 +0100)]
Make close_all_tables() static.

It's only used in adu.c.

15 years agoMerge commit 'fml/master'
Andre Noll [Mon, 10 Nov 2008 21:32:24 +0000 (22:32 +0100)]
Merge commit 'fml/master'

15 years agostring.c: Replace "paralash" by "adu" in source code documentation.
Andre Noll [Mon, 10 Nov 2008 21:30:09 +0000 (22:30 +0100)]
string.c: Replace "paralash" by "adu" in source code documentation.

15 years agoAdd source code documentation for run_select_query() and com_select().
Andre Noll [Mon, 10 Nov 2008 21:29:17 +0000 (22:29 +0100)]
Add source code documentation for run_select_query() and com_select().

15 years agoAdd missing source code documentation of user.c.
Andre Noll [Mon, 10 Nov 2008 21:00:06 +0000 (22:00 +0100)]
Add missing source code documentation of user.c.

This completes the documentation of user.c.

15 years agoadu-0.0.5. v0.0.5
Andre Noll [Mon, 10 Nov 2008 09:24:57 +0000 (10:24 +0100)]

15 years agoMerge commit 'meins/master'
Andre Noll [Mon, 10 Nov 2008 09:23:15 +0000 (10:23 +0100)]
Merge commit 'meins/master'

15 years agoAdd documentation of the enhancments to --output.
Andre Noll [Mon, 10 Nov 2008 09:23:06 +0000 (10:23 +0100)]
Add documentation of the enhancments to --output.

Code for the new features is still missing.

15 years agoAdd \brief command to file header to make doxygen happy.
Andre Noll [Mon, 10 Nov 2008 00:39:18 +0000 (01:39 +0100)]
Add \brief command to file header to make doxygen happy.

15 years agoRemove sha1.c
Andre Noll [Mon, 10 Nov 2008 00:38:10 +0000 (01:38 +0100)]
Remove sha1.c

This was never needed.

15 years agouser.c: Add some more source code documentation.
Andre Noll [Mon, 10 Nov 2008 00:28:58 +0000 (01:28 +0100)]
user.c: Add some more source code documentation.

15 years agoAdd copyright header and COPYING file.
Andre Noll [Mon, 10 Nov 2008 00:06:13 +0000 (01:06 +0100)]
Add copyright header and COPYING file.

15 years agoCosmetic cleanups.
Andre Noll [Sun, 9 Nov 2008 23:57:02 +0000 (00:57 +0100)]
Cosmetic cleanups.

15 years agoRemove duplicate whitespaces in documentation.
Andre Noll [Sun, 9 Nov 2008 22:20:20 +0000 (23:20 +0100)]
Remove duplicate whitespaces in documentation.

man2html does not like that.

15 years agoImplement pattern matching for select mode.
Andre Noll [Sun, 9 Nov 2008 22:18:40 +0000 (23:18 +0100)]
Implement pattern matching for select mode.

15 years agoMinor documentation updates/fixes/improvements.
Andre Noll [Sun, 9 Nov 2008 19:37:41 +0000 (20:37 +0100)]
Minor documentation updates/fixes/improvements.

15 years agoMake the header line configurable.
Andre Noll [Sun, 9 Nov 2008 19:37:09 +0000 (20:37 +0100)]
Make the header line configurable.

This replaces the --no-header flag by --header string option. The
argument is the header of the summary/list.

This was not a straight-forward task because the headers for the
user lists contain the uid and the user name. So introduce another
set of format string directives to still allow this.

15 years agoformat.c: Return an empty buffer for empty format strings rather than NULL.
Andre Noll [Sun, 9 Nov 2008 19:30:08 +0000 (20:30 +0100)]
format.c: Return an empty buffer for empty format strings rather than NULL.

15 years agoRename short option -L to -l.
Andre Noll [Sun, 9 Nov 2008 15:27:10 +0000 (16:27 +0100)]
Rename short option -L to -l.

Also, add a more descriptive help text.

15 years agoMake --limit work also for the user summary.
Andre Noll [Sun, 9 Nov 2008 15:21:54 +0000 (16:21 +0100)]
Make --limit work also for the user summary.

15 years agocompute_user_summary does not need any private data.
Andre Noll [Sun, 9 Nov 2008 15:13:38 +0000 (16:13 +0100)]
compute_user_summary does not need any private data.

Consequently, pass a NULL pointer rather than a pointer to struct
format_info which is not used anyway.

15 years agoFix sorting of the uid hash table.
Andre Noll [Sun, 9 Nov 2008 14:33:16 +0000 (15:33 +0100)]
Fix sorting of the uid hash table.

We must not blindy sort the whole table because in interactive mode
this table may be modified by later commands and lookup_uid() gets
confused if the entries have been permuted. So introduce
uid_hash_table_sort_idx, an array of indices that describes the current
sorting of the hash table. The order of the entries in the table itsself
never gets changed any more with this patch.

Also, simplify the uid comparators by introducing a wrapper that does
the casts which were previously contained in each comparator.

15 years agoMake the summary comparators non-static.
Andre Noll [Sun, 9 Nov 2008 12:21:04 +0000 (13:21 +0100)]
Make the summary comparators non-static.

15 years agoImplement the new interactive command "source".
Andre Noll [Sun, 9 Nov 2008 12:15:42 +0000 (13:15 +0100)]
Implement the new interactive command "source".

15 years agoFix a typo in interactive.c.
Andre Noll [Sun, 9 Nov 2008 12:15:16 +0000 (13:15 +0100)]
Fix a typo in interactive.c.

15 years agoMake user_summary the default select mode.
Andre Noll [Sun, 9 Nov 2008 00:55:12 +0000 (01:55 +0100)]
Make user_summary the default select mode.

15 years agoDo not close tables on each query.
Andre Noll [Sun, 9 Nov 2008 00:45:42 +0000 (01:45 +0100)]
Do not close tables on each query.

This speeds up interactive mode where many queries may be executed
in a row. User tables are opened on demand (if the uid is admissible)
and only closed on exit. Also the dir table is opened only once per
session rather than on each query.

15 years agoIncrease default loglevel to 4 (WARN).
Andre Noll [Sun, 9 Nov 2008 00:38:32 +0000 (01:38 +0100)]
Increase default loglevel to 4 (WARN).

15 years agoFix segfault in select mode if --uid was given.
Andre Noll [Sat, 8 Nov 2008 23:03:06 +0000 (00:03 +0100)]
Fix segfault in select mode if --uid was given.

We must not close tables for non-admissible users.

15 years agoFix a couple of gengetopt-related memory leaks.
Andre Noll [Sat, 8 Nov 2008 22:54:16 +0000 (23:54 +0100)]
Fix a couple of gengetopt-related memory leaks.

It's still a bit leaky..

15 years agoUser handling improvments.
Andre Noll [Sat, 8 Nov 2008 22:05:54 +0000 (23:05 +0100)]
User handling improvments.

- move global variable num_uids to user.c.
- logging improvements.
- replace search_uid() by create_user_table(). search_uid() had a
  horrible interface.
- in user.c, use FOR_EACH_USER() to loop over all users rather than

15 years agoSimplify user table closing.
Andre Noll [Sat, 8 Nov 2008 17:58:01 +0000 (18:58 +0100)]
Simplify user table closing.

No need for an extra function for freeing the hash table.

15 years agoselect.c: Fix two return values.
Andre Noll [Sat, 8 Nov 2008 17:26:24 +0000 (18:26 +0100)]
select.c: Fix two return values.

ERRNO_TO_ERROR() takes a _positive_ error code.