sub decode_header { my $buff = shift; my %lsa; print dump_hex(substr($buff,0,20)); ($lsa{age}, $lsa{options}, $lsa{type}, $lsa{lsid}, $lsa{advRouter}, $lsa{seqNo}, $lsa{checksum}, $lsa{length}) = unpack('nCCNNNnn',$buff); $lsa{lsid} = N_to_dottedQuad($lsa{lsid}); $lsa{advRouter} = N_to_dottedQuad($lsa{advRouter}); $lsa{type} = $OSPF{LSTYPE}{$lsa{type}}; $lsa{options} = decode_lsa_options($lsa{options}); return \%lsa; }