1 /* $Id$
2  *
3  * Lasso - A free implementation of the Liberty Alliance specifications.
4  *
5  * Copyright (C) 2004-2007 Entr'ouvert
6  * http://lasso.entrouvert.org
7  *
8  * Authors: See AUTHORS file in top-level directory.
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program; if not, see <http://www.gnu.org/licenses/>.
22  */
23 
24 #ifndef __LASSO_SERVER_PRIVATE_H__
25 #define __LASSO_SERVER_PRIVATE_H__
26 
27 #include "server.h"
28 #include "../xml/private.h"
29 
30 #ifdef __cplusplus
31 extern "C" {
32 #endif /* __cplusplus */
33 
34 
35 struct _LassoServerPrivate
36 {
37 	gboolean dispose_has_run;
38 	GList *encryption_private_keys;
39 	GList *svc_metadatas;
40 };
41 
42 gchar* lasso_server_get_first_providerID(LassoServer *server);
43 gchar* lasso_server_get_first_providerID_by_role(const LassoServer *server, LassoProviderRole role);
44 gchar* lasso_server_get_providerID_from_hash(LassoServer *server, gchar *b64_hash);
45 xmlSecKey* lasso_server_get_private_key(LassoServer *server);
46 GList* lasso_server_get_encryption_private_keys(LassoServer *server);
47 
48 lasso_error_t lasso_server_get_signature_context_for_provider(LassoServer *server,
49 		LassoProvider *provider, LassoSignatureContext *signature_context);
50 
51 lasso_error_t lasso_server_get_signature_context_for_provider_by_name(LassoServer *server,
52 		const char *provider_id, LassoSignatureContext *signature_context);
53 
54 lasso_error_t lasso_server_set_signature_for_provider_by_name(LassoServer *server,
55 		const char *provider_id, LassoNode *node);
56 
57 lasso_error_t lasso_server_export_to_query_for_provider_by_name(LassoServer *server,
58 		const char *provider_id, LassoNode *node, char **query);
59 
60 lasso_error_t lasso_server_get_signature_context(LassoServer *server, LassoSignatureContext
61 		*context);
62 
63 #ifdef __cplusplus
64 }
65 #endif /* __cplusplus */
66 
67 #endif /* __LASSO_SERVER_PRIVATE_H__ */
68