The ctermid function generates a string, that, when used as a pathname, refers to the current controlling terminal of the calling process.
If buf is the NULL pointer, a pointer to a static area is returned. Otherwise, the pathname is copied into the memory referenced by buf. The argument buf is assumed to be at least L_ctermid (as defined in the include file
.In stdio.h ) bytes long.
The ctermid_r function provides the same functionality as ctermid except that if buf is a NULL pointer, NULL is returned.
The current implementation simply returns /dev/tty.
Upon successful completion, a non- NULL pointer is returned. Otherwise, a NULL pointer is returned and the global variable errno is set to indicate the error.
The current implementation detects no error conditions.