Author: Lars Hjemli <hjemli@gmail.com>
Merge branch 'do/https' Signed-off-by: Lars Hjemli <hjemli@gmail.com>
ui-atom.c | 6 ++++-- ui-shared.c | 14 +++++++++++++- ui-shared.h | 1 +
diff --git a/ui-atom.c b/ui-atom.c index a6ea3eecf58ec6fd0db3aab018522ecca5e98acd..e5c31d9dd066fd7e7a63da846ab6add0b9aea0e6 100644 --- a/ui-atom.c +++ b/ui-atom.c @@ -52,7 +52,8 @@ html(""); cgit_print_date(info->author_date, FMT_ATOMDATE, ctx.cfg.local_time); html("</published>\n"); if (host) { - html("<link rel='alternate' type='text/html' href='http://"); + html("<link rel='alternate' type='text/html' href='"); + html(cgit_httpscheme()); html_attr(host); html_attr(cgit_pageurl(ctx.repo->url, "commit", NULL)); if (ctx.cfg.virtual_root) @@ -113,7 +114,8 @@ html(" "); html_txt(ctx.repo->desc); html("</subtitle>\n"); if (host) { - html("<link rel='alternate' type='text/html' href='http://"); + html("<link rel='alternate' type='text/html' href='"); + html(cgit_httpscheme()); html_attr(host); html_attr(cgit_repourl(ctx.repo->url)); html("'/>\n"); diff --git a/ui-shared.c b/ui-shared.c index 2630f23e2bc64aee49d643159b1901c4df60c206..29036d0a92ba45643e7db53af2671113fcbff7be 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -34,6 +34,17 @@ html_txt(msg); html("</div>\n"); } +char *cgit_httpscheme() +{ + char *https; + + https = getenv("HTTPS"); + if (https != NULL && strcmp(https, "on") == 0) + return "https://"; + else + return "http://"; +} + char *cgit_hosturl() { char *host, *port; @@ -494,7 +505,8 @@ html_attr(ctx->cfg.favicon); html("'/>\n"); } if (host && ctx->repo) { - html("<link rel='alternate' title='Atom feed' href='http://"); + html("<link rel='alternate' title='Atom feed' href='"); + html(cgit_httpscheme()); html_attr(cgit_hosturl()); html_attr(cgit_fileurl(ctx->repo->url, "atom", ctx->qry.path, fmt("h=%s", ctx->qry.head))); diff --git a/ui-shared.h b/ui-shared.h index 5a3821f20e1e973f1446845d2641f5e5bc13f5a1..bff482604428c201e3a3c4c2d07d2642923a23f3 100644 --- a/ui-shared.h +++ b/ui-shared.h @@ -1,6 +1,7 @@ #ifndef UI_SHARED_H #define UI_SHARED_H +extern char *cgit_httpscheme(); extern char *cgit_hosturl(); extern char *cgit_repourl(const char *reponame); extern char *cgit_fileurl(const char *reponame, const char *pagename,