]> gitweb.ps.run Git - ps-cgit/blobdiff - shared.c
Extend repo summary with tag list
[ps-cgit] / shared.c
index b576df8496f3cdbc1767ae68b858ccf753896521..dd711a86563c6452a75d4d57307f05533a4a63cf 100644 (file)
--- a/shared.c
+++ b/shared.c
@@ -36,7 +36,10 @@ char *cgit_querystring  = NULL;
 char *cgit_query_repo   = NULL;
 char *cgit_query_page   = NULL;
 char *cgit_query_head   = NULL;
+char *cgit_query_search = NULL;
 char *cgit_query_sha1   = NULL;
+char *cgit_query_sha2   = NULL;
+char *cgit_query_path   = NULL;
 int   cgit_query_ofs    = 0;
 
 int htmlfd = 0;
@@ -59,6 +62,14 @@ void cgit_global_config_cb(const char *name, const char *value)
                cgit_nocache = atoi(value);
        else if (!strcmp(name, "cache-root"))
                cgit_cache_root = xstrdup(value);
+       else if (!strcmp(name, "cache-root-ttl"))
+               cgit_cache_root_ttl = atoi(value);
+       else if (!strcmp(name, "cache-repo-ttl"))
+               cgit_cache_repo_ttl = atoi(value);
+       else if (!strcmp(name, "cache-static-ttl"))
+               cgit_cache_static_ttl = atoi(value);
+       else if (!strcmp(name, "cache-dynamic-ttl"))
+               cgit_cache_dynamic_ttl = atoi(value);
 }
 
 void cgit_repo_config_cb(const char *name, const char *value)
@@ -77,14 +88,21 @@ void cgit_querystring_cb(const char *name, const char *value)
                cgit_query_repo = xstrdup(value);
        } else if (!strcmp(name, "p")) {
                cgit_query_page = xstrdup(value);
+       } else if (!strcmp(name, "q")) {
+               cgit_query_search = xstrdup(value);
        } else if (!strcmp(name, "h")) {
                cgit_query_head = xstrdup(value);
                cgit_query_has_symref = 1;
        } else if (!strcmp(name, "id")) {
                cgit_query_sha1 = xstrdup(value);
                cgit_query_has_sha1 = 1;
+       } else if (!strcmp(name, "id2")) {
+               cgit_query_sha2 = xstrdup(value);
+               cgit_query_has_sha1 = 1;
        } else if (!strcmp(name, "ofs")) {
                cgit_query_ofs = atoi(value);
+       } else if (!strcmp(name, "path")) {
+               cgit_query_path = xstrdup(value);
        }
 }
 
@@ -98,3 +116,16 @@ void *cgit_free_commitinfo(struct commitinfo *info)
        free(info);
        return NULL;
 }
+
+int hextoint(char c)
+{
+       if (c >= 'a' && c <= 'f')
+               return 10 + c - 'a';
+       else if (c >= 'A' && c <= 'F')
+               return 10 + c - 'A';
+       else if (c >= '0' && c <= '9')
+               return c - '0';
+       else
+               return -1;
+}
+