Is the 100 and 101 below really doing anything? We uses PER unaligned.StatusCode ::= ENUMERATED { unspecified(0), systemFailure(1), unexpectedMessage(2), dataMissing(3), unexpectedParameterValue(4), positionMethodFailure(5), protocolVersionNotSupported(6), resourceShortage(7), unexpectedDataValue(8), invalidSessionId(9), authDeniedByUser(100), authGrantedByUser(101), ... }
I can't be sure I understand the question. 100 and 101 are the enumerated values for authDeniedByUser and authGrantedByUser. In unaligned PER, they are not encoded as 100 and 101; instead they are transformed into other values, but they still represent the states authDeniedByUser and authGrantedByUser.
If your question is whether they could just as well have been 10 and 11, the answer is yes as far as PER encoding goes, but a BER encoding would have been different. The real answer, however, depends upon the ASN.1 runtime software. If ENUMERATED is represented as enum and the application expects 100 as the value for authDeniedByUser, then it would not be satisfied to find a 10.
One more point: ASN.1 cannot be judged in light of how it would apply to a single type of encoding rules (like, for you, unaligned PER). A valid specification written in ASN.1 would work for any type of encoding rules chosen. It might be more efficient in one than in another, but it would work with any of them. In the end, it is not safe to modify the ASN.1 specification unless (a) you are certain of what you are doing or (b) you are the specification designer.
===================================================================== Conrad Sigona Voice Mail : 1-732-302-9669 x400 OSS Nokalva Fax : 1-614-388-4156 [EMAIL PROTECTED] My direct line : 1-315-845-1773 _______________________________________________ ASN1 mailing list [email protected] http://lists.asn1.org/mailman/listinfo/asn1
