From d16b67eb01d88b59b4a1053724826d4bc5c9cd3a Mon Sep 17 00:00:00 2001 From: Andrew McNab Date: Tue, 11 Dec 2007 15:54:04 +0000 Subject: [PATCH] Sync --- org.gridsite.core/src/Makefile | 2 +- org.gridsite.core/src/make-gridsite-spec | 2 +- org.gridsite.core/src/mod_gridsite.c | 27 ++++++++++++++++++++++++++- 3 files changed, 28 insertions(+), 3 deletions(-) diff --git a/org.gridsite.core/src/Makefile b/org.gridsite.core/src/Makefile index fd83c2b..e9092c6 100644 --- a/org.gridsite.core/src/Makefile +++ b/org.gridsite.core/src/Makefile @@ -49,7 +49,7 @@ export libdir=lib endif ifndef MYCFLAGS -export MYCFLAGS=-I. -I../interface $(HTTPD_FLAGS) -I/usr/include/httpd -I/usr/include/apr-0 -I/opt/glite/include -fPIC +export MYCFLAGS=-I. -I../interface $(HTTPD_FLAGS) -I/usr/include/httpd -I/usr/include/apr-0 -I/usr/include/apr-1 -I/opt/glite/include -fPIC endif ifndef MYLDFLAGS diff --git a/org.gridsite.core/src/make-gridsite-spec b/org.gridsite.core/src/make-gridsite-spec index 27a61fc..ef1e399 100755 --- a/org.gridsite.core/src/make-gridsite-spec +++ b/org.gridsite.core/src/make-gridsite-spec @@ -40,7 +40,7 @@ Prefix: ${MYPREFIX:-/usr} URL: http://www.gridsite.org/ Vendor: GridPP Requires: libxml2 -#Buildrequires: libxml2-devel,curl-ssl-devel,httpd-devel +Buildrequires: libxml2-devel,curl-ssl-devel,httpd-devel,openssl-devel Packager: Andrew McNab %description diff --git a/org.gridsite.core/src/mod_gridsite.c b/org.gridsite.core/src/mod_gridsite.c index ffb734b..9a6529b 100644 --- a/org.gridsite.core/src/mod_gridsite.c +++ b/org.gridsite.core/src/mod_gridsite.c @@ -140,6 +140,7 @@ typedef struct char *adminfile; char *adminuri; char *helpuri; + char *loginuri; char *dnlists; char *dnlistsuri; char *adminlist; @@ -148,7 +149,7 @@ typedef struct char *methods; char *editable; char *headfile; - char *footfile; + char *footfile; int gridhttp; char *aclformat; char *aclpath; @@ -379,6 +380,14 @@ char *make_admin_footer(request_rec *r, mod_gridsite_dir_cfg *conf, out = apr_pstrcat(r->pool, out, temp, NULL); + if ((conf->loginuri != NULL) && (conf->loginuri[0] != '\0')) + { + temp = apr_psprintf(r->pool, + ". Login/Logout\n", + conf->loginuri, r->uri); + out = apr_pstrcat(r->pool, out, temp, NULL); + } + if ((conf->helpuri != NULL) && (conf->helpuri[0] != '\0')) { temp = apr_psprintf(r->pool, @@ -1637,6 +1646,7 @@ static void *create_gridsite_dir_config(apr_pool_t *p, char *path) /* GridSiteAdminFile File-value */ conf->adminuri = NULL; /* GridSiteAdminURI URI-value */ conf->helpuri = NULL; /* GridSiteHelpURI URI-value */ + conf->loginuri = NULL; /* GridSiteLoginURI URI-value */ conf->dnlists = NULL; /* GridSiteDNlists Search-path */ conf->dnlistsuri = NULL; /* GridSiteDNlistsURI URI-value */ conf->adminlist = NULL; /* GridSiteAdminList URI-value */ @@ -1683,6 +1693,7 @@ static void *create_gridsite_dir_config(apr_pool_t *p, char *path) conf->adminfile = NULL; /* GridSiteAdminFile File-value */ conf->adminuri = NULL; /* GridSiteAdminURI URI-value */ conf->helpuri = NULL; /* GridSiteHelpURI URI-value */ + conf->loginuri = NULL; /* GridSiteLoginURI URI-value */ conf->dnlists = NULL; /* GridSiteDNlists Search-path */ conf->dnlistsuri = NULL; /* GridSiteDNlistsURI URI-value */ conf->adminlist = NULL; /* GridSiteAdminList URI-value */ @@ -1752,6 +1763,9 @@ static void *merge_gridsite_dir_config(apr_pool_t *p, void *vserver, if (direct->helpuri != NULL) conf->helpuri = direct->helpuri; else conf->helpuri = server->helpuri; + if (direct->loginuri != NULL) conf->loginuri = direct->loginuri; + else conf->loginuri = server->loginuri; + if (direct->dnlists != NULL) conf->dnlists = direct->dnlists; else conf->dnlists = server->dnlists; @@ -1905,6 +1919,11 @@ static const char *mod_gridsite_take1_cmds(cmd_parms *a, void *cfg, ((mod_gridsite_dir_cfg *) cfg)->helpuri = apr_pstrdup(a->pool, parm); } + else if (strcasecmp(a->cmd->name, "GridSiteLoginURI") == 0) + { + ((mod_gridsite_dir_cfg *) cfg)->loginuri = + apr_pstrdup(a->pool, parm); + } else if (strcasecmp(a->cmd->name, "GridSiteDNlists") == 0) { ((mod_gridsite_dir_cfg *) cfg)->dnlists = @@ -2181,6 +2200,8 @@ static const command_rec mod_gridsite_cmds[] = NULL, OR_FILEINFO, "URI of real gridsite-admin.cgi"), AP_INIT_TAKE1("GridSiteHelpURI", mod_gridsite_take1_cmds, NULL, OR_FILEINFO, "URI of Website Help pages"), + AP_INIT_TAKE1("GridSiteLoginURI", mod_gridsite_take1_cmds, + NULL, OR_FILEINFO, "URI prefix of login/logout page"), AP_INIT_TAKE1("GridSiteDNlists", mod_gridsite_take1_cmds, NULL, OR_FILEINFO, "DN Lists directories search path"), AP_INIT_TAKE1("GridSiteDNlistsURI", mod_gridsite_take1_cmds, @@ -3227,6 +3248,10 @@ static int mod_gridsite_perm_handler(request_rec *r) apr_table_setn(env, "GRST_HELP_URI", ((mod_gridsite_dir_cfg *) cfg)->helpuri); + if (((mod_gridsite_dir_cfg *) cfg)->loginuri != NULL) + apr_table_setn(env, "GRST_LOGIN_URI", + ((mod_gridsite_dir_cfg *) cfg)->loginuri); + if (((mod_gridsite_dir_cfg *) cfg)->adminfile != NULL) apr_table_setn(env, "GRST_ADMIN_FILE", ((mod_gridsite_dir_cfg *) cfg)->adminfile); -- 1.8.2.3