aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac1
-rw-r--r--src/regex/Makefile.am26
-rw-r--r--src/regex/gnunet-service-regex.c81
-rw-r--r--src/regex/regex.conf.in8
-rw-r--r--src/template/gnunet-service-template.c5
5 files changed, 118 insertions, 3 deletions
diff --git a/configure.ac b/configure.ac
index 56675cbaa..178fdf94a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1265,6 +1265,7 @@ src/peerinfo-tool/Makefile
1265src/postgres/Makefile 1265src/postgres/Makefile
1266src/pt/Makefile 1266src/pt/Makefile
1267src/regex/Makefile 1267src/regex/Makefile
1268src/regex/regex.conf
1268src/set/Makefile 1269src/set/Makefile
1269src/set/set.conf 1270src/set/set.conf
1270src/statistics/Makefile 1271src/statistics/Makefile
diff --git a/src/regex/Makefile.am b/src/regex/Makefile.am
index e88938054..f57b78611 100644
--- a/src/regex/Makefile.am
+++ b/src/regex/Makefile.am
@@ -8,6 +8,32 @@ if USE_COVERAGE
8 AM_CFLAGS = --coverage 8 AM_CFLAGS = --coverage
9endif 9endif
10 10
11pkgcfgdir= $(pkgdatadir)/config.d/
12
13libexecdir= $(pkglibdir)/libexec/
14
15plugindir = $(libdir)/gnunet
16
17pkgcfg_DATA = \
18 regex.conf
19
20libexec_PROGRAMS = \
21 gnunet-service-regex
22
23gnunet_service_regex_SOURCES = \
24 gnunet-service-regex.c
25gnunet_service_regex_LDADD = \
26 $(top_builddir)/src/regex/libgnunetregex.la \
27 $(top_builddir)/src/dht/libgnunetdht.la \
28 $(top_builddir)/src/statistics/libgnunetstatistics.la \
29 $(top_builddir)/src/util/libgnunetutil.la \
30 $(GN_LIBINTL)
31gnunet_service_regex_DEPENDENCIES = \
32 libgnunetregex.la
33# todo: link files from libgnunetregex statically into gnunet_service_regex,
34# rename API prefix to avoid collision with 'libgnunetregexnew'...
35
36# FIXME: shouldn't the block library be in the plugin directory!?
11lib_LTLIBRARIES = libgnunetregexblock.la \ 37lib_LTLIBRARIES = libgnunetregexblock.la \
12 libgnunetregex.la \ 38 libgnunetregex.la \
13 libgnunetregexnew.la 39 libgnunetregexnew.la
diff --git a/src/regex/gnunet-service-regex.c b/src/regex/gnunet-service-regex.c
new file mode 100644
index 000000000..e88d8c336
--- /dev/null
+++ b/src/regex/gnunet-service-regex.c
@@ -0,0 +1,81 @@
1/*
2 This file is part of GNUnet.
3 (C) 2013 Christian Grothoff (and other contributing authors)
4
5 GNUnet is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published
7 by the Free Software Foundation; either version 3, or (at your
8 option) any later version.
9
10 GNUnet is distributed in the hope that it will be useful, but
11 WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with GNUnet; see the file COPYING. If not, write to the
17 Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18 Boston, MA 02111-1307, USA.
19*/
20
21/**
22 * @file regex/gnunet-service-regex.c
23 * @brief program that tracks template
24 * @author Christian Grothoff
25 */
26#include "platform.h"
27#include "gnunet_util_lib.h"
28#include "gnunet_regex_lib.h"
29#include "regex_ipc.h"
30
31/**
32 * Task run during shutdown.
33 *
34 * @param cls unused
35 * @param tc unused
36 */
37static void
38cleanup_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
39{
40 /* FIXME: do clean up here */
41}
42
43
44/**
45 * Process regex requests.
46 *
47 * @param cls closure
48 * @param server the initialized server
49 * @param cfg configuration to use
50 */
51static void
52run (void *cls, struct GNUNET_SERVER_Handle *server,
53 const struct GNUNET_CONFIGURATION_Handle *cfg)
54{
55 static const struct GNUNET_SERVER_MessageHandler handlers[] = {
56 /* FIXME: add handlers here! */
57 {NULL, NULL, 0, 0}
58 };
59 /* FIXME: do setup here */
60 GNUNET_SERVER_add_handlers (server, handlers);
61 GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_FOREVER_REL, &cleanup_task,
62 NULL);
63}
64
65
66/**
67 * The main function for the regex service.
68 *
69 * @param argc number of arguments from the command line
70 * @param argv command line arguments
71 * @return 0 ok, 1 on error
72 */
73int
74main (int argc, char *const *argv)
75{
76 return (GNUNET_OK ==
77 GNUNET_SERVICE_run (argc, argv, "regex",
78 GNUNET_SERVICE_OPTION_NONE, &run, NULL)) ? 0 : 1;
79}
80
81/* end of gnunet-service-regex.c */
diff --git a/src/regex/regex.conf.in b/src/regex/regex.conf.in
new file mode 100644
index 000000000..020b5616d
--- /dev/null
+++ b/src/regex/regex.conf.in
@@ -0,0 +1,8 @@
1[regex]
2AUTOSTART = YES
3@UNIXONLY@ PORT = 2107
4HOSTNAME = localhost
5HOME = $SERVICEHOME
6BINARY = gnunet-service-regex
7ACCEPT_FROM = 127.0.0.1;
8ACCEPT_FROM6 = ::1;
diff --git a/src/template/gnunet-service-template.c b/src/template/gnunet-service-template.c
index 54b7ecc94..9b6ae4849 100644
--- a/src/template/gnunet-service-template.c
+++ b/src/template/gnunet-service-template.c
@@ -20,12 +20,11 @@
20 20
21/** 21/**
22 * @file template/gnunet-service-template.c 22 * @file template/gnunet-service-template.c
23 * @brief program that tracks template 23 * @brief program that does template
24 * @author Christian Grothoff 24 * @author Christian Grothoff
25 */ 25 */
26#include "platform.h" 26#include "platform.h"
27#include "gnunet_getopt_lib.h" 27#include "gnunet_util_lib.h"
28#include "gnunet_service_lib.h"
29 28
30 29
31/** 30/**