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 5.99