mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-22 17:01:14 +00:00
![Sukadev Bhattiprolu](/assets/img/avatar_default.png)
Pass-in 'inode' or 'tty' parameter to devpts interfaces. With multiple devpts instances, these parameters will be used in subsequent patches to identify the instance of devpts mounted. The parameters also help simplify devpts implementation. Changelog[v3]: - minor changes due to merge with ttydev updates - rename parameters to emphasize they are ptmx or pts inodes - pass-in tty_struct * to devpts_pty_kill() (this will help cleanup the get_node() call in a subsequent patch) Signed-off-by: Sukadev Bhattiprolu <sukadev@us.ibm.com> Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
49 lines
1.4 KiB
C
49 lines
1.4 KiB
C
/* -*- linux-c -*- --------------------------------------------------------- *
|
|
*
|
|
* linux/include/linux/devpts_fs.h
|
|
*
|
|
* Copyright 1998-2004 H. Peter Anvin -- All Rights Reserved
|
|
*
|
|
* This file is part of the Linux kernel and is made available under
|
|
* the terms of the GNU General Public License, version 2, or at your
|
|
* option, any later version, incorporated herein by reference.
|
|
*
|
|
* ------------------------------------------------------------------------- */
|
|
|
|
#ifndef _LINUX_DEVPTS_FS_H
|
|
#define _LINUX_DEVPTS_FS_H
|
|
|
|
#include <linux/errno.h>
|
|
|
|
#ifdef CONFIG_UNIX98_PTYS
|
|
|
|
int devpts_new_index(struct inode *ptmx_inode);
|
|
void devpts_kill_index(struct inode *ptmx_inode, int idx);
|
|
/* mknod in devpts */
|
|
int devpts_pty_new(struct inode *ptmx_inode, struct tty_struct *tty);
|
|
/* get tty structure */
|
|
struct tty_struct *devpts_get_tty(struct inode *pts_inode, int number);
|
|
/* unlink */
|
|
void devpts_pty_kill(struct tty_struct *tty);
|
|
|
|
#else
|
|
|
|
/* Dummy stubs in the no-pty case */
|
|
static inline int devpts_new_index(struct inode *ptmx_inode) { return -EINVAL; }
|
|
static inline void devpts_kill_index(struct inode *ptmx_inode, int idx) { }
|
|
static inline int devpts_pty_new(struct inode *ptmx_inode,
|
|
struct tty_struct *tty)
|
|
{
|
|
return -EINVAL;
|
|
}
|
|
static inline struct tty_struct *devpts_get_tty(struct inode *pts_inode,
|
|
int number)
|
|
{
|
|
return NULL;
|
|
}
|
|
static inline void devpts_pty_kill(struct tty_struct *tty) { }
|
|
|
|
#endif
|
|
|
|
|
|
#endif /* _LINUX_DEVPTS_FS_H */
|