From ce4a32fe52ef09d8f5ff1dd22c001110902b60a2 Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdelibs@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- kdesu/kdesu_pty.h | 71 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 kdesu/kdesu_pty.h (limited to 'kdesu/kdesu_pty.h') diff --git a/kdesu/kdesu_pty.h b/kdesu/kdesu_pty.h new file mode 100644 index 000000000..c9eadceda --- /dev/null +++ b/kdesu/kdesu_pty.h @@ -0,0 +1,71 @@ +/* vi: ts=8 sts=4 sw=4 + * + * $Id$ + * + * This file is part of the KDE project, module kdesu. + * Copyright (C) 1999,2000 Geert Jansen + * + * This is free software; you can use this library under the GNU Library + * General Public License, version 2. See the file "COPYING.LIB" for the + * exact licensing terms. + */ + + +/** + * PTY compatibility routines. This class tries to emulate a UNIX98 PTY API + * on various platforms. + */ +#ifndef __PTY_h_Included__ +#define __PTY_h_Included__ + +#include + +#include + +class KDESU_EXPORT PTY { + +public: + /** + * Construct a PTY object. + */ + PTY(); + + /** + * Destructs the object. The PTY is closed if it is still open. + */ + ~PTY(); + + /** + * Allocate a pty. + * @return A filedescriptor to the master side. + */ + int getpt(); + + /** + * Grant access to the slave side. + * @return Zero if succesfull, < 0 otherwise. + */ + int grantpt(); + + /** + * Unlock the slave side. + * @return Zero if successful, < 0 otherwise. + */ + int unlockpt(); + + /** + * Get the slave name. + * @return The slave name. + */ + QCString ptsname(); + +private: + + int ptyfd; + QCString ptyname, ttyname; + + class PTYPrivate; + PTYPrivate *d; +}; + +#endif // __PTY_h_Included__ -- cgit v1.2.3