-rw-r--r-- | include/opkele/consumer.h | 2 | ||||
-rw-r--r-- | include/opkele/util.h | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/include/opkele/consumer.h b/include/opkele/consumer.h index b9c29bd..3c0ed5f 100644 --- a/include/opkele/consumer.h +++ b/include/opkele/consumer.h @@ -83,53 +83,55 @@ namespace opkele { * @param return_to the return_to url to pass with the request * @param trust_root the trust root to advertise with the request * @return the location string * @throw exception in case of error */ string checkid_immediate(const string& identity,const string& return_to,const string& trust_root=""); /** * prepare the parameters for the checkid_setup * request. * @param identity the identity to verify * @param return_to the return_to url to pass with the request * @param trust_root the trust root to advertise with the request * @return the location string * @throw exception in case of error */ string checkid_setup(const string& identity,const string& return_to,const string& trust_root=""); /** * the actual implementation behind checkid_immediate() and * checkid_setup() functions. * @param mode checkid_* mode - either mode_checkid_immediate or mode_checkid_setup * @param identity the identity to verify * @param return_to the return_to url to pass with the request * @param trust_root the trust root to advertise with the request * @return the location string * @throw exception in case of error */ string checkid_(mode_t mode,const string& identity,const string& return_to,const string& trust_root=""); /** * verify the id_res response * @param pin the response parameters * @param identity the identity being checked (if not specified, extracted * from the openid.identity parameter * @throw id_res_mismatch in case of signature * mismatch * @throw id_res_setup in case of * openid.user_setup_url failure (supposedly * checkid_immediate only) * @throw id_res_failed in case of failure * @throw exception in case of other failures */ void id_res(const params_t& pin,const string& identity=""); /** * perform a check_authentication request. * @param server the OpenID server * @param p request parameters */ void check_authentication(const string& server,const params_t& p); + static string canonicalize(const string& url); + }; } #endif /* __OPKELE_CONSUMER_H */ diff --git a/include/opkele/util.h b/include/opkele/util.h index fbbef93..5372498 100644 --- a/include/opkele/util.h +++ b/include/opkele/util.h @@ -3,58 +3,57 @@ #include <time.h> #include <string> #include <openssl/bn.h> #include <openssl/dh.h> namespace opkele { using std::string; namespace util { class bignum_t { public: BIGNUM *_bn; bignum_t() : _bn(0) { } bignum_t(BIGNUM *bn) : _bn(bn) { } ~bignum_t() throw() { if(_bn) BN_free(_bn); } bignum_t& operator=(BIGNUM *bn) { if(_bn) BN_free(_bn); _bn = bn; return *this; } operator const BIGNUM*(void) const { return _bn; } operator BIGNUM*(void) { return _bn; } }; class dh_t { public: DH *_dh; dh_t() : _dh(0) { } dh_t(DH *dh) : _dh(dh) { } ~dh_t() throw() { if(_dh) DH_free(_dh); } dh_t& operator=(DH *dh) { if(_dh) DH_free(_dh); _dh = dh; return *this; } operator const DH*(void) const { return _dh; } operator DH*(void) { return _dh; } DH* operator->() { return _dh; } const DH* operator->() const { return _dh; } }; BIGNUM *base64_to_bignum(const string& b64); BIGNUM *dec_to_bignum(const string& dec); string bignum_to_base64(const BIGNUM *bn); string time_to_w3c(time_t t); time_t w3c_to_time(const string& w); - string canonicalize_url(const string& url); string url_encode(const string& str); string long_to_string(long l); long string_to_long(const string& s); } } #endif /* __OPKELE_UTIL_H */ |