getpt — open the pseudoterminal master (PTM)


#define _GNU_SOURCE             /* See feature_test_macros(7) */
#include <stdlib.h>

int getpt(void);


getpt() opens a pseudoterminal master and returns its file descriptor. It is equivalent to

open("/dev/ptmx", O_RDWR | O_NOCTTY);

on Linux systems, though the pseudoterminal master is located elsewhere on some systems that use GNU Libc.

Return Value

getpt() returns an open file descriptor upon successful completion. Otherwise, it returns -1 and sets errno to indicate the error.


getpt() can fail with various errors described in open(2).


getpt() is provided in glibc since version 2.1.


For an explanation of the terms used in this section, see attributes(7).

Interface Attribute Value
getpt() Thread safety MT-Safe

Conforming to

getpt() is glibc-specific; use posix_openpt(3) instead.

See Also

grantpt(3), posix_openpt(3), ptsname(3), unlockpt(3), ptmx(4), pty(7)


This page is part of release 5.04 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at

Referenced By

posix_openpt(3), pts(4).

2015-03-02 GNU Linux Programmer's Manual