summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--Makefile6
-rw-r--r--config.def.h45
-rw-r--r--pacredir.c19
4 files changed, 52 insertions, 19 deletions
diff --git a/.gitignore b/.gitignore
index 2e6e296..8ffca75 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,6 @@
*~
*.o
pacredir
+config.h
avahi/pacdbserve.service
README.html
diff --git a/Makefile b/Makefile
index 1bb8d07..3425dd1 100644
--- a/Makefile
+++ b/Makefile
@@ -3,6 +3,7 @@
CC := gcc
MD := markdown
INSTALL := install
+CP := cp
RM := rm
SED := sed
CFLAGS += -O2 -Wall -Werror
@@ -19,10 +20,13 @@ endif
all: pacredir pacdbserve README.html
-pacredir: pacredir.c
+pacredir: pacredir.c config.h
$(CC) $(CFLAGS) -o pacredir pacredir.c \
-DVERSION="\"$(VERSION)\""
+config.h:
+ $(CP) config.def.h config.h
+
pacdbserve: avahi/pacdbserve.service.in
$(SED) 's/%ARCH%/$(ARCH)/' avahi/pacdbserve.service.in > avahi/pacdbserve.service
diff --git a/config.def.h b/config.def.h
new file mode 100644
index 0000000..1863fb4
--- /dev/null
+++ b/config.def.h
@@ -0,0 +1,45 @@
+/*
+ * (C) 2013 by Christian Hesse <mail@eworm.de>
+ *
+ * This software may be used and distributed according to the terms
+ * of the GNU General Public License, incorporated herein by reference.
+ *
+ * This is an example code skeleton provided by vim-skeleton.
+ */
+
+#ifndef _CONFIG_H
+#define _CONFIG_H
+
+/* the binary needs to know its own architecture */
+#if defined __x86_64__
+# define ARCH "x86_64"
+#elif defined __i386__
+# define ARCH "i686"
+#else
+# error Unknown architecture!
+#endif
+
+/* This is used for default documents. Usually you will not see this anyway. */
+#define PAGE307 "<html><head><title>307 temporary redirect</title>" \
+ "</head><body>307 temporary redirect: " \
+ "<a href=\"%s\">%s</a></body></html>"
+#define PAGE404 "<html><head><title>404 Not Found</title>" \
+ "</head><body>404 Not Found: %s</body></html>"
+
+/* the port pacredir listens to */
+#define PORT 7077
+
+/* avahi service names */
+#define PACSERVE "_pacserve._tcp"
+#define PACDBSERVE "_pacdbserve_" ARCH "._tcp"
+
+/* this is where pacman stores its local copy of db files */
+#define SYNCPATH "/var/lib/pacman/sync"
+
+/* This defines when a host is queried again after a bad request
+ * default is 600 seconds (10 minutes) */
+#define BADTIME 60 * 10
+
+#endif /* _CONFIG_H */
+
+// vim: set syntax=c:
diff --git a/pacredir.c b/pacredir.c
index 888337b..2bd2943 100644
--- a/pacredir.c
+++ b/pacredir.c
@@ -24,24 +24,7 @@
#include <curl/curl.h>
#include <microhttpd.h>
-#if defined __x86_64__
-# define ARCH "x86_64"
-#elif defined __i386__
-# define ARCH "i686"
-#else
-# error Unknown architecture!
-#endif
-
-#define PAGE307 "<html><head><title>307 temporary redirect</title>" \
- "</head><body>307 temporary redirect: " \
- "<a href=\"%s\">%s</a></body></html>"
-#define PAGE404 "<html><head><title>404 Not Found</title>" \
- "</head><body>404 Not Found: %s</body></html>"
-#define PORT 7077
-#define PACSERVE "_pacserve._tcp"
-#define PACDBSERVE "_pacdbserve_" ARCH "._tcp"
-#define SYNCPATH "/var/lib/pacman/sync"
-#define BADTIME 60 * 10
+#include "config.h"
/* services */
struct services {