summaryrefslogtreecommitdiffstats
path: root/lasso/saml-2.0/profile.c
diff options
context:
space:
mode:
authorFrederic Peters <fpeters@entrouvert.com>2006-11-02 14:13:19 +0000
committerFrederic Peters <fpeters@entrouvert.com>2006-11-02 14:13:19 +0000
commit44ad1a38ccc811673b188c6bbf017d3e67e7e3ac (patch)
tree777968377b8a1f99a7ef39beef420b4ec650acd9 /lasso/saml-2.0/profile.c
parentd43bde7827c9da6d503285d9d3685b2151e68cb3 (diff)
downloadlasso-44ad1a38ccc811673b188c6bbf017d3e67e7e3ac.tar.gz
lasso-44ad1a38ccc811673b188c6bbf017d3e67e7e3ac.tar.xz
lasso-44ad1a38ccc811673b188c6bbf017d3e67e7e3ac.zip
new lasso_profile_is_saml_query function
Diffstat (limited to 'lasso/saml-2.0/profile.c')
-rw-r--r--lasso/saml-2.0/profile.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/lasso/saml-2.0/profile.c b/lasso/saml-2.0/profile.c
index b4968c2d..1509c6e0 100644
--- a/lasso/saml-2.0/profile.c
+++ b/lasso/saml-2.0/profile.c
@@ -279,4 +279,27 @@ lasso_saml20_profile_process_artifact_response(LassoProfile *profile, const char
return 0;
}
+/**
+ * lasso_saml20_profile_is_saml_query:
+ * @query: HTTP query string
+ *
+ * Tests the query string to know if the URL is called as the result of a
+ * SAML redirect (action initiated elsewhere) or not.
+ *
+ * Return value: TRUE if SAML query, FALSE otherwise
+ **/
+gboolean
+lasso_profile_is_saml_query(const gchar *query)
+{
+ gchar *parameters[] = {
+ "SAMLRequest=", "SAMLResponse=", "SAMLart=", NULL };
+ gint i;
+
+ for (i=0; parameters[i]; i++) {
+ if (strstr(query, parameters[i]))
+ return TRUE;
+ }
+
+ return FALSE;
+}