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