2024-06-23  babolo
Уменьшение варнингов на ia32.

2023-10-29  babolo
Удаление варнингов.

2023-10-23  babolo
Удаление варнингов.

2016-02-24  babolo
Исправлен порядок параметров calloc().

2016-02-12  babolo
Исправлен порядок инклудов.

2007-05-13  babolo
Версия 1.02
Makefile приспособлен к современной версии babolo-libmake.
Издано, поскольку активности нет, что бы эти мелочи не потерялись.

2005-11-29  babolo
Версия 1.01
Добавлены два формата сообщений специально для тестирования.
Теперь в составе имеется регресс-тест.
ISO8583_Asn() и ISO8583_Cpy() теперь при отладке не распечатывают маску
 поля на входе, т.к. не все необходимое определено и проверено тут.
Доформатированы ISO8583_Asn() и ISO8583_Cpy().

2005-11-29  babolo
При вызове ISO8583_Cpy() теперь проверяется корректность вызова.
В ISO8583_Cpy() параметры поля вычисляются после проверки корректности.
ISO8583_Test() теперь может вызываться с fno >= pack->package->bound
 и при этом правильно отрабатывать mode == ISO8583_SIZE.
ISO8583_Cpy() теперь гарантированно не вычисляет strlen(vly), если
 это значение не используется.
Проверка маски поля в ISO8583_Asn() перенесена так, что бы уменьшить
 вложенность if.
Новая макро BITUMASK().
Теперь маски поля в ISO8583_Asn() показываются при входе.
Форматирование недоправлено для уменьшения diff.

2005-11-27  babolo
Номер поля теперь проверяется на выход за границы массива.
Не инициализируется время при ISO8583_LTM в flags.
ISO8583_Asn теперь использует количество фиксированных полей перед bitmask
 из описания вместо фиксированного 1.
Применен официальный ISO8583_PSFT вместо 0xFF.

2005-11-27  babolo
Не к своим флагам были поставлены ISO8583_MSZ, ISO8583_FMS и ISO8583_PSFT.
Добавлен флаг ISO8583_LTM для внешней инициализации текущего времени.
Только зимнее локальное время преобразовывалось правильно.
У утилиты новый флаг -l для установки текущего времени в сообщении.
Утилита распечатывала Val со знаком, исправлено на беззнаковое.
Наличие строки из под парсера теперь проверяется.

2005-11-27  babolo
Исправлена ошибка в ISO8583_B_NUMERICl, цифры попадали не на свои места
 и выход за границы массива.
Исправлена ошибка в преобразовании даты со столетием, выход за границы
 массива в val.cc.
Определения ISO8583_MSZ и ISO8583_FMS перенесены к определяемым флагам.
Формализовано определение ISO8583_PSFT.
В ман добавлено описание типов полей.

2005-11-19  babolo
Версия 1.00
Введены типы для локального времени.
Исправлен тип expnd и возвращаемая при ошибке -1.
В pack/expo исправлен тип нескольких полей на локальное время.

2005-11-18  babolo
Смена MAJOR из-за изменения интерфейса.
ISO8583_Save() и ISO8583_Free() получают не адрес ISO8583_Pack, а ссылку
 на этот адрес и зануляют его.
ISO8583_Test() теперь может в зависимости от вида запроса возвращать
 не только статус поля, но и длинну его представления в сообщении.
Ликвидирован макро ISO8583_ISVL.
ISO8583_Cpy() получил параметр - длинну байтового массива, теперь может
 копировать данные с нулевыми байтами.
package->flag теперь стал package->flags.
Номер поля - битовой маски теперь везде, кроме ISO8583_Mark(), определяется
 младшим байтом флагов package.
Исправлен формат 37 поля в форматах expobank.
(codex[].len)() теперь без вариантов всегда отдает длинну поля в сообщении.
(codex[].cpy)() теперь может копировать данные с нулевыми байтами.
В man добавлено краткое описание по добавлению форматов преобразований.
В утилите iso8583 добавлен флаг -d - дамп начала поля.
Вместо end и pack в конце сообщения выводится только end, остальное - в
 начале.

2005-11-13  babolo
Версия 0.01
Описания форматов сообщений вынесены в отдельный каталог pack.
Добавлены функции ISO8583_Save(), ISO8583_Take(), ISO8583_List().
Массив описаний перестал быть публичным.
В av() исправлен выход за границы массива.
В старых версиях FreeBSD не было кода ошибки ENOATTR.
В ISO8583_Mark() добавлен еще один параметр - tzname.
В утилите iso8583 появился параметр для задания time zone.
tool/Makefile теперь легко модифицируется для запуска утилиты iso8583
 на месте без установки.
lv() и expnd() перенесены из codec.c в val.cc.
Дополнен man iso8583.3.
Уточнен man iso8583.1.

2005-11-11  babolo
Не была указана зависимость от mife.
Маны на библиотеку.
Вместо gmtime используется gmtime_r.
7 -> TIMEPARTS.
При декодировании времени из сообщения не проверялись минимальные возможные
 значения полей, задающих время в expnd().
0x8000000000000000L и ISO8583_PACK_BOUND теперь переменные в описании
 формата сообщения.
С учетом возможных расширений изменились форматы данных.
Отсутствует доступ к описателям напрямую через снешние имена, только через
 массив описателей.
Утилита iso8583 теперь собирается с динамической библиотекой, но для
 тестирования неустановленной библиотеки надо собирать статически или
 preload ее при запуске.

2005-11-07  babolo
Изменились интерфейсы процедур из asn и len.
Ошибка в expnt()
Добавлен раздел cpy для ввода строковых.
Новый ISO8583_Cpy()
Ввод строк и времени в утилите iso8583.
Поскольку еще не издавалось ни разу, полный список всех изменений
 не обязателен и не приведен.

2005-11-07  babolo
На первый взгляд, есть что-то работающее, но не готово.