summaryrefslogtreecommitdiffabout
path: root/include
authorMichael Krelin <hacker@klever.net>2007-08-09 00:01:12 (UTC)
committer Michael Krelin <hacker@klever.net>2007-08-09 00:01:12 (UTC)
commit94e566c912f97b4c9e47353e10e86649ee8060a4 (patch) (side-by-side diff)
treea11910bf677723a7eabccad161ec0b85426293ff /include
parent4696aae9da3500f600cedd482501a89d41fd27ec (diff)
downloadlibopkele-94e566c912f97b4c9e47353e10e86649ee8060a4.zip
libopkele-94e566c912f97b4c9e47353e10e86649ee8060a4.tar.gz
libopkele-94e566c912f97b4c9e47353e10e86649ee8060a4.tar.bz2
make canonicalize follow redirects
- renamed old consumer_t::canonicalize to consumer_t::normalize - made the real canonicalize virtual to allow caching layer
Diffstat (limited to 'include') (more/less context) (show whitespace changes)
-rw-r--r--include/opkele/consumer.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/include/opkele/consumer.h b/include/opkele/consumer.h
index fdb6119..042e2d1 100644
--- a/include/opkele/consumer.h
+++ b/include/opkele/consumer.h
@@ -84,59 +84,66 @@ namespace opkele {
* @return the location string
* @throw exception in case of error
*/
virtual string checkid_immediate(const string& identity,const string& return_to,const string& trust_root="",extension_t *ext=0);
/**
* 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
* @param ext pointer to an extension(s) hooks object
* @return the location string
* @throw exception in case of error
*/
virtual string checkid_setup(const string& identity,const string& return_to,const string& trust_root="",extension_t *ext=0);
/**
* 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
* @param ext pointer to an extension(s) hooks object
* @return the location string
* @throw exception in case of error
*/
virtual string checkid_(mode_t mode,const string& identity,const string& return_to,const string& trust_root="",extension_t *ext=0);
/**
* verify the id_res response
* @param pin the response parameters
* @param identity the identity being checked (if not specified,
* @param ext pointer to an extension(s) hooks object
* 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
*/
virtual void id_res(const params_t& pin,const string& identity="",extension_t *ext=0);
/**
* perform a check_authentication request.
* @param server the OpenID server
* @param p request parameters
*/
void check_authentication(const string& server,const params_t& p);
/**
- * make URL canonical, by adding http:// and trailing slash, if needed.
+ * normalize URL by adding http:// and trailing slash if needed.
+ * @param url
+ * @return normalized url
+ */
+ static string normalize(const string& url);
+
+ /**
+ * Canonicalize URL, by normalizing its appearance and following redirects.
* @param url
* @return canonicalized url
*/
- static string canonicalize(const string& url);
+ virtual string canonicalize(const string& url);
};
}
#endif /* __OPKELE_CONSUMER_H */