view src/authenticate.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
children
line wrap: on
line source

/*
  authenticate.h

  Do client authentication

  $Id: authenticate.h 420 2003-01-10 23:25:45Z bears $
*/

#ifndef AUTHENTICATE_H
#define AUTHENTICATE_H

#include "common.h"

enum AuthResult { AUTH_ERROR, AUTH_DISCONNECT, AUTH_FAILED, AUTH_OK };

/* Authenticate a user and password. */
enum AuthResult
Auth_authenticate( const char *user, const char *pass );

/* Open authentication session. */
Bool
Auth_open( void );

/* Authentication session now closed. */
void
Auth_close( void );

/* Check we have appropriate privs for authentication. */
Bool
Auth_checkPrivs( void );

/* Are are privs sufficient only for admin access? */
Bool
Auth_admin( void );

/* Drop any privs required for authentication. */
Bool
Auth_dropPrivs( void );

#endif