summaryrefslogtreecommitdiffabout
path: root/include
Unidiff
Diffstat (limited to 'include') (more/less context) (ignore whitespace changes)
-rw-r--r--include/opkele/basic_op.h68
1 files changed, 68 insertions, 0 deletions
diff --git a/include/opkele/basic_op.h b/include/opkele/basic_op.h
new file mode 100644
index 0000000..7f4e481
--- a/dev/null
+++ b/include/opkele/basic_op.h
@@ -0,0 +1,68 @@
1#ifndef __OPKELE_BASIC_OP_H
2#define __OPKELE_BASIC_OP_H
3
4#include <string>
5#include <opkele/types.h>
6#include <opkele/extension.h>
7
8namespace opkele {
9 using std::string;
10
11 class basic_op {
12 public:
13 mode_t mode;
14 assoc_t assoc;
15 bool openid2;
16 string return_to;
17 string realm;
18 string claimed_id;
19 string identity;
20 string invalidate_handle;
21
22 void reset_vars();
23
24 bool has_return_to() const;
25 const string& get_return_to() const;
26
27 const string& get_realm() const;
28
29 bool has_identity() const;
30 const string& get_claimed_id() const;
31 const string& get_identity() const;
32
33 bool is_id_select() const;
34
35 void select_identity(const string& c,const string& i);
36 void set_claimed_id(const string& c);
37
38 basic_openid_message& associate(
39 basic_openid_message& oum,
40 const basic_openid_message& inm);
41
42 void checkid_(const basic_openid_message& inm,extension_t *ext=0);
43 basic_openid_message& id_res(basic_openid_message& om);
44 basic_openid_message& cancel(basic_openid_message& om);
45 basic_openid_message& error(basic_openid_message& om,
46 const string& error,const string& contact,
47 const string& reference );
48 basic_openid_message& setup_needed(
49 basic_openid_message& oum,const basic_openid_message& inm);
50
51 basic_openid_message& check_authentication(
52 basic_openid_message& oum,const basic_openid_message& inm);
53
54 virtual void verify_return_to();
55
56 virtual assoc_t alloc_assoc(const string& t,size_t kl,bool sl) = 0;
57 virtual assoc_t retrieve_assoc(const string& h) = 0;
58
59 virtual string& alloc_nonce(string& nonce,bool sl) = 0;
60 virtual bool check_nonce(const string& nonce) = 0;
61 virtual void invalidate_nonce(const string& nonce) = 0;
62
63 virtual const string get_op_endpoint() const = 0;
64
65 };
66}
67
68#endif /* __OPKELE_BASIC_OP_H */