#!/usr/bin/perl use Convert::ASN1; use Data::Dumper; $asn = Convert::ASN1->new; $asn->prepare(q< PasswordPolicyResponseValue ::= SEQUENCE { warning [0] CHOICE { timeBeforeExpiration [0] INTEGER, graceLoginsRemaining [1] INTEGER } error [1] ENUMERATED { passwordExpired (0), accountLocked (1), changeAfterReset (2), passwordModNotAllowed (3), mustSupplyOldPassword (4), invalidPasswordSyntax (5), passwordTooShort (6), passwordTooYoung (7), passwordInHistory (8) } } >) or die($asn->error); $data="308400000006a004800200e3"; $data=pack("h*",$data); $structure=$asn->decode($data) or print $asn->error(); print Dumper($structure);