bind:moved into main repo for pisi 2.0

This commit is contained in:
2015-07-10 17:02:50 +03:00
parent 4425bb64fa
commit 968e1e2f16
25 changed files with 1806 additions and 0 deletions
+23
View File
@@ -0,0 +1,23 @@
#!/usr/bin/python
import os
UID = "named"
GID = "named"
directories = ("/var/named", \
"/var/named/data", \
"/var/named/dynamic", \
"/var/named/pri", \
"/var/named/sec", \
"/var/named/slaves", \
"/var/named/named.ca", \
"/var/run/named")
def postInstall(fromVersion, fromRelease, toVersion, toRelease):
if not os.path.exists("/etc/bind/rndc.key"):
os.system("/usr/sbin/rndc-confgen -r /dev/urandom -a -u named")
# Ownerships
for d in directories:
os.system("chown %s:%s %s" % (UID, GID, d))
+52
View File
@@ -0,0 +1,52 @@
#!/usr/bin/python
import os
import stat
import shutil
def postInstall(fromVersion, fromRelease, toVersion, toRelease):
CHROOT = "/var/named/chroot"
NODES = {
"/dev/random" : [stat.S_IFCHR | 0666, 1, 8],
"/dev/zero" : [stat.S_IFCHR | 0666, 1, 5],
"/dev/null" : [stat.S_IFCHR | 0666, 1, 3],
"/dev/urandom" : [stat.S_IFCHR | 0666, 1, 9],
"/dev/log" : [stat.S_IFSOCK | 0666, 1, 1],
}
# Create device NODES in chroot
for node, values in NODES.items():
if not os.path.exists("%s%s" % (CHROOT, node)):
os.mknod("%s%s" % (CHROOT, node), values[0], os.makedev(values[1], values[2]))
try:
os.unlink("%s/etc/localtime" % CHROOT)
except:
pass
# Copy config files to run under chroot
shutil.copy("/etc/localtime", "%s/etc/localtime" % CHROOT)
for files in ["/etc/bind/bind.keys", "/etc/bind/named.conf", "/etc/bind/rndc.key", "/var/named/named.ca"]:
shutil.copy("%s" % files, "%s%s" % (CHROOT, files))
try:
shutil.copytree("/var/named/pri", "%s/var/named/pri" % CHROOT)
except OSError:
pass
try:
shutil.copytree("/var/named/sec", "%s/var/named/sec" % CHROOT)
except OSError:
pass
os.system("ln -s ../../var/named/pri /var/named/chroot/etc/bind/")
os.system("ln -s ../../var/named/sec /var/named/chroot/etc/bind/")
# Fix permissions
os.system("chmod 0700 %s" % CHROOT)
os.system("chown named:named %s" % CHROOT)
os.system("chown -R named:named %s/var/named" % CHROOT)
os.system("chown -R named:named %s/etc/bind" % CHROOT)
os.system("chown -R named:named %s/var/run/named" % CHROOT)
os.system("chown -R named:named %s/var/log" % CHROOT)
+29
View File
@@ -0,0 +1,29 @@
# -*- coding: utf-8 -*-
import os
from comar.service import *
serviceType = "server"
serviceDesc = _({"en": "BIND Daemon (chroot)",
"tr": "BIND Servisi (chroot)"})
serviceConf = "named"
chrootDir = "/var/named/chroot"
PIDFILE = "%s/var/run/named/named.pid" % chrootDir
@synchronized
def start():
startService(command="/usr/sbin/named",
args="-u named -n %s %s -t %s" % (config.get("CPU", "1"),
config.get("OPTIONS", ""),
chrootDir),
makepid=True,
pidfile=PIDFILE,
donotify=True)
@synchronized
def stop():
stopService(pidfile=PIDFILE,
donotify=True)
def status():
return isServiceRunning(PIDFILE)
+25
View File
@@ -0,0 +1,25 @@
# -*- coding: utf-8 -*-
import os
from comar.service import *
serviceType = "server"
serviceDesc = _({"en": "BIND Daemon",
"tr": "BIND Servisi"})
serviceConf = "named"
PIDFILE = "/run/named/named.pid"
@synchronized
def start():
startService(command="/usr/sbin/named",
args="-u named -n %s %s" % (config.get("CPU", "1"), config.get("OPTIONS", "")),
pidfile=PIDFILE,
donotify=True)
@synchronized
def stop():
stopService(pidfile=PIDFILE,
donotify=True)
def status():
return isServiceRunning(PIDFILE)