2024-09-09 08:52:07 +00:00
|
|
|
/* -*- 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 */
|
2024-09-09 08:57:42 +00:00
|
|
|
struct inode *devpts_pty_new(struct inode *ptmx_inode, dev_t device, int index,
|
|
|
|
void *priv);
|
|
|
|
/* get private structure */
|
|
|
|
void *devpts_get_priv(struct inode *pts_inode);
|
2024-09-09 08:52:07 +00:00
|
|
|
/* unlink */
|
2024-09-09 08:57:42 +00:00
|
|
|
void devpts_pty_kill(struct inode *inode);
|
2024-09-09 08:52:07 +00:00
|
|
|
|
|
|
|
#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) { }
|
2024-09-09 08:57:42 +00:00
|
|
|
static inline struct inode *devpts_pty_new(struct inode *ptmx_inode,
|
|
|
|
dev_t device, int index, void *priv)
|
2024-09-09 08:52:07 +00:00
|
|
|
{
|
2024-09-09 08:57:42 +00:00
|
|
|
return ERR_PTR(-EINVAL);
|
2024-09-09 08:52:07 +00:00
|
|
|
}
|
2024-09-09 08:57:42 +00:00
|
|
|
static inline void *devpts_get_priv(struct inode *pts_inode)
|
2024-09-09 08:52:07 +00:00
|
|
|
{
|
|
|
|
return NULL;
|
|
|
|
}
|
2024-09-09 08:57:42 +00:00
|
|
|
static inline void devpts_pty_kill(struct inode *inode) { }
|
2024-09-09 08:52:07 +00:00
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#endif /* _LINUX_DEVPTS_FS_H */
|