GRANTPT(3)

GRANTPT(3) | Library Functions Manual | GRANTPT(3)

# NAME

`grantpt` — grant access to a slave pseudo-terminal device

# LIBRARY

Standard C Library (libc, -lc)

# SYNOPSIS

`#include <stdlib.h>`

int
`grantpt`(int fildes);

# DESCRIPTION

The `grantpt`() function changes the mode and ownership of the slave pseudo-terminal device that corresponds to the master pseudo-terminal device associated with fildes to be owned by the real user id of the calling process, group id of `tty`. The permissions are set to readable and writable by owner, and writable by group. If the slave pseudo-terminal device was being accessed by other file descriptors at the time, all such access will be revoked.

# RETURN VALUES

If successful, `grantpt`() returns 0; otherwise a value of -1 is returned and errno is set to indicate the error.

# ERRORS

The `grantpt`() function will fail if:

[`EACCESS`]
  the corresponding pseudo-terminal device could not be accessed.
[`EBADF`]
  fildes is not a valid descriptor.
[`EINVAL`]
  fildes is not associated with a master pseudo-terminal device.

# NOTES

Setting the group to `tty` and revoking accesses by other file descriptors are NetBSD extensions. Calling `grantpt`() is equivalent to:

    	ioctl(fildes, TIOCGRANTPT, 0);

# SEE ALSO

ioctl(2), posix_openpt(3), ptsname(3), unlockpt(3)

# STANDARDS

The `grantpt`() function conforms to IEEE Std 1003.1-2001 (“POSIX.1”). Its first release was in X/Open Portability Guide Issue 4, Version 2 (“XPG4.2”).

May 25, 2004 | NetBSD 11.0