#!/local/bin/perl

open(OLD_MACROS, "dhtadm -P|");

foreach $line (<OLD_MACROS>){
	chop($line);	
	if ( $line =~ /^(([0-9A-F]){14})\s+Macro\s+:DispRes=(\d){1,2}:$/ ){
	#01080020FE3CBD          Macro           :DispRes=12:
	$mac = $1;
	push(@commands, "dhtadm -D -m $mac"); 
        } 
}

close(OLD_MACROS);

open (CURRENT_MACROS, "<database");

foreach $line (<CURRENT_MACROS>){
	chop($line);
	if ( $line =~ /^#/ ) { next; }
	if ( $line =~ /^(([A-F0-9]){12})\s+((\d+){1,2})\s+/){
	#0003BA0CC1F9 11 0.156
	$mac = '01' . $1;
	$res =  $3;
	push(@commands, "dhtadm -A -m 01" . "$mac -d \':DispRes=" . "$res:\'");
	# dhtadm -A -m 01080020F882C7 -d ':DispRes=12:'
	}	
}

close(CURRENT_MACROS);

open(DHTADM, "|dhtadm -B");

foreach(@commands){ print DHTADM; print DHTADM "\n"; }

close(DHTADM);

system("pkill -HUP in.dhcpd");
