summaryrefslogtreecommitdiffstats
path: root/auth_mellon_handler.c
diff options
context:
space:
mode:
authormanu@netbsd.org <manu@netbsd.org@a716ebb1-153a-0410-b759-cfb97c6a1b53>2013-04-15 14:54:38 +0000
committermanu@netbsd.org <manu@netbsd.org@a716ebb1-153a-0410-b759-cfb97c6a1b53>2013-04-15 14:54:38 +0000
commit1d2c882ba14c007d9cf966ac1c131fb3628bb810 (patch)
tree26e8dbc9b20f87a7f19d1a1f896ae072c582a1bd /auth_mellon_handler.c
parent0b11c9f3ee5d7bc3580a7ae592d5200dad07a007 (diff)
downloadmod_auth_mellon-1d2c882ba14c007d9cf966ac1c131fb3628bb810.tar.gz
mod_auth_mellon-1d2c882ba14c007d9cf966ac1c131fb3628bb810.tar.xz
mod_auth_mellon-1d2c882ba14c007d9cf966ac1c131fb3628bb810.zip
Add MellonSPentityId to control entityId in autogenerated metadata
git-svn-id: https://modmellon.googlecode.com/svn/trunk@205 a716ebb1-153a-0410-b759-cfb97c6a1b53
Diffstat (limited to 'auth_mellon_handler.c')
-rw-r--r--auth_mellon_handler.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/auth_mellon_handler.c b/auth_mellon_handler.c
index d78beec..a24f59b 100644
--- a/auth_mellon_handler.c
+++ b/auth_mellon_handler.c
@@ -117,6 +117,9 @@ static char *am_generate_metadata(apr_pool_t *p, request_rec *r)
am_dir_cfg_rec *cfg = am_get_dir_cfg(r);
char *url = am_get_endpoint_url(r);
char *cert = "";
+ const char *sp_entity_id;
+
+ sp_entity_id = cfg->sp_entity_id ? cfg->sp_entity_id : url;
if (cfg->sp_cert_file) {
char *sp_cert_file;
@@ -171,7 +174,7 @@ static char *am_generate_metadata(apr_pool_t *p, request_rec *r)
return apr_psprintf(p,
"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n\
<EntityDescriptor\n\
- entityID=\"%smetadata\"\n\
+ entityID=\"%s%s\"\n\
xmlns=\"urn:oasis:names:tc:SAML:2.0:metadata\">\n\
<SPSSODescriptor\n\
AuthnRequestsSigned=\"true\"\n\
@@ -197,7 +200,8 @@ static char *am_generate_metadata(apr_pool_t *p, request_rec *r)
</SPSSODescriptor>\n\
%s\n\
</EntityDescriptor>",
- url, cert, url, url, url, url, am_optional_metadata(p, r));
+ sp_entity_id, cfg->sp_entity_id ? "" : "metadata",
+ cert, url, url, url, url, am_optional_metadata(p, r));
}
#endif /* HAVE_lasso_server_new_from_buffers */