summaryrefslogtreecommitdiffabout
path: root/include/opkele
authorMichael Krelin <hacker@klever.net>2007-01-12 00:28:16 (UTC)
committer Michael Krelin <hacker@klever.net>2007-01-12 00:28:16 (UTC)
commit4cc2e58186e8cd9b96a3573c92f6664064cf11fe (patch) (unidiff)
tree762943dfd3db8b6c48d5b31418310962376746d3 /include/opkele
parentf5eb33d7a9c296e3fa7bde9b678f0e1027a9bf88 (diff)
downloadlibopkele-4cc2e58186e8cd9b96a3573c92f6664064cf11fe.zip
libopkele-4cc2e58186e8cd9b96a3573c92f6664064cf11fe.tar.gz
libopkele-4cc2e58186e8cd9b96a3573c92f6664064cf11fe.tar.bz2
extended server and consumer classes
Diffstat (limited to 'include/opkele') (more/less context) (ignore whitespace changes)
-rw-r--r--include/opkele/consumer.h8
-rw-r--r--include/opkele/server.h6
-rw-r--r--include/opkele/xconsumer.h41
-rw-r--r--include/opkele/xserver.h37
4 files changed, 85 insertions, 7 deletions
diff --git a/include/opkele/consumer.h b/include/opkele/consumer.h
index f9939cf..f32509e 100644
--- a/include/opkele/consumer.h
+++ b/include/opkele/consumer.h
@@ -84,49 +84,49 @@ namespace opkele {
84 * @param return_to the return_to url to pass with the request 84 * @param return_to the return_to url to pass with the request
85 * @param trust_root the trust root to advertise with the request 85 * @param trust_root the trust root to advertise with the request
86 * @param ext pointer to an extension(s) hooks object 86 * @param ext pointer to an extension(s) hooks object
87 * @return the location string 87 * @return the location string
88 * @throw exception in case of error 88 * @throw exception in case of error
89 */ 89 */
90 string checkid_immediate(const string& identity,const string& return_to,const string& trust_root="",extension_t *ext=0); 90 virtual string checkid_immediate(const string& identity,const string& return_to,const string& trust_root="",extension_t *ext=0);
91 /** 91 /**
92 * prepare the parameters for the checkid_setup 92 * prepare the parameters for the checkid_setup
93 * request. 93 * request.
94 * @param identity the identity to verify 94 * @param identity the identity to verify
95 * @param return_to the return_to url to pass with the request 95 * @param return_to the return_to url to pass with the request
96 * @param trust_root the trust root to advertise with the request 96 * @param trust_root the trust root to advertise with the request
97 * @param ext pointer to an extension(s) hooks object 97 * @param ext pointer to an extension(s) hooks object
98 * @return the location string 98 * @return the location string
99 * @throw exception in case of error 99 * @throw exception in case of error
100 */ 100 */
101 string checkid_setup(const string& identity,const string& return_to,const string& trust_root="",extension_t *ext=0); 101 virtual string checkid_setup(const string& identity,const string& return_to,const string& trust_root="",extension_t *ext=0);
102 /** 102 /**
103 * the actual implementation behind checkid_immediate() and 103 * the actual implementation behind checkid_immediate() and
104 * checkid_setup() functions. 104 * checkid_setup() functions.
105 * @param mode checkid_* mode - either mode_checkid_immediate or mode_checkid_setup 105 * @param mode checkid_* mode - either mode_checkid_immediate or mode_checkid_setup
106 * @param identity the identity to verify 106 * @param identity the identity to verify
107 * @param return_to the return_to url to pass with the request 107 * @param return_to the return_to url to pass with the request
108 * @param trust_root the trust root to advertise with the request 108 * @param trust_root the trust root to advertise with the request
109 * @param ext pointer to an extension(s) hooks object 109 * @param ext pointer to an extension(s) hooks object
110 * @return the location string 110 * @return the location string
111 * @throw exception in case of error 111 * @throw exception in case of error
112 */ 112 */
113 string checkid_(mode_t mode,const string& identity,const string& return_to,const string& trust_root="",extension_t *ext=0); 113 virtual string checkid_(mode_t mode,const string& identity,const string& return_to,const string& trust_root="",extension_t *ext=0);
114 /** 114 /**
115 * verify the id_res response 115 * verify the id_res response
116 * @param pin the response parameters 116 * @param pin the response parameters
117 * @param identity the identity being checked (if not specified, 117 * @param identity the identity being checked (if not specified,
118 * @param ext pointer to an extension(s) hooks object 118 * @param ext pointer to an extension(s) hooks object
119 * extracted from the openid.identity parameter 119 * extracted from the openid.identity parameter
120 * @throw id_res_mismatch in case of signature mismatch 120 * @throw id_res_mismatch in case of signature mismatch
121 * @throw id_res_setup in case of openid.user_setup_url failure 121 * @throw id_res_setup in case of openid.user_setup_url failure
122 * (supposedly checkid_immediate only) 122 * (supposedly checkid_immediate only)
123 * @throw id_res_failed in case of failure 123 * @throw id_res_failed in case of failure
124 * @throw exception in case of other failures 124 * @throw exception in case of other failures
125 */ 125 */
126 void id_res(const params_t& pin,const string& identity="",extension_t *ext=0); 126 virtual void id_res(const params_t& pin,const string& identity="",extension_t *ext=0);
127 /** 127 /**
128 * perform a check_authentication request. 128 * perform a check_authentication request.
129 * @param server the OpenID server 129 * @param server the OpenID server
130 * @param p request parameters 130 * @param p request parameters
131 */ 131 */
132 void check_authentication(const string& server,const params_t& p); 132 void check_authentication(const string& server,const params_t& p);
diff --git a/include/opkele/server.h b/include/opkele/server.h
index bf131d8..598eb47 100644
--- a/include/opkele/server.h
+++ b/include/opkele/server.h
@@ -61,34 +61,34 @@ namespace opkele {
61 * @param pin the incoming request parameters 61 * @param pin the incoming request parameters
62 * @param return_to reference to the object to store return_to url to 62 * @param return_to reference to the object to store return_to url to
63 * @param pout the response parameters 63 * @param pout the response parameters
64 * @param ext pointer to the extension hooks object 64 * @param ext pointer to the extension hooks object
65 * @throw exception in case of errors or negative reply 65 * @throw exception in case of errors or negative reply
66 */ 66 */
67 void checkid_immediate(const params_t& pin,string& return_to,params_t& pout,extension_t *ext=0); 67 virtual void checkid_immediate(const params_t& pin,string& return_to,params_t& pout,extension_t *ext=0);
68 /** 68 /**
69 * process the checkid_setup request. 69 * process the checkid_setup request.
70 * @param pin the incoming request parameters 70 * @param pin the incoming request parameters
71 * @param return_to reference to the object to store return_to url to 71 * @param return_to reference to the object to store return_to url to
72 * @param pout the response parameters 72 * @param pout the response parameters
73 * @param ext pointer to the extension hooks object 73 * @param ext pointer to the extension hooks object
74 * @throw exception in case of errors or negative reply 74 * @throw exception in case of errors or negative reply
75 */ 75 */
76 void checkid_setup(const params_t& pin,string& return_to,params_t& pout,extension_t *ext=0); 76 virtual void checkid_setup(const params_t& pin,string& return_to,params_t& pout,extension_t *ext=0);
77 /** 77 /**
78 * the actual functionality behind checkid_immediate() and 78 * the actual functionality behind checkid_immediate() and
79 * checkid_setup() 79 * checkid_setup()
80 * @param mode the request being processed (either 80 * @param mode the request being processed (either
81 * mode_checkid_immediate or mode_checkid_setup) 81 * mode_checkid_immediate or mode_checkid_setup)
82 * @param pin the incoming request parameters 82 * @param pin the incoming request parameters
83 * @param return_to reference to the object to store return_to url to 83 * @param return_to reference to the object to store return_to url to
84 * @param pout the response parameters 84 * @param pout the response parameters
85 * @param ext pointer to the extension hooks object 85 * @param ext pointer to the extension hooks object
86 * @throw exception in case of errors or negative reply 86 * @throw exception in case of errors or negative reply
87 */ 87 */
88 void checkid_(mode_t mode,const params_t& pin,string& return_to,params_t& pout,extension_t *ext=0); 88 virtual void checkid_(mode_t mode,const params_t& pin,string& return_to,params_t& pout,extension_t *ext=0);
89 /** 89 /**
90 * process the check_authentication request. 90 * process the check_authentication request.
91 * @param pin incoming request parameters 91 * @param pin incoming request parameters
92 * @param pout response parameters 92 * @param pout response parameters
93 */ 93 */
94 void check_authentication(const params_t& pin,params_t& pout); 94 void check_authentication(const params_t& pin,params_t& pout);
diff --git a/include/opkele/xconsumer.h b/include/opkele/xconsumer.h
new file mode 100644
index 0000000..14a8aaa
--- a/dev/null
+++ b/include/opkele/xconsumer.h
@@ -0,0 +1,41 @@
1#ifndef __OPKELE_XCONSUMER_H
2#define __OPKELE_XCONSUMER_H
3
4/**
5 * @file
6 * @brief OpenID consumer with built-in extension chain
7 */
8
9#include <opkele/extension_chain.h>
10#include <opkele/consumer.h>
11
12/**
13 * @brief the main opkele namespace
14 */
15namespace opkele {
16
17 /**
18 * Extended OpenID consumer implementation with built in
19 * extensions chain.
20 */
21 class xconsumer_t : public consumer_t, public extension_chain_t {
22 public:
23
24 string checkid_immediate(const string& identity,const string& return_to,const string& trust_root="",extension_t *ext=0) {
25 return consumer_t::checkid_immediate(identity,return_to,trust_root,this);
26 }
27 string chekid_setup(const string& identity,const string& return_to,const string& trust_root="",extension_t *ext=0) {
28 return consumer_t::checkid_setup(identity,return_to,trust_root,this);
29 }
30 string checkid_(mode_t mode,const string& identity,const string& return_to,const string& trust_root="",extension_t *ext=0) {
31 return consumer_t::checkid_(mode,identity,return_to,trust_root,this);
32 }
33 void id_res(const params_t& pin,const string& identity="",extension_t *ext=0) {
34 consumer_t::id_res(pin,identity,this);
35 }
36
37 };
38
39}
40
41#endif /* __OPKELE_XCONSUMER_H */
diff --git a/include/opkele/xserver.h b/include/opkele/xserver.h
new file mode 100644
index 0000000..e29bfe6
--- a/dev/null
+++ b/include/opkele/xserver.h
@@ -0,0 +1,37 @@
1#ifndef __OPKELE_XSERVER_H
2#define __OPKELE_XSERVER_H
3
4/**
5 * @file
6 * @brief OpenID server with built-in extension chain
7 */
8
9#include <opkele/extension_chain.h>
10#include <opkele/server.h>
11
12/**
13 * @brief the main opkele namespace
14 */
15namespace opkele {
16
17 /**
18 * Extended OpenID server implementationwith built in
19 * extensions chain.
20 */
21 class xserver_t : public server_t, public extension_chain_t {
22 public:
23
24 void checkid_immediate(const params_t& pin,string& return_to,params_t& pout,extension_t *ext=0) {
25 server_t::checkid_immediate(pin,return_to,pout,this);
26 }
27 void checkid_setup(const params_t& pin,string& return_to,params_t& pout,extension_t *ext=0) {
28 server_t::checkid_setup(pin,return_to,pout,this);
29 }
30 void checkid_(mode_t mode,const params_t& pin,string& return_to,params_t& pout,extension_t *ext=0) {
31 server_t::checkid_(mode,pin,return_to,pout,this);
32 }
33 };
34
35}
36
37#endif /* __OPKELE_XSERVER_H */