Add lladdend function and use in makewordlist.
Add a new function that adds an object to the end of a linked list.
We make use of this in makewordlist, which means we search for keys
containing words from the start of the email address first, rather than
starting with the words at the end. When you're dealing with TLDs like
com, net, org this makes a big difference, as you don't end up with a
huge list from the first word you try.
Introduce sorted keyid array functions and use in DB4.
Adds functions to keep a sorted array of keyids (aiding searching speed).
Makes use of these in the DB4 backed for searching for keys based on uid
text.
Cleanup db4 properly if we fail to open it.
Rather than exiting as soon as we hit a problem opening the DB4 db we
try to cleanup whatever we've managed to open.
Change buffer_put/fetchchar functions to use memcpy.
We used an inefficient loop to copy data in the buffer character
functions; change them to use memcpy.
Make Makefile cleanup keyd and backend db .o files.
We weren't cleaning up keyd.o and keydb_$(DBTYPE).o with "make clean"
when keyd was enabled; fix this.
Add key iteration functionality to keydb backends.
Add a function to the keydb backends which will call a given function
once for every contained in the db. Currently implemented for db4, keyd,
file and pg backends.
Move update_keys to keydb rather than merge.
Move update_keys to the database backends, as in some senses it makes
more sense there - we have multiple DB calls and this is the main thing
that needs transactions, so by moving it here we should be able to hide
them from the rest of the code.
Add keyd backend (persistant database access over Unix socket)
Add keyd, which runs in the background and talks to the real database
and then communicates with the various onak programs over a Unix
socket.
Update version to indicate arch build.
Update the version in autoconf and debian/changelog to indicate that
any build is from arch rather than a released tarball (ie add +arch).
Fix maxpath to initialise the logging infrastructure.
maxpath wasn't initialising the logging infrastructure, so would
log to stderr rather than the log file for example. Fix this.
Fix sixdegrees to initialise the logging infrastructure.
sixdegrees wasn't initialising the logging infrastructure, so would
log to stderr rather than the log file for example. Fix this.
Fix transaction around id32 updating in DB4 backend.
For some reason we finished our transaction before we wrote the id32db
details. Fix this so we do it afterwards instead.
Add assert for invalid armor parameters.
Add an assert if we had a NULL string to the armor_putchar function.
Brett spotted this while doing evil things.
Change makedepend to use the compile instead.
Change to using the compiler for makedepend instead. This works for GCC;
I don't know about other compilers. May need an autoconf test instead in
future.
Quieten cleanup infrastructure.
Lower the loglevel output of the cleanup infrastructure to INFO rather
than NOTICE; ie don't show it on the default install.
Create an initial database when installing the package.
If we're installing the Debian package and there's no existing database
then create one by importing my key.
Configure basic onak.conf using autoconf info.
Write a basic onak.conf that has paths from the autoconf info, rather
than hard coded paths to my homedir.
Add more checking on db4 cleanup.
Add more checking when cleaning up the db4 backend; some things might
not have succeeded, but we should still try to cleanup those that did.
First cut at cleanup infrastructure.
Due to the fact that db4 is incredibly fragile in the fact of abnormal
termination and that Apache (and presumably other web servers) will
merrily kill CGI as and when they see fit, we need to try and catch any
signal we can and clean ourselves up.
Add Debian packaging files.
Add the debian/ subdir and files contained therein. Thanks to Ross
Burton <ross@debian.org>, who provided all of this (mostly unaltered by
me).
Upgrade db3 backend to db4.
Upgrade db3 backend to db4. Hopefully this will fix the locking issues
that have been seen - certainly no issues have been seen in testing over the
past week.
Further compile warning cleanups.
Remove a couple of further compiler warnings about passing strcmp to llfind.
Now seems to compile cleanly with gcc -std=c99 and tcc.
Update DB3 backend to use 64bit key ids.
This fixes the DB3 backend to store keys using their 64bit key ids rather
than the truncated 32bit id. It adds another database to map the 32bit ids
to the full 64bits.
Add option to gpgwww to return all keys listed.
This commit adds functionality to gpgwww to return all the key data for the
keys listed in the paths. It's largely based on code provided by Ian Haywood
<ihaywood@gnu.org>.
cscvs to tla changeset 122
Author: noodles
Date: 2004/05/26 17:48:02
Fix gpg --search support (it doesn't like uid/sub at the start of the index
lines).
cscvs to tla changeset 116
Author: noodles
Date: 2004/01/04 18:48:37
Add a lock around the call to onak so that we've only got one copy of onak-mail
running it at once.