1 #ifndef	authlib_auth_h
2 #define	authlib_auth_h
3 
4 /*
5 ** Copyright 1998 - 2004 Double Precision, Inc.  See COPYING for
6 ** distribution information.
7 */
8 
9 #if	HAVE_CONFIG_H
10 #include	"courier_auth_config.h"
11 #endif
12 #include	<sys/types.h>
13 #include	"courierauth.h"
14 
15 #ifdef	__cplusplus
16 extern "C" {
17 #endif
18 
19 
20 
21 /* authcheckpassword is the general password validation routine.
22 ** It returns 0 if the password matches the encrypted password.
23 */
24 
25 int authcheckpassword(const char *,	/* password */
26 		      const char *);	/* encrypted password */
27 
28 	/*
29 	** authcryptpasswd is a password hashing function, used to create
30 	** new password.  password is the cleartext password.
31 	** encryption_hint is a hint to the type of hashing to be used
32 	** (NULL means use a default hash function).
33 	*/
34 
35 char *authcryptpasswd(const char *password,
36 		      const char *encryption_hint);
37 
38 
39 int auth_sys_common( int (*auth_pre_func)(const char *,
40 					  const char *,
41 					  int (*)(struct authinfo *,
42 						  void *),
43 					  void *),
44 		     const char *user,
45 		     const char *pass,
46 		     const char *service,
47 		     int (*callback_func)(struct authinfo *, void *),
48 		     void *callback_arg);
49 
50 
51 #ifdef	__cplusplus
52 }
53 #endif
54 
55 #endif
56