W dniu 08.05.2012 15:30, Sławomir Paszkiewicz napisał(a):
on commit {
set ClientIP = binary-to-ascii(10, 8, ".", leased-address);
set ClientMAC = concat (suffix (concat ("0", binary-to-ascii (16, 8, "", substring(hardware,1, 1))),2),":",suffix (concat ("0", binary-to-ascii (16, 8, "", substring(hardware, 2, 1))),2),":",suffix (concat("0", binary-to-ascii (16, 8, "", substring(hardware, 3, 1))),2),":",suffix (concat ("0", binary-to-ascii (16, 8, "", substring(hardware, 4,1))),2),":",suffix (concat ("0", binary-to-ascii (16, 8, "", substring(hardware, 5, 1))),2),":",suffix (concat ("0", binary-to-ascii (16, 8, "",substring(hardware, 6, 1))),2));
execute("/usr/sbin/foo", "add", clientMAC, clientIP);
}
W skrypcie robisz jakiegoś forka, żeby od razu proces główny zakończył swoje działanie i pozwoliło to na kontynuowane pracy dla dhcpd? Z tego co piszą w dokumentacji wynika, że skrypt uruchamiany z poziomu execute jest wykonywany synchronicznie co oznacza, że dhcpd nie będzie kontynuowało swoich operacji, np. kolejnych przydziałów dzierżaw, dopóki skrypt nie zakończy działania. Nie miałeś z tym problemu?