(List (= scope= flags=0 words=[] bindings=[('PIDDIR', {[LIT_CHARS /var/run/samba]})]) (= scope= flags=0 words=[] bindings=[('SAMBAPID', {[VarSub PIDDIR] [LIT_CHARS /samba.pid]})]) (Com {[LIT_CHARS unset]} {[LIT_CHARS TMPDIR]}) (AndOr OP_OR_IF (Com {[LIT_CHARS test]} {[LIT_CHARS -x]} {[LIT_CHARS /usr/sbin/samba]} {[LIT_CHARS -a]} {[LIT_CHARS -r]} {[LIT_CHARS /etc/samba/smb.conf]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 0]}) ) (Com {[LIT_CHARS .]} {[LIT_CHARS /lib/lsb/init-functions]}) (Case to_match={[DQ [VarSub 1]]}, pat_word_list=[[{[LIT_CHARS start]}], [{[LIT_CHARS stop]}], [{[LIT_CHARS restart]}, {[LIT_CHARS force-reload]}], [{[LIT_CHARS status]}], [{[LIT_OTHER "*"]}]] (List (= scope= flags=0 words=[] bindings=[('SERVER_ROLE', {[ComSub (Pipeline (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)]{[LIT_CHARS samba-tool]} {[LIT_CHARS testparm]} {[LIT_CHARS --parameter-name] [LIT_OTHER "="] [DQ [LIT_CHARS "server role"]]}) (Com {[LIT_CHARS tail]} {[LIT_CHARS -1]}) )]})]) (If (Com {[LIT_OTHER "["]} {[DQ [VarSub SERVER_ROLE]]} {[LIT_OTHER "!"] [LIT_OTHER "="]} {[DQ [LIT_CHARS "active directory domain controller"]]} {[LIT_OTHER "]"]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 0]}) ) (If (Com {[LIT_CHARS init_is_upstart]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) (= scope= flags=0 words=[] bindings=[('KEYFILE', {[LIT_CHARS /var/lib/samba/private/tls/key.pem]})]) (If (Com {[LIT_OTHER "["]} {[LIT_CHARS -e]} {[VarSub KEYFILE]} {[LIT_OTHER "]"]}) (List (= scope= flags=0 words=[] bindings=[('KEYPERMS', {[ComSub (Com {[LIT_CHARS stat]} {[LIT_CHARS -c]} {[LIT_OTHER "%"] [LIT_CHARS a]} {[VarSub KEYFILE]})]})]) (If (Com {[LIT_OTHER "["]} {[DQ [VarSub KEYPERMS]]} {[LIT_OTHER "!"] [LIT_OTHER "="]} {[DQ [LIT_CHARS 600]]} {[LIT_OTHER "]"]}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "wrong permission on "][VarSub KEYFILE][LIT_CHARS ", must be 600"]]}) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "samba will not start (CVE-2013-4475)"]]}) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Removing all tls .pem files will cause an auto-regeneration with the correct permissions."]]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) ) ) (Com {[LIT_CHARS log_daemon_msg]} {[DQ [LIT_CHARS "Starting Samba AD DC daemon"]]} {[DQ [LIT_CHARS samba]]}) (Com {[LIT_CHARS install]} {[LIT_CHARS -o]} {[LIT_CHARS root]} {[LIT_CHARS -g]} {[LIT_CHARS root]} {[LIT_CHARS -m]} {[LIT_CHARS 755]} {[LIT_CHARS -d]} {[VarSub PIDDIR]}) (If (Pipeline! (Com {[LIT_CHARS start-stop-daemon]} {[LIT_CHARS --start]} {[LIT_CHARS --quiet]} {[LIT_CHARS --oknodo]} {[LIT_CHARS --exec]} {[LIT_CHARS /usr/sbin/samba]} {[LIT_CHARS --]} {[LIT_CHARS -D]}) ) (List (Com {[LIT_CHARS log_end_msg]} {[LIT_CHARS 1]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) (Com {[LIT_CHARS log_end_msg]} {[LIT_CHARS 0]}) ) (List (If (Com {[LIT_CHARS init_is_upstart]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 0]}) ) (Com {[LIT_CHARS log_daemon_msg]} {[DQ [LIT_CHARS "Stopping Samba AD DC daemon"]]} {[DQ [LIT_CHARS samba]]}) (Com {[LIT_CHARS start-stop-daemon]} {[LIT_CHARS --stop]} {[LIT_CHARS --quiet]} {[LIT_CHARS --pidfile]} {[VarSub SAMBAPID]}) (Com {[LIT_CHARS sleep]} {[LIT_CHARS 1]}) (If (AndOr OP_AND_IF (Com {[LIT_OTHER "["]} {[LIT_CHARS -f]} {[VarSub SAMBAPID]} {[LIT_OTHER "]"]}) (Pipeline! (Com {[LIT_CHARS ps]} {[LIT_CHARS h]} {[ComSub (Com {[LIT_CHARS cat]} {[VarSub SAMBAPID]})]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 1), > ) ) ) (Com {[LIT_CHARS rm]} {[LIT_CHARS -f]} {[VarSub SAMBAPID]}) ) (Com {[LIT_CHARS log_end_msg]} {[LIT_CHARS 0]}) ) (List (If (Com {[LIT_CHARS init_is_upstart]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) (Com {[VarSub 0]} {[LIT_CHARS stop]}) (Com {[LIT_CHARS sleep]} {[LIT_CHARS 1]}) (Com {[VarSub 0]} {[LIT_CHARS start]}) ) (List (Com {[LIT_CHARS status_of_proc]} {[LIT_CHARS -p]} {[VarSub SAMBAPID]} {[LIT_CHARS /usr/sbin/samba]} {[LIT_CHARS samba]}) (Com {[LIT_CHARS exit]} {[VarSub ?]}) ) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Usage: /etc/init.d/samba-ad-dc {start|stop|restart|force-reload|status}"]]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) (Com {[LIT_CHARS exit]} {[LIT_CHARS 0]}) )