Mercurial > noffle
diff 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 diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/authenticate.h Fri Jan 10 23:25:45 2003 +0000 @@ -0,0 +1,40 @@ +/* + 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