LINUX.ORG.RU

генератор парсеров ASN.1


0

1

А не подскажет ли мне кто, где я могу найти генератор парсеров ASN.1 удовлетворяющий следующим требованиям:

1. Позволяет использовать 1 байт в качестве тега, причем позволяет указать, какой именно байт (значение) для какого тега использовать.

2. позволяет использовать определенные теги без указания длины, то есть не TLV а TV, для типов данных фиксированных размеров.

3. Генерирует код парсера на C. Желательно без собственного memory manmagement, или с возможностью его замены.

Я посмотрел на http://asn1c.sf.net, но не понял, позволяет он это или нет. Еще я, возможно, путаюсь в терминологии, так как с вопросом знаком был весьма поверхностно, а сейчас надо углубиться, поэтому помогите плиз кто чем может.

★★★★★

Насколько мне известно, кроме asn1c нет адекватных свободных реализаций на С.

anonymous
()

а вы уверены, что хотелки 1 и 2 вообще совместимы со спецификацией ASN.1?

anonymous
()
Ответ на: комментарий от anonymous

Похоже, что несовместимы. Мне нужно на самом деле такое:

Есть протокол, реализованный на C. Суть его в том, что он базируется на двух типах данных - TLV, которые могут быть вложенными и фиксированными типами типа TV, то есть тег+значение. То есть длина определяется самим тегом. И есть описанные таким образом структуры. Вот надо сделать генерацию таких данных и парсинг, причем существующая реализация на C очень бажная, а реализация на питоне не влезет в устройство на arm7tdmi. Вот и мучаюсь как минимализировать возможные баги и при этом влезть в мелкую железку.

slapin ★★★★★
() автор топика
Ответ на: комментарий от slapin

напишите сами, в чем проблема? там одна ночь работы.
и зачем вам какие то парсеры, у вас данные в текстовом виде по типу .asn1 файла?
видимо правильнее говорить TLV декодеры?
ну так на С++ вообще идеально все раскладывается,
и аллокатор свой красиво подключается/отключается во время компиляции

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.