-.SH NOTE
-These functions are included in libutil, hence you'll need to add
-.B \-lutil
-to your compiler command line.
-.SH FILES
-.I /dev/[pt]ty[pqrstuwxyzabcdePQRST][0123456789abcdef]
-.SH "CONFORMING TO"
-These are BSD functions, present in libc5 and glibc2.
+.SH ATTRIBUTES
+For an explanation of the terms used in this section, see
+.BR attributes (7).
+.TS
+allbox;
+lbw20 lb lb
+l l l.
+Interface Attribute Value
+T{
+.BR forkpty (),
+.BR openpty ()
+T} Thread safety MT-Safe locale
+T{
+.BR login_tty ()
+T} Thread safety MT-Unsafe race:ttyname
+.TE
+.sp 1
+.SH CONFORMING TO
+These are BSD functions, present in glibc.
+They are not standardized in POSIX.
+.SH NOTES
+The
+.B const
+modifiers were added to the structure pointer arguments of
+.BR openpty ()
+and
+.BR forkpty ()
+in glibc 2.8.
+.PP
+In versions of glibc before 2.0.92,
+.BR openpty ()
+returns file descriptors for a BSD pseudoterminal pair;
+since glibc 2.0.92,
+it first attempts to open a UNIX 98 pseudoterminal pair,
+and falls back to opening a BSD pseudoterminal pair if that fails.