From 43021932bc26bc9a3d64f8158d089b6d68dc8f9c Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Mon, 12 Sep 1994 10:40:46 +0000 Subject: Added _getpty interface. --- Modules/sgimodule.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/Modules/sgimodule.c b/Modules/sgimodule.c index 92a8acd..69f9f7c 100644 --- a/Modules/sgimodule.c +++ b/Modules/sgimodule.c @@ -28,6 +28,12 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. #include "modsupport.h" #include "ceval.h" +#include +#include +#include +#include +#include + extern int sginap(long); static object * @@ -45,8 +51,32 @@ sgi_nap(self, args) return None; } +extern char *_getpty(int *, int, mode_t, int); + +static object * +sgi__getpty(self, args) + object *self; + object *args; +{ + int oflag; + int mode; + int nofork; + char *name; + int fildes; + if (!getargs(args, "(iii)", &oflag, &mode, &nofork)) + return NULL; + errno = 0; + name = _getpty(&fildes, oflag, (mode_t)mode, nofork); + if (name == NULL) { + err_errno(IOError); + return NULL; + } + return mkvalue("(si)", name, fildes); +} + static struct methodlist sgi_methods[] = { {"nap", sgi_nap}, + {"_getpty", sgi__getpty}, {NULL, NULL} /* sentinel */ }; -- cgit v0.12