]> git.llucax.com Git - software/pymin.git/blob - config.py
Remove TODO list (moved to issues tracker).
[software/pymin.git] / config.py
1 # vim: set et sts=4 sw=4 encoding=utf-8 :
2
3 # First of all, we need to setup the logging framework
4 import logging
5 logging.basicConfig(
6         level   = logging.DEBUG,
7         format  = '%(asctime)s %(name)-24s %(levelname)-8s %(message)s',
8         datefmt = '%a, %d %b %Y %H:%M:%S',
9 )
10
11 from pymin.services import *
12 from pymin.dispatcher import Handler
13 from os.path import join
14
15 base_path = join('var', 'lib', 'pymin')
16 pickle_path = join(base_path, 'pickle')
17 # FIXME, this should be specific for each service
18 config_path = join(base_path, 'config')
19
20 class Root(Handler):
21
22     def __init__(self):
23         f = file("/proc/sys/net/ipv4/ip_forward","w")
24         f.write("1")
25         f.close()
26         #self.ip.device_up_hook(self.dns)
27
28     firewall = FirewallHandler(
29         pickle_dir = join(pickle_path, 'firewall'),
30         config_dir = join(config_path, 'firewall'))
31
32     nat = NatHandler(pickle_dir = join(pickle_path, 'nat'))
33
34     ppp = PppHandler(
35         pickle_dir = join(pickle_path, 'ppp'),
36         config_dir = {
37             'pap-secrets':  join(config_path, 'ppp'),
38             'chap-secrets': join(config_path, 'ppp'),
39             'options.X':    join(config_path, 'ppp'),
40             'nameX':        join(config_path, 'ppp', 'peers'),
41         })
42
43     vpn = VpnHandler(
44          pickle_dir = join(pickle_path, 'vpn'),
45          config_dir = join(config_path, 'vpn'))
46
47     ip = IpHandler(
48         pickle_dir = join(pickle_path, 'ip'),
49         config_dir = join(config_path, 'ip'))
50
51     dns = DnsHandler(
52         pickle_dir = join(pickle_path, 'dns'),
53         config_dir = {
54             'named.conf': join(config_path, 'dns'),
55             'zoneX.zone': join(config_path, 'dns', 'zones'),
56         })
57
58     dhcp = DhcpHandler(
59         pickle_dir = join(pickle_path, 'dhcp'),
60         config_dir = join(config_path, 'dhcp'))
61
62     proxy = ProxyHandler(
63         pickle_dir = join(pickle_path, 'proxy'),
64         config_dir = join(config_path, 'proxy'))
65
66     vrrp = VrrpHandler(
67         pickle_dir = join(pickle_path, 'vrrp'),
68         config_dir = join(config_path, 'vrrp'),
69         pid_dir    = join(config_path, 'vrrp', 'run'))
70
71     vpn = VpnHandler(
72         pickle_dir = join(pickle_path, 'vpn'),
73         config_dir = join(config_path, 'vpn'))
74
75     #qos = QoSHandler(
76     #    pickle_dir = join(pickle_path, 'qos'),
77     #    config_dir = join(config_path, 'qos'))
78
79 bind_addr = \
80 (
81     '',   # Bind IP ('' is ANY)
82     9999, # Port
83 )
84