From 51ada4fda2b47710351e6e4da8a95807d6d9f729 Mon Sep 17 00:00:00 2001 From: Lars Hjemli Date: Mon, 11 Dec 2006 16:11:40 +0100 Subject: Rename config.c to parsing.c + move cgit_parse_query from cgit.c to parsing.c Signed-off-by: Lars Hjemli --- Makefile | 5 +-- cgit.c | 26 --------------- cgit.h | 1 + config.c | 81 ----------------------------------------------- parsing.c | 106 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 110 insertions(+), 109 deletions(-) delete mode 100644 config.c create mode 100644 parsing.c diff --git a/Makefile b/Makefile index c71e39c..eab7926 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,7 @@ INSTALL_CSS = /var/www/htdocs/cgit.css CACHE_ROOT = /var/cache/cgit EXTLIBS = ../git/libgit.a ../git/xdiff/lib.a -lz -lcrypto -OBJECTS = config.o html.o cache.o +OBJECTS = parsing.o html.o cache.o CFLAGS += -Wall @@ -17,7 +17,8 @@ install: all rm -rf $(CACHE_ROOT)/* cgit: cgit.c cgit.h git.h $(OBJECTS) - $(CC) $(CFLAGS) -DCGIT_VERSION='"$(CGIT_VERSION)"' cgit.c -o cgit $(OBJECTS) $(EXTLIBS) + $(CC) $(CFLAGS) -DCGIT_VERSION='"$(CGIT_VERSION)"' cgit.c -o cgit \ + $(OBJECTS) $(EXTLIBS) $(OBJECTS): cgit.h git.h diff --git a/cgit.c b/cgit.c index dc91125..5567859 100644 --- a/cgit.c +++ b/cgit.c @@ -53,32 +53,6 @@ char *cgit_query_sha1 = NULL; struct cacheitem cacheitem; -int cgit_parse_query(char *txt, configfn fn) -{ - char *t, *value = NULL, c; - - if (!txt) - return 0; - - t = txt = xstrdup(txt); - - while((c=*t) != '\0') { - if (c=='=') { - *t = '\0'; - value = t+1; - } else if (c=='&') { - *t = '\0'; - (*fn)(txt, value); - txt = t+1; - value = NULL; - } - t++; - } - if (t!=txt) - (*fn)(txt, value); - return 0; -} - void cgit_global_config_cb(const char *name, const char *value) { if (!strcmp(name, "root")) diff --git a/cgit.h b/cgit.h index 7e4bfef..6c0aa3b 100644 --- a/cgit.h +++ b/cgit.h @@ -56,6 +56,7 @@ extern void html_link_close(void); extern int cgit_read_config(const char *filename, configfn fn); +extern int cgit_parse_query(char *txt, configfn fn); extern void cache_prepare(struct cacheitem *item); extern int cache_lock(struct cacheitem *item); diff --git a/config.c b/config.c deleted file mode 100644 index 871edf2..0000000 --- a/config.c +++ /dev/null @@ -1,81 +0,0 @@ -/* config.c: parsing of config files - * - * Copyright (C) 2006 Lars Hjemli - * - * Licensed under GNU General Public License v2 - * (see COPYING for full license text) - */ - -#include "cgit.h" - -int next_char(FILE *f) -{ - int c = fgetc(f); - if (c=='\r') { - c = fgetc(f); - if (c!='\n') { - ungetc(c, f); - c = '\r'; - } - } - return c; -} - -void skip_line(FILE *f) -{ - int c; - - while((c=next_char(f)) && c!='\n' && c!=EOF) - ; -} - -int read_config_line(FILE *f, char *line, const char **value, int bufsize) -{ - int i = 0, isname = 0; - - *value = NULL; - while(i 0) - (*fn)(line, value); - - fclose(f); - return ret; -} - diff --git a/parsing.c b/parsing.c new file mode 100644 index 0000000..98b3243 --- /dev/null +++ b/parsing.c @@ -0,0 +1,106 @@ +/* config.c: parsing of config files + * + * Copyright (C) 2006 Lars Hjemli + * + * Licensed under GNU General Public License v2 + * (see COPYING for full license text) + */ + +#include "cgit.h" + +int next_char(FILE *f) +{ + int c = fgetc(f); + if (c=='\r') { + c = fgetc(f); + if (c!='\n') { + ungetc(c, f); + c = '\r'; + } + } + return c; +} + +void skip_line(FILE *f) +{ + int c; + + while((c=next_char(f)) && c!='\n' && c!=EOF) + ; +} + +int read_config_line(FILE *f, char *line, const char **value, int bufsize) +{ + int i = 0, isname = 0; + + *value = NULL; + while(i 0) + (*fn)(line, value); + + fclose(f); + return ret; +} + +int cgit_parse_query(char *txt, configfn fn) +{ + char *t, *value = NULL, c; + + if (!txt) + return 0; + + t = txt = xstrdup(txt); + + while((c=*t) != '\0') { + if (c=='=') { + *t = '\0'; + value = t+1; + } else if (c=='&') { + *t = '\0'; + (*fn)(txt, value); + txt = t+1; + value = NULL; + } + t++; + } + if (t!=txt) + (*fn)(txt, value); + return 0; +} -- cgit 1.4.1