extendedFILE man page on OpenIndiana

Man page or keyword search:  
man Server   20441 pages
apropos Keyword Search (all sections)
Output format
OpenIndiana logo
[printable version]

extendedFILE(5)	      Standards, Environments, and Macros      extendedFILE(5)

NAME
       extendedFILE - enable extended FILE facility usage

SYNOPSIS
       $ ulimit -n N_file_descriptors
       $ LD_PRELOAD_32=/usr/lib/extendedFILE.so.1 application [arg...]

DESCRIPTION
       The  extendedFILE.so.1  is not a library but an enabler of the extended
       FILE facility.

       The extended FILE facility allows 32-bit processes  to  use  any	 valid
       file  descriptor	 with the standard I/O (see stdio(3C)) C library func‐
       tions. Historically, 32-bit applications have been limited to using the
       first 256 numerical file descriptors for use with standard I/O streams.
       By using the extended FILE facility  this  limitation  is  lifted.  Any
       valid file descriptor can be used with standard I/O. See the NOTES sec‐
       tion of enable_extended_FILE_stdio(3C).

       The extended FILE facility is enabled from the shell  level  before  an
       application is launched. The file descriptor limit must also be raised.
       The syntax for raising the file descriptor limit is

	 $ ulimit -n max_file_descriptors
	 $ LD_PRELOAD_32=/usr/lib/extendedFILE.so.1 application [arg...]

       where max_file_descriptors is the maximum number	 of  file  descriptors
       desired.	 See  limit(1).	 The  maximum value is the same as the maximum
       value for open(2).

ENVIRONMENT VARIABLES
       The  following  environment  variables  control	the  behavior  of  the
       extended FILE facility.

       _STDIO_BADFD	      This  variable takes an integer representing the
			      lowest file descriptor, which will be made unal‐
			      locatable.  This	action	provides  a protection
			      mechanism so that applications that abuse inter‐
			      faces  do not experience silent data corruption.
			      The value must be between 3 and 255 inclusive.

       _STDIO_BADFD_SIGNAL    This variable takes an integer or string	repre‐
			      senting  any  valid  signal. See signal.h(3HEAD)
			      for valid values or  strings.  This  environment
			      variable	causes the specified signal to be sent
			      to the application if certain exceptional	 cases
			      are  detected  during  the use of this facility.
			      The default signal is SIGABRT.

EXAMPLES
       Example 1 Limit the number of file descriptors and  FILE	 standard  I/O
       structures.

       The  following  example	limits the number of file descriptors and FILE
       standard I/O structures to 1000.

	 $ ulimit -n 1000
	 $ LD_PRELOAD_32=/usr/lib/extendedFILE.so.1 application [arg...]

       Example 2 Enable the extended FILE facility.

       The  following  example	enables	 the  extended	FILE   facility.   See
       enable_extended_FILE_stdio(3C) for more examples.

	 $ ulimit -n 1000
	 $ _STDIO_BADFD=100 _STDIO_BADFD_SIGNAL=SIGABRT \
	    LD_PRELOAD_32=/usr/lib/extendedFILE.so.1  \
	    application [arg ...]

       Example	3  Set up the extended FILE environment and start the applica‐
       tion.

       The following shell script first sets up the proper extended FILE envi‐
       ronment and then starts the application:

	 #!/bin/sh
	 if [ $# = 0 ]; then
	    echo "usage: $0 application [arguments...]"
	    exit 1
	 fi
	 ulimit -n 1000
	 # _STDIO_BADFD=196; export _STDIO_BADFD
	 # _STDIO_BADFD_SIGNAL=SIGABRT; export _STDIO_BADFD_SIGNAL
	 LD_PRELOAD_32=/usr/lib/extendedFILE.so.1; export LD_PRELOAD_32
	 "$@"

FILES
       /usr/lib/extendedFILE.so.1    enabling library

ATTRIBUTES
       See attributes(5)  for descriptions of the following attributes:

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Availability		     │system/library (32-bit)	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Interface Stability	     │Committed			   │
       ├─────────────────────────────┼─────────────────────────────┤
       │MT-Level		     │Safe			   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       limit(1),    open(2),	enable_extended_FILE_stdio(3C),	   fdopen(3C),
       fopen(3C), popen(3C), signal.h(3HEAD), stdio(3C), attributes(5)

WARNINGS
       The following displayed message

	 Application violated extended FILE safety mechanism.
	 Please read the man page for extendedFILE.
	 Aborting

       is an indication that your application is modifying the	internal  file
       descriptor field of the FILE structure from standard I/O. Continued use
       of this extended FILE facility could harm your data.  Do	 not  use  the
       extended FILE facility with your application.

SunOS 5.11			  18 Apr 2006		       extendedFILE(5)
[top]

List of man pages available for OpenIndiana

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net