Команды управления файлами
Команды управления файлами предназначены для создания, удаления файлов и управления жизненным циклом файлов.
Все команды данной группы кроме CREATE FILE позволяют выбрать файл, к которому будут применяться. Определено несколько режимов выбора файла, которые перечислены ниже:
Таблица 1
P1 | режим выбора файла (1) 00 – применить команду к текущему файлу (Lc=0) (2) 00 – выбор файла по идентификатору (Lc=2) (3) 01 – выбор вложенного DF по идентификатору (4) 02 – выбор вложенного EF по идентификатору (5) 08 – выбор файла по абсолютному пути (от MF) (6) 09 – выбор файла по относительному пути (от текущего DF) |
||||||||||||
P2 | 00 | ||||||||||||
Lc, данные |
|
Отличия от выбора файла в команде SELECT заключаются в следующем:
- Иначе обозначается применение команды к текущему файлу (P1:P2= 00:00).
- Отсутствует режим последовательного перебора файлов.
- Отсутствует выбор родительского DF.
- Отсутствует выбор приложения по AID.
В остальном действуют те же правила, что и в команде SELECT. Если выбираемого файла не существует, то текущим остается ранее выбранный файл.
9.1.1 CREATE FILE
Создание файла внутри текущего DF.
После успешного создания файла, он становится текущим файлом.
Если команда выполнена неудачно, текущий файл не изменяется.
тип команды | in (case 3) |
типы файлов:
DF (MF) | BF | FRF | VRF | CRF | TF | KF | ARF |
+ | * | * | * | * | * | * | * |
формат команды:
CLA | |
INS | |
P1 | |
P2 | |
Lc | |
данные | |
Le | |
ответ |
характерные статусы ошибок:
6984 | Данные команды имеют недопустимые значения |
6A80 | Данные команды имеют недопустимый формат |
6A84 | ВНедостаточно свободного места на карте или в одном из объемлющих DF |
6A88 | Необходимые данные отсутствуют |
6A89 | Файл с заданным идентификатором уже существует |
Идентификатор создаваемого файла должен быть уникален в пределах текущего DF (в том числе не должен совпадать с идентификатором самого текущего DF).
9.1.2 ACTIVATE FILE
Перевести файл на фазу жизни «использование».
Перед выполнением команды файл должен находиться на фазе жизни «инициализация» или «блокирование».
тип команды | in (case 3) |
типы файлов:
DF (MF) | BF | FRF | VRF | CRF | TF | KF | ARF |
+ | + | + | + | + | + | + | + |
формат команды:
CLA | |
INS | |
P1 | |
P2 | |
Lc | |
данные | |
Le | |
ответ |
характерные статусы ошибок:
6700 | Неправильная длина входных данных |
6984 | Входные данные команды имеют недопустимые значения |
6989 | Операция неприменима к данной фазе жизни файла |
6A82 | Файл не найден |
6A86 | Неправильные значения параметров P1/P2 |
Если P1:P2=0000 и входные данные отсутствуют, то команда применяется к текущему файлу.
9.1.3 DEACTIVATE
Перевести файл на фазу жизни «блокирование».
Перед выполнением команды файл должен находиться на фазе жизни «инициализация» или «использование».
тип команды | in (case 3) |
типы файлов:
DF (MF) | BF | FRF | VRF | CRF | TF | KF | ARF |
+ | + | + | + | + | + | + | + |
формат команды:
CLA | |
INS | |
P1 | |
P2 | |
Lc | |
данные | |
Le | |
ответ |
характерные статусы ошибок:
6700 | Неправильная длина входных данных |
6984 | Входные данные команды имеют недопустимые значения |
6989 | Операция неприменима к данной фазе жизни файла |
6A88 | Необходимые данные отсутствуют |
6A82 | Файл не найден |
6A86 | Неправильные значения параметров P1/P2 |
Если P1:P2=0000 и входные данные отсутствуют, то команда применяется к текущему файлу.
9.1.4 DELETE FILE
Удалить файл.
Перед удалением файл может находиться на любой фазе жизни.
При удалении DF автоматически удаляются все вложенные файлы этого DF.
тип команды | in (case 3) |
типы файлов:
DF (MF) | BF | FRF | VRF | CRF | TF | KF | ARF |
+(-) | + | + | + | + | + | + | + |
формат команды:
CLA | |
INS | |
P1 | |
P2 | |
Lc | |
данные | |
Le | |
ответ |
характерные статусы ошибок:
6700 | Неправильная длина входных данных |
6984 | Входные данные команды имеют недопустимые значения |
6986 | Операция неприменима к текущему файлу |
6A82 | Файл не найден |
6A86 | Неправильные значения параметров P1/P2 |
Если P1:P2=0000 и входные данные отсутствуют, то команда применяется к текущему файлу.
Если во время удаления DF работа карты будет прервана, удаление вложенных файлов будет автоматически продолжено после рестарта карты.
После удаления файла текущим становится его родительский DF/MF.
MF удалить невозможно.
9.1.5 TERMINATE CARD USAGE
Полностью и безвозвратно заблокировать карту. Карта не возвращает статус, более не реагирует на сброс и ведет себя как при физическом выведении из строя.
Команда работает на всех фазах жизни карты. На фазе инициализации требуется предъявление административного ключа, а на фазе эксплуатации требуются права доступа на применение операции DEACTIVATE для MF(Заметим, что для MF можно также применять команду DEACTIVATE – временное блокирование).
Текущий файл может быть любым
тип команды | case 1 |
формат команды:
CLA | |
INS | |
P1 | |
P2 | |
Lc | |
данные | |
Le | |
ответ |