Staging
v0.5.1
https://github.com/python/cpython
Revision 5a2fd0499fd9f3580e457922ae7239ab68e781d1 authored by R. David Murray on 20 November 2010, 21:23:45 UTC, committed by R. David Murray on 20 November 2010, 21:23:45 UTC
........
  r86611 | r.david.murray | 2010-11-20 16:18:51 -0500 (Sat, 20 Nov 2010) | 4 lines

  #10453: compileall now uses argparse instead of getopt, so -h works.

  Patch by Michele OrrĂ¹.
........
1 parent 4fadd53
Raw File
Tip revision: 5a2fd0499fd9f3580e457922ae7239ab68e781d1 authored by R. David Murray on 20 November 2010, 21:23:45 UTC
Blocked revisions 86611 via svnmerge
Tip revision: 5a2fd04
sgimodule.c

/* SGI module -- random SGI-specific things */

#include "Python.h"

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

static PyObject *
sgi_nap(PyObject *self, PyObject *args)
{
    long ticks;
    if (!PyArg_ParseTuple(args, "l:nap", &ticks))
        return NULL;
    Py_BEGIN_ALLOW_THREADS
    sginap(ticks);
    Py_END_ALLOW_THREADS
    Py_INCREF(Py_None);
    return Py_None;
}

extern char *_getpty(int *, int, mode_t, int);

static PyObject *
sgi__getpty(PyObject *self, PyObject *args)
{
    int oflag;
    int mode;
    int nofork;
    char *name;
    int fildes;
    if (!PyArg_ParseTuple(args, "iii:_getpty", &oflag, &mode, &nofork))
        return NULL;
    errno = 0;
    name = _getpty(&fildes, oflag, (mode_t)mode, nofork);
    if (name == NULL) {
        PyErr_SetFromErrno(PyExc_IOError);
        return NULL;
    }
    return Py_BuildValue("(si)", name, fildes);
}

static PyMethodDef sgi_methods[] = {
    {"nap",             sgi_nap,        METH_VARARGS},
    {"_getpty",         sgi__getpty,    METH_VARARGS},
    {NULL,              NULL}           /* sentinel */
};


void
initsgi(void)
{
    Py_InitModule("sgi", sgi_methods);
}
back to top