command LOAD
[rxpd] / main.c
1 /*
2     main.c - regex policy daemon
3
4   Copyright (C)
5     2007,               Christian Thaeter <ct@pipapo.org>
6
7   This program is free software; you can redistribute it and/or
8   modify it under the terms of the GNU General Public License as
9   published by the Free Software Foundation; either version 2 of the
10   License, or (at your option) any later version.
11
12   This program is distributed in the hope that it will be useful,
13   but WITHOUT ANY WARRANTY; without even the implied warranty of
14   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15   GNU General Public License for more details.
16
17   You should have received a copy of the GNU General Public License
18   along with this program; if not, write to the Free Software
19   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20 */
21
22 #include "rxpd.c"
23
24 #include <string.h>
25 #include <sys/time.h>
26 #include <sys/types.h>
27 #include <sys/socket.h>
28 #include <netinet/in.h>
29
30 #include <event.h>
31
32
33 void
34 usage(void)
35 {
36   /*
37     rxpd [options] ..files..
38     -v          verbosity
39     -V          version
40     -d          daemonize
41     -D          debug
42     -b dir      basedir for rules
43     -q          quiet
44     -t port     tcp
45     -u name     unix
46     -p policy   access policies
47     -i          case insensitive
48     -4          ipv4
49     -6          ipv6
50     -r          resolve names
51     -l log      log hits to logfile
52   */
53
54
55 }
56
57
58
59 int
60 main (int argc, char** argv)
61 {
62   struct rxpd_base* rxpd = rxpd_init ("./");
63   struct event_base* event = event_init();
64
65   // parse commandline args
66
67   // read files
68   struct rxpd_file* file = rxpd_file_new (rxpd, "test");
69   rxpd_file_load (file);
70
71   // initialize listening connections
72   // port 2374
73   rxpd_socket_schedule (rxpd_socket_new_tcp4 (rxpd, NULL, 2374));
74   //rxpd_socket_new_unix (rxpd, "/tmp/rxpd");
75
76
77   // eventloop
78   event_dispatch ();
79
80   //
81   rxpd_destroy ();
82   printf ("OK\n");
83 }