This document describes support for Java provided by DACS.
To enable Java support, DACS must be configured using the --enable-java flag. It may also be necessary to specify the location of the Java commands and include files. See m[blue]dacs.install(7)m.
Java support is currently very limited and should be considered experimental. It is currently only possible to call m[blue]dacsauth(1)m and m[blue]dacscheck(1)m using the Java Native Interface (JNI) provided. The command line arguments to both of these commands are exactly as documented in their manual pages. Each argument is passed as a String.
The code is not thread-safe and is probably not suitable for being called many times within a particular process due to assumptions it makes about dynamic memory allocation.
There are no immediate plans to improve or extend Java support. Using the existing capability to build the JNI layer, however, it should not be difficult for an experienced Java programmer to build upon the example Java code provided.
With Java support enabled, building DACS will copy the JNI shared library and a .jar file to the library directory (default: /usr/local/dacs/lib), and the JNI include files to the include directory (default: /usr/local/dacs/include).
The tools/java/jni distribution directory contains a simple script called javarun that demonstrates how to run dacsauth or dacscheck as a Java application. For example, to validate the Unix password for user somebody, run (as root):
./javarun dacsauth -m unix suff -user somebody -prompt
The return codes are as documented in the command's manual page.
Distributed Systems Software (m[blue]www.dss.cam)
Copyright2003-2012 Distributed Systems Software. See the m[blue]LICENSEm file that accompanies the distribution for licensing information.