OpenVAS Libraries  4.0+rc3.SVN
openvas_auth.h
1 /* OpenVAS Libraries
2  * $Id$
3  * Description: Header for authentication mechanism(s).
4  *
5  * Authors:
6  * Matthew Mundell <matt@mundell.ukfsn.org>
7  * Michael Wiegand <michael.wiegand@greenbone.net>
8  * Felix Wolfsteller <felix.wolfsteller@intevation.de>
9  *
10  * Copyright:
11  * Copyright (C) 2009,2010 Greenbone Networks GmbH
12  *
13  * This program is free software; you can redistribute it and/or
14  * modify it under the terms of the GNU General Public License
15  * as published by the Free Software Foundation; either version 2
16  * of the License, or (at your option) any later version.
17  *
18  * This program is distributed in the hope that it will be useful,
19  * but WITHOUT ANY WARRANTY; without even the implied warranty of
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21  * GNU General Public License for more details.
22  *
23  * You should have received a copy of the GNU General Public License
24  * along with this program; if not, write to the Free Software
25  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
26  * USA.
27  */
28 
29 #ifndef _OPENVAS_AUTH_H
30 #define _OPENVAS_AUTH_H
31 
32 #include <glib.h>
33 
34 void openvas_auth_init ();
35 
37 
38 int openvas_auth_write_config (GKeyFile * keyfile);
39 
40 gchar *get_password_hashes (int, const gchar *);
41 
42 gchar *digest_hex (int, const guchar *);
43 
44 int openvas_authenticate (const gchar *, const gchar *);
45 
46 int openvas_authenticate_uuid (const gchar *, const gchar *, gchar ** uuid);
47 
48 gchar *openvas_user_uuid (const char *name);
49 
50 int openvas_is_user_admin (const gchar *);
51 
52 int openvas_set_user_role (const gchar *, const gchar *,
53  const gchar * user_dir_name);
54 
55 int openvas_auth_mkrulesdir (const gchar * user_dir_name);
56 
57 int openvas_auth_user_rules (const gchar * username, gchar ** rules);
58 
59 int openvas_auth_user_uuid_rules (const gchar * username,
60  const gchar * user_uuid, gchar ** rules);
61 
62 int openvas_auth_store_user_rules (const gchar * user_dir, const gchar * hosts,
63  int hosts_allow);
64 
65 #endif /* not _OPENVAS_AUTH_H */