*/
#include <string.h>
+#include <gdbm.h>
#include "usermap.h"
+int ACCESS_DEFAULT = ACCESS_DENY;
+
int
usermap_perm (char *user)
{
- return ACCESS_DENY;
+ GDBM_FILE allow_db = NULL;
+ GDBM_FILE deny_db = NULL;
+ int allow = 0;
+ int deny = 0;
+ datum key;
+ key.dptr = user;
+ key.dsize = strlen (user);
+ allow_db = gdbm_open ("/var/lib/popproxy/allow.db",
+ 0, GDBM_READER, 0, NULL);
+ deny_db = gdbm_open ("/var/lib/popproxy/deny.db",
+ 0, GDBM_READER, 0, NULL);
+ if (allow_db)
+ {
+ allow = gdbm_exists (allow_db, key);
+ gdbm_close (allow_db);
+ }
+ if (deny_db)
+ {
+ deny = gdbm_exists (deny_db, key);
+ gdbm_close (deny_db);
+ }
+ if (deny)
+ return ACCESS_DENY;
+ if (allow)
+ return ACCESS_ALLOW;
+ return ACCESS_DEFAULT;
}