Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

OpenSolaris 2009.06 - man page for ctermid (opensolaris section 3c)

ctermid(3C)						   Standard C Library Functions 					       ctermid(3C)

ctermid, ctermid_r - generate path name for controlling terminal
#include <stdio.h> char *ctermid(char *s); char *ctermid_r(char *s);
ctermid() The ctermid() function generates the path name of the controlling terminal for the current process and stores it in a string. If s is a null pointer, the string is stored in an internal static area whose address is returned and whose contents are overwritten at the next call to ctermid(). Otherwise, s is assumed to point to a character array of at least L_ctermid elements. The path name is placed in this array and the value of s is returned. The constant L_ctermid is defined in the header <stdio.h>. ctermid_r() The ctermid_r() function behaves as ctermid() except that if s is a null pointer, the function returns NULL.
The difference between ctermid() and ttyname(3C) is that ttyname() must be passed a file descriptor and returns the actual name of the ter- minal associated with that file descriptor, while ctermid() returns a string (/dev/tty) that will refer to the terminal if used as a file name. The ttyname() function is useful only if the process already has at least one file open to a terminal. The ctermid() function is unsafe in multithreaded applications. The ctermid_r() function is MT-Safe and should be used instead. When compiling multithreaded applications, the _REENTRANT flag must be defined on the compile line. This flag should be used only with multithreaded applications.
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |ctermid() is Standard | +-----------------------------+-----------------------------+ |MT-Level |ctermid() is Unsafe; cter- | | |mid_r() is MT-Safe | +-----------------------------+-----------------------------+
ttyname(3C), attributes(5) SunOS 5.11 25 Jul 2000 ctermid(3C)