Site Tools


Sidebar

Smart Card Solution

User Manual

JavaCard API Samples

Java Card Specification

Knowledge Sharing

javacard:jcvm:5.5_export_file

5.5 Export File

An export file is defined by the following structure:

The items in the ExportFile structure are as follows:

magic

The magic item contains the magic number identifying the ExportFile format; it has the value 0x00FACADE.

minor_version, major_version

The minor_version and major_version items are the minor and major version numbers of this export file. Together, a major and a minor version number determine the version of the export file format. If an export file has the major version number of M and minor version number of m, the version of the export file's format is M.m.

A change in the major version number indicates a major incompatibility change, one that requires a fundamentally different Java Card virtual machine. A Java Card virtual machine is not required to support export files with different major version numbers. A Java Card virtual machine is required to support export files having a given major version number and all valid minor version numbers in the range 0 through some particular minor_version where a valid minor version number is a minor version number that has been defined in a version of the Java Card virtual machine specification.

In this specification, the major version of the export file format has the value 2 and the minor version has the value 2. Only Sun Microsystems, Inc. may define the meaning and values of new export file format versions.

constant_pool_count

The constant_pool_count item is a non-zero, positive value that indicates the number of constants in the constant pool.

constant_pool[]

The constant_pool is a table of variable-length structures representing various string constants, class names, field names and other constants referred to within the ExportFile structure.

Each of the constant_pool table entries, including entry zero, is a variable-length structure whose format is indicated by its first “tag” byte.

There are no ordering constrains on entries in the constant_pool table.

this_package

The value of this_package must be a valid index into the constant_pool table. The constant_pool entry at that index must be a CONSTANT_Package_info ( Section 5.6.1, CONSTANT_Package) structure representing the package defined by this ExportFile.

export_class_count

The value of the export_class_count item gives the number of elements in the classes table.

classes[]

Each value of the classes table is a variable-length class_info structure ( Section 5.7, Classes and Interfaces) giving the description of a publicly accessible class or interface declared in this package. If the ACC_LIBRARY flag item in the CONSTANT_Package_info ( Section 5.6.1, CONSTANT_Package) structure indicated by the this_package item is set, the classes table has an entry for each public class and interface declared in this package. If the ACC_LIBRARY flag item is not set, the classes table has an entry for each public shareable interface declared in this package.<SUP>[1]</SUP>

javacard/jcvm/5.5_export_file.txt · Last modified: 2017/05/13 04:09 (external edit)