Page MenuHomeFreeBSD

ctermid(3): Fix return values section
Needs ReviewPublic

Authored by obiwac on Tue, Jun 2, 5:59 PM.
Tags
None
Referenced Files
F159438428: D57396.diff
Sun, Jun 14, 2:52 AM
Unknown Object (File)
Fri, Jun 12, 11:12 PM
Unknown Object (File)
Wed, Jun 10, 9:04 PM
Unknown Object (File)
Thu, Jun 4, 7:00 PM
Unknown Object (File)
Thu, Jun 4, 1:08 AM
Unknown Object (File)
Thu, Jun 4, 1:05 AM
Subscribers

Details

Reviewers
None
Group Reviewers
Klara
manpages
Summary

ctermid() doesn't, and has never, set errno.

While here, add ctermid_r to the name section and align the parameter
name in the source file.

MFC after: 3 days
Obtained from: https://github.com/apple-oss-distributions/libc
Sponsored by: Klara, Inc.

Test Plan
CTERMID(3)              FreeBSD Library Functions Manual              CTERMID(3)

NAME
     ctermid, ctermid_r – generate terminal pathname

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <stdio.h>

     char *
     ctermid(char *buf);

     char *
     ctermid_r(char *buf);

DESCRIPTION
     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 <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.

     If no suitable lookup of the controlling terminal name can be performed,
     this implementation returns ‘/dev/tty’.

RETURN VALUES
     The ctermid() function returns buf if it is non-NULL, otherwise it returns
     the address of a static buffer.  The ctermid_r() function always returns
     buf, even if it is the NULL pointer.

ERRORS
     The current implementation detects no error conditions.

SEE ALSO
     ttyname(3)

STANDARDS
     The ctermid() function conforms to IEEE Std 1003.1-1988 (“POSIX.1”).

BUGS
     By default the ctermid() function writes all information to an internal
     static object.  Subsequent calls to ctermid() will modify the same object.

FreeBSD 16.0-CURRENT              June 2, 2026                        CTERMID(3)

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 73628
Build 70511: arc lint + arc unit