t/lib-submodule-update.sh: fix test ignoring ignored files in submodules
[gitweb.git] / version.c
index f98d5a654d4a17a9d85157b33f161afe6951a6e8..41b718c29e1b9fc2981d7d14a3d25e69c31a3030 100644 (file)
--- a/version.c
+++ b/version.c
@@ -1,7 +1,9 @@
 #include "git-compat-util.h"
 #include "version.h"
+#include "strbuf.h"
 
 const char git_version_string[] = GIT_VERSION;
+const char git_built_from_commit_string[] = GIT_BUILT_FROM_COMMIT;
 
 const char *git_user_agent(void)
 {
@@ -15,3 +17,23 @@ const char *git_user_agent(void)
 
        return agent;
 }
+
+const char *git_user_agent_sanitized(void)
+{
+       static const char *agent = NULL;
+
+       if (!agent) {
+               struct strbuf buf = STRBUF_INIT;
+               int i;
+
+               strbuf_addstr(&buf, git_user_agent());
+               strbuf_trim(&buf);
+               for (i = 0; i < buf.len; i++) {
+                       if (buf.buf[i] <= 32 || buf.buf[i] >= 127)
+                               buf.buf[i] = '.';
+               }
+               agent = buf.buf;
+       }
+
+       return agent;
+}