1- Add a CVM suitable for anonymous FTP
2
3- v1client dies if domain is NULL in cvm_client_authenticate
4  (can't reproduce this bug)
5
6- Write tests for:
7  - cvm_client_split_account in v2client.c
8  - cvm_client_ucspi_domain and cvm_client_setugid (?)
9
10- Add concurrent access support to cvm-local mode?
11
12- Add cvm-tcp module code?
13
14- Build a caching CVM proxy
15  - Two hash tables keyed on binary request string.
16  - First hash table for positive responses, holds raw response binary.
17  - Second hash table for negative responses, holds only response code.
18  - Caches positive response for $TTL seconds.
19  - Caches negative response for $TTL_BAD seconds.
20  - Do not cache temporary errors.
21
22- Add support for allow/deny tables
23
24  - File based: if $CVM_ACCESS/deny/$USER exists, or if
25    $CVM_ACCESS/allow exists and $CVM_ACCESS/allow/$USER does not
26    exist, deny the user.  Call a common function to test.
27
28  - SQL modules: add an extra required boolean column to the query.
29
30- Write a module to do lookups from a CDB file, as well as a tool to
31  manipulate that file "cdbpasswd".
32
33- Write cvm UDP-to-command and local-to-command relays:
34  - recv input block from socket
35  - spawn command
36  - write block
37  - read result
38  - send result back on socket
39
40- Split into cvm (containing the main modules) and lib/cvm (containing
41  the client/module code).
42
43cvm-*sql:
44
45- Add hooks for prepare/execute in SQL modules.
46
47cvm-vmailmgr:
48
49- Add code to vmailmgr_auth to try to grab the password from /etc/passwd
50  if the main authentication fails.
51
52- Write modules for authenticating against a vmailmgrd daemon, both
53  local and (TCP) remote.
54