| /* |
| * Copyright (c) 2009, Giampaolo Rodola'. All rights reserved. |
| * Use of this source code is governed by a BSD-style license that can be |
| * found in the LICENSE file. |
| * |
| * Routines common to all platforms. |
| */ |
| |
| #include <Python.h> |
| |
| |
| /* |
| * Set OSError(errno=ESRCH, strerror="No such process") Python exception. |
| */ |
| PyObject * |
| NoSuchProcess(void) { |
| PyObject *exc; |
| char *msg = strerror(ESRCH); |
| exc = PyObject_CallFunction(PyExc_OSError, "(is)", ESRCH, msg); |
| PyErr_SetObject(PyExc_OSError, exc); |
| Py_XDECREF(exc); |
| return NULL; |
| } |
| |
| |
| /* |
| * Set OSError(errno=EACCES, strerror="Permission denied") Python exception. |
| */ |
| PyObject * |
| AccessDenied(void) { |
| PyObject *exc; |
| char *msg = strerror(EACCES); |
| exc = PyObject_CallFunction(PyExc_OSError, "(is)", EACCES, msg); |
| PyErr_SetObject(PyExc_OSError, exc); |
| Py_XDECREF(exc); |
| return NULL; |
| } |