123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175 |
- /*[clinic input]
- preserve
- [clinic start generated code]*/
- #if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE)
- # include "pycore_gc.h" // PyGC_Head
- # include "pycore_runtime.h" // _Py_ID()
- #endif
- #if defined(MS_WINDOWS)
- PyDoc_STRVAR(_multiprocessing_closesocket__doc__,
- "closesocket($module, handle, /)\n"
- "--\n"
- "\n");
- #define _MULTIPROCESSING_CLOSESOCKET_METHODDEF \
- {"closesocket", (PyCFunction)_multiprocessing_closesocket, METH_O, _multiprocessing_closesocket__doc__},
- static PyObject *
- _multiprocessing_closesocket_impl(PyObject *module, HANDLE handle);
- static PyObject *
- _multiprocessing_closesocket(PyObject *module, PyObject *arg)
- {
- PyObject *return_value = NULL;
- HANDLE handle;
- handle = PyLong_AsVoidPtr(arg);
- if (!handle && PyErr_Occurred()) {
- goto exit;
- }
- return_value = _multiprocessing_closesocket_impl(module, handle);
- exit:
- return return_value;
- }
- #endif /* defined(MS_WINDOWS) */
- #if defined(MS_WINDOWS)
- PyDoc_STRVAR(_multiprocessing_recv__doc__,
- "recv($module, handle, size, /)\n"
- "--\n"
- "\n");
- #define _MULTIPROCESSING_RECV_METHODDEF \
- {"recv", _PyCFunction_CAST(_multiprocessing_recv), METH_FASTCALL, _multiprocessing_recv__doc__},
- static PyObject *
- _multiprocessing_recv_impl(PyObject *module, HANDLE handle, int size);
- static PyObject *
- _multiprocessing_recv(PyObject *module, PyObject *const *args, Py_ssize_t nargs)
- {
- PyObject *return_value = NULL;
- HANDLE handle;
- int size;
- if (!_PyArg_CheckPositional("recv", nargs, 2, 2)) {
- goto exit;
- }
- handle = PyLong_AsVoidPtr(args[0]);
- if (!handle && PyErr_Occurred()) {
- goto exit;
- }
- size = _PyLong_AsInt(args[1]);
- if (size == -1 && PyErr_Occurred()) {
- goto exit;
- }
- return_value = _multiprocessing_recv_impl(module, handle, size);
- exit:
- return return_value;
- }
- #endif /* defined(MS_WINDOWS) */
- #if defined(MS_WINDOWS)
- PyDoc_STRVAR(_multiprocessing_send__doc__,
- "send($module, handle, buf, /)\n"
- "--\n"
- "\n");
- #define _MULTIPROCESSING_SEND_METHODDEF \
- {"send", _PyCFunction_CAST(_multiprocessing_send), METH_FASTCALL, _multiprocessing_send__doc__},
- static PyObject *
- _multiprocessing_send_impl(PyObject *module, HANDLE handle, Py_buffer *buf);
- static PyObject *
- _multiprocessing_send(PyObject *module, PyObject *const *args, Py_ssize_t nargs)
- {
- PyObject *return_value = NULL;
- HANDLE handle;
- Py_buffer buf = {NULL, NULL};
- if (!_PyArg_CheckPositional("send", nargs, 2, 2)) {
- goto exit;
- }
- handle = PyLong_AsVoidPtr(args[0]);
- if (!handle && PyErr_Occurred()) {
- goto exit;
- }
- if (PyObject_GetBuffer(args[1], &buf, PyBUF_SIMPLE) != 0) {
- goto exit;
- }
- if (!PyBuffer_IsContiguous(&buf, 'C')) {
- _PyArg_BadArgument("send", "argument 2", "contiguous buffer", args[1]);
- goto exit;
- }
- return_value = _multiprocessing_send_impl(module, handle, &buf);
- exit:
- /* Cleanup for buf */
- if (buf.obj) {
- PyBuffer_Release(&buf);
- }
- return return_value;
- }
- #endif /* defined(MS_WINDOWS) */
- PyDoc_STRVAR(_multiprocessing_sem_unlink__doc__,
- "sem_unlink($module, name, /)\n"
- "--\n"
- "\n");
- #define _MULTIPROCESSING_SEM_UNLINK_METHODDEF \
- {"sem_unlink", (PyCFunction)_multiprocessing_sem_unlink, METH_O, _multiprocessing_sem_unlink__doc__},
- static PyObject *
- _multiprocessing_sem_unlink_impl(PyObject *module, const char *name);
- static PyObject *
- _multiprocessing_sem_unlink(PyObject *module, PyObject *arg)
- {
- PyObject *return_value = NULL;
- const char *name;
- if (!PyUnicode_Check(arg)) {
- _PyArg_BadArgument("sem_unlink", "argument", "str", arg);
- goto exit;
- }
- Py_ssize_t name_length;
- name = PyUnicode_AsUTF8AndSize(arg, &name_length);
- if (name == NULL) {
- goto exit;
- }
- if (strlen(name) != (size_t)name_length) {
- PyErr_SetString(PyExc_ValueError, "embedded null character");
- goto exit;
- }
- return_value = _multiprocessing_sem_unlink_impl(module, name);
- exit:
- return return_value;
- }
- #ifndef _MULTIPROCESSING_CLOSESOCKET_METHODDEF
- #define _MULTIPROCESSING_CLOSESOCKET_METHODDEF
- #endif /* !defined(_MULTIPROCESSING_CLOSESOCKET_METHODDEF) */
- #ifndef _MULTIPROCESSING_RECV_METHODDEF
- #define _MULTIPROCESSING_RECV_METHODDEF
- #endif /* !defined(_MULTIPROCESSING_RECV_METHODDEF) */
- #ifndef _MULTIPROCESSING_SEND_METHODDEF
- #define _MULTIPROCESSING_SEND_METHODDEF
- #endif /* !defined(_MULTIPROCESSING_SEND_METHODDEF) */
- /*[clinic end generated code: output=4a6afc67c1f5ec85 input=a9049054013a1b77]*/
|