sed: find match and delete the line above

I am searching a dhcpd.conf to find the hardware ethernet match, then once the match is found delete just the line above it. For example:

testmachine.example {
hardware ethernet 00:00:00:00:00:00;
fixed address 192.168.1.100;
next-server 192.168.1.101;
filename "linux-install/pxelinux.0";
}

I would like to use sed to remove "testmachine.example {".
I was going to create a two step process by removing the line above the harware ethernet match. Then remove the hardware ethernet match through }. However, if someone knows how to find the harware ethernet match and remove the whole block, I would be very appreciative.

There are multiple fixed addresses in this file, so it can only remove this block based on the hardware ethernet match.

Hmm... this should do it

sed '/^.* {/ {:a /}/ !{N;ba} }; s/.*00:00:00:00:00:00.*//' dhcpd.conf

Cheers
ZB

Thank you, zazzybob. It worked exactly like I wanted it to.

I Get "Label too long: " error ...any idea? This was on SOlaris machine...