mirror of
https://gitea.psi.ch/ELOG/elog.git
synced 2026-09-12 19:33:03 +00:00
Added git-revision
This commit is contained in:
parent
bac715d987
commit
3f1b0f74c9
7
Makefile
7
Makefile
@ -36,6 +36,7 @@ CFLAGS += -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-decla
|
|||||||
CC = gcc
|
CC = gcc
|
||||||
IFLAGS = -kr -nut -i3 -l110
|
IFLAGS = -kr -nut -i3 -l110
|
||||||
EXECS = elog elogd elconv
|
EXECS = elog elogd elconv
|
||||||
|
GIT_REVISION = src/git-revision.h
|
||||||
MXMLDIR = ../mxml
|
MXMLDIR = ../mxml
|
||||||
BINOWNER = bin
|
BINOWNER = bin
|
||||||
BINGROUP = bin
|
BINGROUP = bin
|
||||||
@ -98,7 +99,11 @@ ifeq ($(WHOAMI),root)
|
|||||||
BINFLAGS = -o ${BINOWNER} -g ${BINGROUP}
|
BINFLAGS = -o ${BINOWNER} -g ${BINGROUP}
|
||||||
endif
|
endif
|
||||||
|
|
||||||
all: $(EXECS)
|
all: $(EXECS) $(GIT_REVISION)
|
||||||
|
|
||||||
|
# put current GIT revision into header file to be included by programs
|
||||||
|
$(GIT_REVISION): src/elogd.c
|
||||||
|
echo \#define GIT_REVISION \"`git log -n 1 --pretty=format:"%ad - %h"`\" > $(GIT_REVISION)
|
||||||
|
|
||||||
regex.o: src/regex.c src/regex.h
|
regex.o: src/regex.c src/regex.h
|
||||||
$(CC) $(CFLAGS) -w -c -o regex.o src/regex.c
|
$(CC) $(CFLAGS) -w -c -o regex.o src/regex.c
|
||||||
|
|||||||
@ -115,6 +115,10 @@ int equal_ustring(char *str1, char *str2)
|
|||||||
|
|
||||||
/*---- strlcpy and strlcat to avoid buffer overflow ----------------*/
|
/*---- strlcpy and strlcat to avoid buffer overflow ----------------*/
|
||||||
|
|
||||||
|
#ifdef strlcpy
|
||||||
|
#define STRLCPY_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef STRLCPY_DEFINED
|
#ifndef STRLCPY_DEFINED
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
35
src/elogd.c
35
src/elogd.c
@ -8,8 +8,9 @@
|
|||||||
\********************************************************************/
|
\********************************************************************/
|
||||||
|
|
||||||
#include "elogd.h"
|
#include "elogd.h"
|
||||||
|
#include "git-revision.h"
|
||||||
|
|
||||||
char svn_revision[] = "$Id$";
|
const char *git_revision = GIT_REVISION;
|
||||||
|
|
||||||
BOOL running_as_daemon; /* Running as a daemon/service? */
|
BOOL running_as_daemon; /* Running as a daemon/service? */
|
||||||
int elog_tcp_port; /* Server's TCP port */
|
int elog_tcp_port; /* Server's TCP port */
|
||||||
@ -6940,7 +6941,7 @@ void redirect(LOGBOOK * lbs, char *rel_path)
|
|||||||
{
|
{
|
||||||
/* redirect */
|
/* redirect */
|
||||||
rsprintf("HTTP/1.1 302 Found\r\n");
|
rsprintf("HTTP/1.1 302 Found\r\n");
|
||||||
rsprintf("Server: ELOG HTTP %s-%d\r\n", VERSION, atoi(svn_revision + 13));
|
rsprintf("Server: ELOG HTTP %s-%s\r\n", VERSION, git_revision + 33);
|
||||||
if (keep_alive) {
|
if (keep_alive) {
|
||||||
rsprintf("Connection: Keep-Alive\r\n");
|
rsprintf("Connection: Keep-Alive\r\n");
|
||||||
rsprintf("Keep-Alive: timeout=60, max=10\r\n");
|
rsprintf("Keep-Alive: timeout=60, max=10\r\n");
|
||||||
@ -7176,7 +7177,7 @@ void show_http_header(LOGBOOK * lbs, BOOL expires, char *cookie)
|
|||||||
char str[256];
|
char str[256];
|
||||||
|
|
||||||
rsprintf("HTTP/1.1 200 Document follows\r\n");
|
rsprintf("HTTP/1.1 200 Document follows\r\n");
|
||||||
rsprintf("Server: ELOG HTTP %s-%d\r\n", VERSION, atoi(svn_revision + 13));
|
rsprintf("Server: ELOG HTTP %s-%s\r\n", VERSION, git_revision + 33);
|
||||||
|
|
||||||
if (getcfg("global", "charset", str, sizeof(str)))
|
if (getcfg("global", "charset", str, sizeof(str)))
|
||||||
rsprintf("Content-Type: text/html;charset=%s\r\n", str);
|
rsprintf("Content-Type: text/html;charset=%s\r\n", str);
|
||||||
@ -7203,7 +7204,7 @@ void show_plain_header(int size, char *file_name)
|
|||||||
{
|
{
|
||||||
/* header */
|
/* header */
|
||||||
rsprintf("HTTP/1.1 200 Document follows\r\n");
|
rsprintf("HTTP/1.1 200 Document follows\r\n");
|
||||||
rsprintf("Server: ELOG HTTP %s-%d\r\n", VERSION, atoi(svn_revision + 13));
|
rsprintf("Server: ELOG HTTP %s-%s\r\n", VERSION, git_revision + 33);
|
||||||
rsprintf("Accept-Ranges: bytes\r\n");
|
rsprintf("Accept-Ranges: bytes\r\n");
|
||||||
|
|
||||||
if (keep_alive) {
|
if (keep_alive) {
|
||||||
@ -7878,8 +7879,8 @@ void show_bottom_text(LOGBOOK * lbs)
|
|||||||
} else
|
} else
|
||||||
/* add little logo */
|
/* add little logo */
|
||||||
rsprintf
|
rsprintf
|
||||||
("<center><a class=\"bottomlink\" title=\"%s\" href=\"https://midas.psi.ch/elog/\">ELOG V%s-%d</a></center>",
|
("<center><a class=\"bottomlink\" title=\"%s\" href=\"https://midas.psi.ch/elog/\">ELOG V%s-%s</a></center>",
|
||||||
loc("Goto ELOG home page"), VERSION, atoi(svn_revision + 13));
|
loc("Goto ELOG home page"), VERSION, git_revision + 33);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*------------------------------------------------------------------*/
|
/*------------------------------------------------------------------*/
|
||||||
@ -7932,8 +7933,8 @@ void show_bottom_text_login(LOGBOOK * lbs)
|
|||||||
} else
|
} else
|
||||||
/* add little logo */
|
/* add little logo */
|
||||||
rsprintf
|
rsprintf
|
||||||
("<center><a class=\"bottomlink\" title=\"%s\" href=\"https://midas.psi.ch/elog/\">ELOG V%s-%d</a></center>",
|
("<center><a class=\"bottomlink\" title=\"%s\" href=\"https://midas.psi.ch/elog/\">ELOG V%s-%s</a></center>",
|
||||||
loc("Goto ELOG home page"), VERSION, atoi(svn_revision + 13));
|
loc("Goto ELOG home page"), VERSION, git_revision + 33);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*------------------------------------------------------------------*/
|
/*------------------------------------------------------------------*/
|
||||||
@ -7944,7 +7945,7 @@ void show_error(char *error)
|
|||||||
|
|
||||||
/* header */
|
/* header */
|
||||||
rsprintf("HTTP/1.1 404 Not Found\r\n");
|
rsprintf("HTTP/1.1 404 Not Found\r\n");
|
||||||
rsprintf("Server: ELOG HTTP %s-%d\r\n", VERSION, atoi(svn_revision + 13));
|
rsprintf("Server: ELOG HTTP %s-%s\r\n", VERSION, git_revision + 33);
|
||||||
if (getcfg("global", "charset", str, sizeof(str)))
|
if (getcfg("global", "charset", str, sizeof(str)))
|
||||||
rsprintf("Content-Type: text/html;charset=%s\r\n", str);
|
rsprintf("Content-Type: text/html;charset=%s\r\n", str);
|
||||||
else
|
else
|
||||||
@ -8012,7 +8013,7 @@ void set_sid_cookie(LOGBOOK * lbs, char *sid, char *full_name)
|
|||||||
BOOL global;
|
BOOL global;
|
||||||
|
|
||||||
rsprintf("HTTP/1.1 302 Found\r\n");
|
rsprintf("HTTP/1.1 302 Found\r\n");
|
||||||
rsprintf("Server: ELOG HTTP %s-%d\r\n", VERSION, atoi(svn_revision + 13));
|
rsprintf("Server: ELOG HTTP %s-%s\r\n", VERSION, git_revision + 33);
|
||||||
if (keep_alive) {
|
if (keep_alive) {
|
||||||
rsprintf("Connection: Keep-Alive\r\n");
|
rsprintf("Connection: Keep-Alive\r\n");
|
||||||
rsprintf("Keep-Alive: timeout=60, max=10\r\n");
|
rsprintf("Keep-Alive: timeout=60, max=10\r\n");
|
||||||
@ -8056,7 +8057,7 @@ void remove_all_login_cookies(LOGBOOK * lbs)
|
|||||||
int i;
|
int i;
|
||||||
|
|
||||||
rsprintf("HTTP/1.1 302 Found\r\n");
|
rsprintf("HTTP/1.1 302 Found\r\n");
|
||||||
rsprintf("Server: ELOG HTTP %s-%d\r\n", VERSION, atoi(svn_revision + 13));
|
rsprintf("Server: ELOG HTTP %s-%s\r\n", VERSION, git_revision + 33);
|
||||||
if (keep_alive) {
|
if (keep_alive) {
|
||||||
rsprintf("Connection: Keep-Alive\r\n");
|
rsprintf("Connection: Keep-Alive\r\n");
|
||||||
rsprintf("Keep-Alive: timeout=60, max=10\r\n");
|
rsprintf("Keep-Alive: timeout=60, max=10\r\n");
|
||||||
@ -8102,7 +8103,7 @@ void send_file_direct(char *file_name)
|
|||||||
lseek(fh, 0, SEEK_SET);
|
lseek(fh, 0, SEEK_SET);
|
||||||
|
|
||||||
rsprintf("HTTP/1.1 200 Document follows\r\n");
|
rsprintf("HTTP/1.1 200 Document follows\r\n");
|
||||||
rsprintf("Server: ELOG HTTP %s-%d\r\n", VERSION, atoi(svn_revision + 13));
|
rsprintf("Server: ELOG HTTP %s-%s\r\n", VERSION, git_revision + 33);
|
||||||
rsprintf("Accept-Ranges: bytes\r\n");
|
rsprintf("Accept-Ranges: bytes\r\n");
|
||||||
|
|
||||||
/* set expiration time to one day if no thumbnail */
|
/* set expiration time to one day if no thumbnail */
|
||||||
@ -8445,7 +8446,7 @@ int build_subst_list(LOGBOOK * lbs, char list[][NAME_LENGTH], char value[][NAME_
|
|||||||
strcpy(value[i++], VERSION);
|
strcpy(value[i++], VERSION);
|
||||||
|
|
||||||
strcpy(list[i], "revision");
|
strcpy(list[i], "revision");
|
||||||
sprintf(value[i++], "%d", atoi(svn_revision + 13));
|
sprintf(value[i++], "%s", git_revision + 33);
|
||||||
|
|
||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
@ -14983,7 +14984,7 @@ int show_md5_page(LOGBOOK * lbs)
|
|||||||
|
|
||||||
/* header */
|
/* header */
|
||||||
rsprintf("HTTP/1.1 200 Document follows\r\n");
|
rsprintf("HTTP/1.1 200 Document follows\r\n");
|
||||||
rsprintf("Server: ELOG HTTP %s-%d\r\n", VERSION, atoi(svn_revision + 13));
|
rsprintf("Server: ELOG HTTP %s-%s\r\n", VERSION, git_revision + 33);
|
||||||
rsprintf("Accept-Ranges: bytes\r\n");
|
rsprintf("Accept-Ranges: bytes\r\n");
|
||||||
rsprintf("Connection: close\r\n");
|
rsprintf("Connection: close\r\n");
|
||||||
rsprintf("Content-Type: text/plain;charset=%s\r\n", DEFAULT_HTTP_CHARSET);
|
rsprintf("Content-Type: text/plain;charset=%s\r\n", DEFAULT_HTTP_CHARSET);
|
||||||
@ -19085,7 +19086,7 @@ void show_rss_feed(LOGBOOK * lbs)
|
|||||||
struct tm *ts;
|
struct tm *ts;
|
||||||
|
|
||||||
rsprintf("HTTP/1.1 200 Document follows\r\n");
|
rsprintf("HTTP/1.1 200 Document follows\r\n");
|
||||||
rsprintf("Server: ELOG HTTP %s-%d\r\n", VERSION, atoi(svn_revision + 13));
|
rsprintf("Server: ELOG HTTP %s-%s\r\n", VERSION, git_revision + 33);
|
||||||
|
|
||||||
if (!getcfg("global", "charset", charset, sizeof(charset)))
|
if (!getcfg("global", "charset", charset, sizeof(charset)))
|
||||||
strcpy(charset, DEFAULT_HTTP_CHARSET);
|
strcpy(charset, DEFAULT_HTTP_CHARSET);
|
||||||
@ -28688,7 +28689,7 @@ void server_loop(void)
|
|||||||
|
|
||||||
/* about to entering the server loop, welcome user with a brief info */
|
/* about to entering the server loop, welcome user with a brief info */
|
||||||
eprintf("%s ", ELOGID);
|
eprintf("%s ", ELOGID);
|
||||||
strcpy(str, svn_revision + 13);
|
strcpy(str, git_revision + 33);
|
||||||
if (strchr(str, ' '))
|
if (strchr(str, ' '))
|
||||||
*strchr(str, ' ') = 0;
|
*strchr(str, ' ') = 0;
|
||||||
eprintf("revision %s\n", str);
|
eprintf("revision %s\n", str);
|
||||||
@ -29143,7 +29144,7 @@ void server_loop(void)
|
|||||||
} else if (strstr(net_buffer, "HEAD") != NULL) {
|
} else if (strstr(net_buffer, "HEAD") != NULL) {
|
||||||
/* just return header */
|
/* just return header */
|
||||||
rsprintf("HTTP/1.1 200 OK\r\n");
|
rsprintf("HTTP/1.1 200 OK\r\n");
|
||||||
rsprintf("Server: ELOG HTTP %s-%d\r\n", VERSION, atoi(svn_revision + 13));
|
rsprintf("Server: ELOG HTTP %s-%s\r\n", VERSION, git_revision + 33);
|
||||||
rsprintf("Connection: close\r\n");
|
rsprintf("Connection: close\r\n");
|
||||||
rsprintf("Content-Type: text/html\r\n\r\n");
|
rsprintf("Content-Type: text/html\r\n\r\n");
|
||||||
keep_alive = FALSE;
|
keep_alive = FALSE;
|
||||||
|
|||||||
1
src/git-revision.h
Normal file
1
src/git-revision.h
Normal file
@ -0,0 +1 @@
|
|||||||
|
#define GIT_REVISION "Wed Sep 25 14:25:38 2013 +0200 - bac715d"
|
||||||
@ -134,7 +134,7 @@
|
|||||||
D52BA2F113999DB0000458E3 /* Project object */ = {
|
D52BA2F113999DB0000458E3 /* Project object */ = {
|
||||||
isa = PBXProject;
|
isa = PBXProject;
|
||||||
attributes = {
|
attributes = {
|
||||||
LastUpgradeCheck = 0460;
|
LastUpgradeCheck = 0500;
|
||||||
ORGANIZATIONNAME = PSI;
|
ORGANIZATIONNAME = PSI;
|
||||||
};
|
};
|
||||||
buildConfigurationList = D52BA2F413999DB0000458E3 /* Build configuration list for PBXProject "elogd" */;
|
buildConfigurationList = D52BA2F413999DB0000458E3 /* Build configuration list for PBXProject "elogd" */;
|
||||||
@ -174,8 +174,9 @@
|
|||||||
D52BA30113999DB0000458E3 /* Debug */ = {
|
D52BA30113999DB0000458E3 /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||||
|
CLANG_WARN_EMPTY_BODY = YES;
|
||||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||||
CLANG_WARN_INT_CONVERSION = YES;
|
CLANG_WARN_INT_CONVERSION = YES;
|
||||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||||
@ -185,8 +186,11 @@
|
|||||||
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||||
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
|
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
|
||||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||||
|
GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO;
|
||||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
|
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||||
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||||
ONLY_ACTIVE_ARCH = YES;
|
ONLY_ACTIVE_ARCH = YES;
|
||||||
@ -197,16 +201,20 @@
|
|||||||
D52BA30213999DB0000458E3 /* Release */ = {
|
D52BA30213999DB0000458E3 /* Release */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||||
|
CLANG_WARN_EMPTY_BODY = YES;
|
||||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||||
CLANG_WARN_INT_CONVERSION = YES;
|
CLANG_WARN_INT_CONVERSION = YES;
|
||||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||||
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
|
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
|
||||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||||
|
GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO;
|
||||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
|
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||||
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||||
SDKROOT = macosx;
|
SDKROOT = macosx;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user