What's New in the Solaris 9 8/03 Operating Environment

Development Tool Enhancements

Smart Card Terminal Interfaces

Solaris smart card interfaces are a set of public interfaces for Smart Card Terminals. Card terminal vendors can implement these interfaces in a user-level shared library to provide device-level support for their smart card terminals in Solaris. The set of Solaris smart card terminal interfaces is based on card terminal interfaces that are available as part of the Linux Smartcard framework. Card terminal support libraries from Linux can be ported to Solaris with minimum effort.

Stack Check APIs

Stack Check APIs allow for advanced interaction with stack-checking compiler support available in ForteTM 7.0. These APIs should be used in applications that are compiled with stack checking enabled, and either manage their own stacks or attempt to detect their own stack overflows.

Developers who maintain their own thread library need to use the setustack interface to enable consumers of their library to compile with stack checking enabled.

See the stack_getbounds(3C), stack_setbounds(3C), stack_inbounds(3C), and stack_violation(3C) man pages.

Memory Allocation With libumem

libumem is a user-mode (nonkernel mode) memory allocator library. libumem has features that enable you to debug memory leaks and other aberrations that involve memory usage.

This feature is used in the same way that a standard application binary interface (ABI) allocator, such as malloc(), is used. A user-mode application requests an arbitrary number of bytes of memory. Then a pointer is returned that is loaded with the address of the allocated memory.

For further information, see the libumem(3LIB) man page.

A technical white paper about Solaris Memory Placement Optimization and Sun Fire Servers is available at the following Web site:

http://www.sun.com/servers/wp/docs/mpo_v7_CUSTOMER.pdf

SPARC: Sun ONE Application Server Integration

Sun ONE Application Server 7, Platform Edition (formerly iPlanet Application Server) is integrated in the Solaris 9 12/02 Update release. See SPARC: Sun ONE Application Server Integration.

Sun ONE Message Queue

The Solaris 9 12/02 Update release supports JMS messaging applications. These applications are based on Sun ONE Message Queue, a JMS provider. See Sun ONE Message Queue.


Note –

The Sun ONE Message Queue is a new feature for the SPARC platform in the Solaris 9 12/02 Update release. In the Solaris 9 8/03 Update release, the Sun ONE Message Queue is also available for x86 platforms.


Enhanced crypt() Function

This Solaris release includes new extensions to the crypt() function and introduces the crypt_gensalt()function. These enhancements allow administrators to change the algorithm that is used to obscure users' UNIX® login passwords.

Modules are included for MD5 and Blowfish. The MD5 modules are at crypt_sunmd5 and crypt_bsdmd5. The Blowfish module is at crypt_bsdbf.

Developers can create new modules for alternate password-obscuring algorithms. Application developers must use the crypt_gensalt() function instead of manually generating the salt string for passing to the crypt() function.

Modules for alternate algorithms are specified in the crypt.conf(4) file. The module_path field specifies the path to the shared library object that implements the two required functions:

For further information, see the crypt(3C) and the policy.conf(4) man pages.

New Flags for madvise() Function

The madvise() function enables the kernel to optimize access to a user-defined region of memory. This Solaris release includes three new flags for the madvise() function:

For further information on the madvise() function, see the madvise(3C) man page.

Linkers and Libraries Updates

The Solaris 9 Update releases include new linker-editor features such as string table compression, unreferenced section elimination, and unreferenced dependency detection. For the most current list of new linker-editor features in each Solaris 9 Update release, see “New Linker and Libraries Features and Updates” in the Linker and Libraries Guide.

Smartcard Middleware APIs

The Solaris Smartcard framework now provides low-level middleware APIs. These APIs can be used to exchange data with a smart card by using a smart card reader. The APIs can be used in platforms such as the Sun BladeTM and Sun RayTM systems. Applications that are written in the Java language or in C can use these interfaces.

For more information, see the libsmartcard(3LIB) man page and the JavaDocs in /usr/share/javadoc/smartcard.