Ignore:
Timestamp:
1999-09-02T12:30:56+12:00 (25 years ago)
Author:
rjmcnab
Message:

added option for specifying whether the gdbm database should be locked

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/gsdl/src/recpt/userdb.cpp

    r386 r516  
    1212/*
    1313   $Log$
     14   Revision 1.3  1999/09/02 00:30:04  rjmcnab
     15   added option for specifying whether the gdbm database should be locked
     16
    1417   Revision 1.2  1999/07/14 08:30:01  rjmcnab
    1518   fixed an error to do with the way time is dealt with on different machines.
     
    2629#include "gsdltimes.h"
    2730#include "fileutil.h"
     31#include <stdlib.h>
    2832
    2933// include crypt
    30 //#include <crypt.h>
    31 #include <unistd.h>
     34#include <crypt.h>
     35//#include <unistd.h>
    3236
    3337
     
    143147            userinfo_t &userinfo) {
    144148  gdbmclass userdb;
    145   if (!userdb.opendatabase(userdbfile)) {
    146     if (!userdbfile.empty() && !file_exists (userdbfile) &&
    147     username == "admin") {
     149  if (!userdb.opendatabase(userdbfile, GDBM_READER, 1000, true)) {
     150/*    if (!userdbfile.empty() && !file_exists (userdbfile) &&
     151    username == "admin") {*/
     152    if (!userdbfile.empty() && username == "admin") {
    148153      // no database -- create a database with an initial account
    149154      userinfo.clear();
     
    180185            const userinfo_t &userinfo) {
    181186  gdbmclass userdb;
    182   if (!userdb.opendatabase(userdbfile, GDBM_WRCREAT, 1000)) return false;
     187  if (!userdb.opendatabase(userdbfile, GDBM_WRCREAT, 1000, true)) return false;
    183188
    184189  bool success = set_user_info (userdb, username, userinfo);
     
    195200void delete_user (const text_t &userdbfile, const text_t &username) {
    196201  gdbmclass userdb;
    197   if (!userdb.opendatabase(userdbfile, GDBM_WRCREAT, 1000)) return;
     202  if (!userdb.opendatabase(userdbfile, GDBM_WRCREAT, 1000, true)) return;
    198203
    199204  delete_user (userdb, username);
     
    263268text_t generate_key (const text_t &keydbfile, const text_t &username) {
    264269  gdbmclass keydb;
    265   if (!keydb.opendatabase(keydbfile, GDBM_WRCREAT, 1000)) return "";
     270  if (!keydb.opendatabase(keydbfile, GDBM_WRCREAT, 1000, true)) return "";
    266271
    267272  text_t key = generate_key (keydb, username);
     
    306311        const text_t &key, const text_t &group, int keydecay) {
    307312  gdbmclass keydb;
    308   if (!keydb.opendatabase(keydbfile, GDBM_WRCREAT, 1000)) return "";
     313  if (!keydb.opendatabase(keydbfile, GDBM_WRCREAT, 1000, true)) return false;
    309314
    310315  bool success = check_key (keydb, thisuser, key, group, keydecay);
     
    320325  // open the key database
    321326  gdbmclass keydb;
    322   if (!keydb.opendatabase(keydbfile, GDBM_WRCREAT, 1000)) return;
     327  if (!keydb.opendatabase(keydbfile, GDBM_WRCREAT, 1000, true)) return;
    323328
    324329  // get a list of keys created more than keydecay seconds agon
Note: See TracChangeset for help on using the changeset viewer.