guys, thanks for the inputs, but how do i handle a long run of 0xFF bytes? This is something we saw in a GPRS source. Currently i am skipping any run of non-tag bytes starting with a 0xFF. But according to the encoding rules(BER) 0xFF is a valid encoding. It would represent a multibyte constructed tag. But in my case I have to reject it. Is there any document which says that the 0xFF is a special value or anything like that? kr.
--------------------------------- The will to do, the soul to dare > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of KB > Devaraj > Sent: Friday, November 21, 2003 7:32 AM > To: [EMAIL PROTECTED] > Subject: Re: [ASN.1] some doubts > > > Hi karthik, > > Here are the few tips to write a generic parser. > > Most of the CDRs genereted by MSCs are use Context > Specific tag class.These tags are unique within the > module but in within the specification.That means > within the same specification itself, the same tag can > occur in different modules. > > Most of the CDRs tags are encoded in single > byte.Length of the cdr is encoded in two bytes in most > of the call types. > > Length value for the indefinite lenght cdrs is 0x80 > and the indefinite length can be identified using End > of Content (i.e. 0x00 0x00).when u write parser, make > sure the the byte next to EOC is a tag. > > MSC cdr specifications are depends on operators.Its > not the same for all operator.So it is better to check > with the operator for CDR specification. > > TAP 3 uses Application tag class.In applciation tag, > tags are unique within the specification. > > In tap3. some of the tags are encoded in two bytes and > length as well.Indefinite length record is very much > possible in TAP 3.Mostly it'll occur for Mobile > Originating call and Mobile Terminating call. > > You can download all the TAP 3 specifications from > www.gsmworld.com > > About filler, > Almost in all cases filler will be 0x00.Most of the > MSCs uses block structure of 2048 bytes. > > You need give more attention while parsing indefinite > length cdrs.Example for indefinite length cdr > generetad by MSC is CompositeCallDataRecord(is nothing > but sequence of GSMCallDataRecord). > > Hope this will help you in some way. > > K B Devaraj > Intec Telecom Systems. > > > --- Karthikeyan Ramnath <[EMAIL PROTECTED]> > wrote: > > Dear Sir, > > At work, I have to deal with parsing Call Detail > > Records generated by GSM > > MSCs, TAP 3 applications, etc which are in ASN.1 > > format. > > > > I wrote a generic parser/decoder which accepts the > > tags and the value > > encodings in a tree structure as configuration, and > > ran into some doubts. > > > > Presently, I'm unsure of how to handle 0x00 and 0xFF > > values between records. > > > > Also how are fillers/noise represented and handled? > > > > Also, is there any place from which we can get the > > ASN.1 specification for > > the different applications/enterprises? Just so that > > we can shift to using > > generic compilers. > > > > Thank you. > > karthikeyan.r > > > > --------------------------------- > > The will to do, the soul to dare > > > > > > DISCLAIMER: This email is bound by the terms and > > conditions described at > > http://www.subexgroup.com/mail-disclaimer.htm > > > > > __________________________________ > Do you Yahoo!? > Free Pop-Up Blocker - Get it now > http://companion.yahoo.com/ > DISCLAIMER: This email is bound by the terms and conditions described at http://www.subexgroup.com/mail-disclaimer.htm