]> git.llucax.com Git - software/pymin.git/blob - config.py
Add logging to pymin.service module (refs #27).
[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.dispatcher import Handler
12 from os.path import join
13
14 base_path = join('var', 'lib', 'pymin')
15 pickle_path = join(base_path, 'pickle')
16 # FIXME, this should be specific for each service
17 config_path = join(base_path, 'config')
18
19 try:
20     f = file("/proc/sys/net/ipv4/ip_forward","w")
21     f.write("1")
22     f.close()
23 except (IOError, OSError), e:
24     print "Can't set ip_forward:", e
25
26 class firewall:
27     pickle_dir = join(pickle_path, 'firewall')
28     config_dir = join(config_path, 'firewall')
29
30 class nat:
31     pickle_dir = join(pickle_path, 'nat')
32
33 class ppp:
34     pickle_dir = join(pickle_path, 'ppp')
35     config_dir = {
36         'pap-secrets':  join(config_path, 'ppp'),
37         'chap-secrets': join(config_path, 'ppp'),
38         'options.X':    join(config_path, 'ppp'),
39         'nameX':        join(config_path, 'ppp', 'peers'),
40     }
41
42 class vpn:
43      pickle_dir = join(pickle_path, 'vpn')
44      config_dir = join(config_path, 'vpn')
45
46 class ip:
47     pickle_dir = join(pickle_path, 'ip')
48     config_dir = join(config_path, 'ip')
49
50 class dns:
51     pickle_dir = join(pickle_path, 'dns')
52     config_dir = {
53         'named.conf': join(config_path, 'dns'),
54         'zoneX.zone': join(config_path, 'dns', 'zones'),
55     }
56
57 class dhcp:
58     pickle_dir = join(pickle_path, 'dhcp')
59     config_dir = join(config_path, 'dhcp')
60
61 class proxy:
62     pickle_dir = join(pickle_path, 'proxy')
63     config_dir = join(config_path, 'proxy')
64
65 class vrrp:
66     pickle_dir = join(pickle_path, 'vrrp')
67     config_dir = join(config_path, 'vrrp')
68     pid_dir    = join(config_path, 'vrrp', 'run')
69
70 class vpn:
71     pickle_dir = join(pickle_path, 'vpn')
72     config_dir = join(config_path, 'vpn')
73
74 class qos:
75     pickle_dir = join(pickle_path, 'qos')
76     config_dir = join(config_path, 'qos')
77
78 bind_addr = \
79 (
80     '',   # Bind IP ('' is ANY)
81     9999, # Port
82 )
83
84 services = 'firewall nat ppp vpn ip dns dhcp proxy vrrp qos'.split()
85
86 services_dirs = ['services']
87