view src/lock.h @ 288:c02c4eb95f95 noffle

[svn] * src/configfile.h,src/configfile.c,docs/noffle.conf.5: Add noffle-user and noffle-group configs. * src/configfile.c,src/fetch.c,src/fetchlist.c,src/protocol.c, src/server.c: Replace strcpy() with Utl_cpyStr() where appropriate. See Debian bug 168128. * src/control.c,src/configfile.c,src/noffle.c: Replace [s]scanf("%s") with [s]scanf(MAXCHAR_FMT). * src/noffle.c: Log warning if noffle.conf is world readable. * src/noffle.c: Restrict most options to news admins; i.e. those who are root or news on running Noffle. * Makefile.in,acconfig.h,aclocal.m4,config.h.in,configure,configure.in, docs/Makefile.in,docs/noffle.conf.5,packages/Makefile.in, packages/redhat/Makefile.in,src/Makefile.am,src/Makefile.in, src/authenticate.c,src/authenticate.h,src/noffle.c,src/server.c: Add basic authentication using either Noffle-specific user file or authenticating via PAM (service 'noffle'). PAM authentication needs to run as root, so a Noffle server that needs PAM must be started by root. Helpful (?) error messages will be logged if not. Noffle will switch ruid and euid to 'news' (or whatever is configured) ASAP. * src/noffle.c: Add uid checking.
author bears
date Fri, 10 Jan 2003 23:25:45 +0000
parents 8ea6b5ddc5a5
children
line wrap: on
line source

/*
  lock.h

  Opening/Closing of the various databases: article overview database,
  articla database, groups database, outgoing articles database, requests
  database. Handles global lock.

  $Id: lock.h 249 2001-01-25 13:38:31Z bears $
*/

#ifndef LOCK_H
#define LOCK_H

#if HAVE_CONFIG_H
#include <config.h>
#endif

#include "common.h"

enum LockRequestWait { LOCK_WAIT, LOCK_NOWAIT };

/* Open all databases and set global lock. */
Bool
Lock_openDatabases( void );

/* Close all databases and release global lock. */
void
Lock_closeDatabases( void );

/* Ensure all databases synced to disc. */
void
Lock_syncDatabases( void );

/* Check the global lock held. */
Bool
Lock_gotLock( void );

/* Get fetch lock. */
Bool
Lock_getFetchLock( enum LockRequestWait wait );

/* Release fetch lock. */
void
Lock_releaseFetchLock( void );

/* Check the fetch lock held. */
Bool
Lock_fetchLock( void );

#endif