Java Bindings Overview
The Java language is an untapped resource for creating label-aware applications that
run in secure, multilevel arenas. These experimental Java bindings provide a foundation
on which to develop more applications, such as system audit log generation
and system resource controls.
Adding platform services to the Java environment will enable Java applications to
handle sensitive multilevel data.
Solaris Trusted Extensions provides label services through the label daemon, labeld. This
daemon is available to processes that run in the global zone and
in labeled zones.
The Java bindings described in this chapter are Java Native Interface (JNITM)
implementations of some of the Solaris Trusted Extensions label APIs. The experimental
JNI code calls the Solaris Trusted Extensions label library functions to extend
some of the label functionality to the Java language. Constructors and methods
in these Java classes call private JNI interfaces, written in C, that
in turn call the Trusted Extensions APIs. For example, the SolarisLabel.dominates method
calls a private JNI interface written in C that calls the bldominates()
routine. These experimental Java bindings have been developed using Java 2 Platform,
Standard Edition 5.0. For more information about JNI, see Java Native Interface Documentation.
You can download this experimental code from the Solaris Trusted Extensions project
page of the OpenSolarisTM web site.