1    | /***************************************
2    |   $Revision: 1.10 $
3    | 
4    |   Authentication utilities 
5    | 
6    |   Status: NOT REVIEWED, TESTED
7    | 
8    |   Author(s):      Engin Gunduz 
9    | 
10   |   ******************/ /******************
11   |   Modification History:
12   |         engin (05/04/2000) Created.
13   |   ******************/ /******************
14   |   Copyright (c) 2000,2001,2002                    RIPE NCC
15   |  
16   |   All Rights Reserved
17   |   
18   |   Permission to use, copy, modify, and distribute this software and its
19   |   documentation for any purpose and without fee is hereby granted,
20   |   provided that the above copyright notice appear in all copies and that
21   |   both that copyright notice and this permission notice appear in
22   |   supporting documentation, and that the name of the author not be
23   |   used in advertising or publicity pertaining to distribution of the
24   |   software without specific, written prior permission.
25   |   
26   |   THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
27   |   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS; IN NO EVENT SHALL
28   |   AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
29   |   DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
30   |   AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
31   |   OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
32   |  ***************************************/
33   | 
34   | #ifndef AU_UTIL_H
35   | #define AU_UTIL_H 
36   | 
37   | #include <stdio.h>
38   | #include <stdlib.h>
39   | #include <string.h>
40   | #include <sys/types.h>
41   | #include <unistd.h>
42   | #include <regex.h>
43   | #include <glib.h>
44   | //#include "er_UP_errors.h"
45   | //#include "erroutines.h"
46   | 
47   | #define AU_MAIL_FROM 1
48   | #define AU_CRYPT_PW 2
49   | #define AU_PGP 3
50   | #define AU_NONE 4
51   | #define AU_MD5_PW 5
52   | 
53   | #ifdef __cplusplus
54   | extern "C" {
55   | #endif
56   | 
57   | 
58   | typedef struct _credentials_struct{
59   |    GSList * password_list;
60   |    char * from;       /* this is the whole "From:" field of the incoming message */
61   |    char * from_email; /* this is only the e-mail address */
62   |    /*char pgp_struct[10];*/
63   |    GSList * pgp_key_list;
64   | } credentials_struct;
65   | 
66   | 
67   | typedef struct _auth_struct{
68   |   int type;
69   |   char * auth;
70   |   char * mntner_name;
71   |   int index;
72   |   char * pgp_struct;
73   | } auth_struct;
74   | 
75   | char * AU_crypt(const char *key, const char *setting);
76   | int AU_authorise(GSList * auth_vector, credentials_struct credentials);
77   | 
78   | #ifdef __cplusplus
79   |  }
80   | #endif
81   | 
82   | #endif