unsigned long approxidate(const char *);
 
 extern int setup_ident(void);
-extern char *get_ident(const char *name, const char *email, const char *date_str);
-extern char *git_author_info(void);
-extern char *git_committer_info(void);
+extern const char *git_author_info(void);
+extern const char *git_committer_info(void);
 
 static inline void *xmalloc(size_t size)
 {
 
        return offset;
 }
 
-char *get_ident(const char *name, const char *email, const char *date_str)
+static const char *get_ident(const char *name, const char *email,
+                            const char *date_str)
 {
        static char buffer[1000];
        char date[50];
        return buffer;
 }
 
-char *git_author_info(void)
+const char *git_author_info(void)
 {
-       return get_ident(getenv("GIT_AUTHOR_NAME"), getenv("GIT_AUTHOR_EMAIL"), getenv("GIT_AUTHOR_DATE"));
+       return get_ident(getenv("GIT_AUTHOR_NAME"),
+                        getenv("GIT_AUTHOR_EMAIL"),
+                        getenv("GIT_AUTHOR_DATE"));
 }
 
-char *git_committer_info(void)
+const char *git_committer_info(void)
 {
-       return get_ident(getenv("GIT_COMMITTER_NAME"), getenv("GIT_COMMITTER_EMAIL"), getenv("GIT_COMMITTER_DATE"));
+       return get_ident(getenv("GIT_COMMITTER_NAME"),
+                        getenv("GIT_COMMITTER_EMAIL"),
+                        getenv("GIT_COMMITTER_DATE"));
 }
 
 
 struct git_var {
        const char *name;
-       char *(*read)(void);
+       const char *(*read)(void);
 };
 static struct git_var git_vars[] = {
        { "GIT_COMMITTER_IDENT", git_committer_info },