17db96d56Sopenharmony_ci/*[clinic input] 27db96d56Sopenharmony_cipreserve 37db96d56Sopenharmony_ci[clinic start generated code]*/ 47db96d56Sopenharmony_ci 57db96d56Sopenharmony_ci#if defined(MS_WINDOWS) 67db96d56Sopenharmony_ci 77db96d56Sopenharmony_ciPyDoc_STRVAR(_multiprocessing_closesocket__doc__, 87db96d56Sopenharmony_ci"closesocket($module, handle, /)\n" 97db96d56Sopenharmony_ci"--\n" 107db96d56Sopenharmony_ci"\n"); 117db96d56Sopenharmony_ci 127db96d56Sopenharmony_ci#define _MULTIPROCESSING_CLOSESOCKET_METHODDEF \ 137db96d56Sopenharmony_ci {"closesocket", (PyCFunction)_multiprocessing_closesocket, METH_O, _multiprocessing_closesocket__doc__}, 147db96d56Sopenharmony_ci 157db96d56Sopenharmony_cistatic PyObject * 167db96d56Sopenharmony_ci_multiprocessing_closesocket_impl(PyObject *module, HANDLE handle); 177db96d56Sopenharmony_ci 187db96d56Sopenharmony_cistatic PyObject * 197db96d56Sopenharmony_ci_multiprocessing_closesocket(PyObject *module, PyObject *arg) 207db96d56Sopenharmony_ci{ 217db96d56Sopenharmony_ci PyObject *return_value = NULL; 227db96d56Sopenharmony_ci HANDLE handle; 237db96d56Sopenharmony_ci 247db96d56Sopenharmony_ci if (!PyArg_Parse(arg, ""F_HANDLE":closesocket", &handle)) { 257db96d56Sopenharmony_ci goto exit; 267db96d56Sopenharmony_ci } 277db96d56Sopenharmony_ci return_value = _multiprocessing_closesocket_impl(module, handle); 287db96d56Sopenharmony_ci 297db96d56Sopenharmony_ciexit: 307db96d56Sopenharmony_ci return return_value; 317db96d56Sopenharmony_ci} 327db96d56Sopenharmony_ci 337db96d56Sopenharmony_ci#endif /* defined(MS_WINDOWS) */ 347db96d56Sopenharmony_ci 357db96d56Sopenharmony_ci#if defined(MS_WINDOWS) 367db96d56Sopenharmony_ci 377db96d56Sopenharmony_ciPyDoc_STRVAR(_multiprocessing_recv__doc__, 387db96d56Sopenharmony_ci"recv($module, handle, size, /)\n" 397db96d56Sopenharmony_ci"--\n" 407db96d56Sopenharmony_ci"\n"); 417db96d56Sopenharmony_ci 427db96d56Sopenharmony_ci#define _MULTIPROCESSING_RECV_METHODDEF \ 437db96d56Sopenharmony_ci {"recv", _PyCFunction_CAST(_multiprocessing_recv), METH_FASTCALL, _multiprocessing_recv__doc__}, 447db96d56Sopenharmony_ci 457db96d56Sopenharmony_cistatic PyObject * 467db96d56Sopenharmony_ci_multiprocessing_recv_impl(PyObject *module, HANDLE handle, int size); 477db96d56Sopenharmony_ci 487db96d56Sopenharmony_cistatic PyObject * 497db96d56Sopenharmony_ci_multiprocessing_recv(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 507db96d56Sopenharmony_ci{ 517db96d56Sopenharmony_ci PyObject *return_value = NULL; 527db96d56Sopenharmony_ci HANDLE handle; 537db96d56Sopenharmony_ci int size; 547db96d56Sopenharmony_ci 557db96d56Sopenharmony_ci if (!_PyArg_ParseStack(args, nargs, ""F_HANDLE"i:recv", 567db96d56Sopenharmony_ci &handle, &size)) { 577db96d56Sopenharmony_ci goto exit; 587db96d56Sopenharmony_ci } 597db96d56Sopenharmony_ci return_value = _multiprocessing_recv_impl(module, handle, size); 607db96d56Sopenharmony_ci 617db96d56Sopenharmony_ciexit: 627db96d56Sopenharmony_ci return return_value; 637db96d56Sopenharmony_ci} 647db96d56Sopenharmony_ci 657db96d56Sopenharmony_ci#endif /* defined(MS_WINDOWS) */ 667db96d56Sopenharmony_ci 677db96d56Sopenharmony_ci#if defined(MS_WINDOWS) 687db96d56Sopenharmony_ci 697db96d56Sopenharmony_ciPyDoc_STRVAR(_multiprocessing_send__doc__, 707db96d56Sopenharmony_ci"send($module, handle, buf, /)\n" 717db96d56Sopenharmony_ci"--\n" 727db96d56Sopenharmony_ci"\n"); 737db96d56Sopenharmony_ci 747db96d56Sopenharmony_ci#define _MULTIPROCESSING_SEND_METHODDEF \ 757db96d56Sopenharmony_ci {"send", _PyCFunction_CAST(_multiprocessing_send), METH_FASTCALL, _multiprocessing_send__doc__}, 767db96d56Sopenharmony_ci 777db96d56Sopenharmony_cistatic PyObject * 787db96d56Sopenharmony_ci_multiprocessing_send_impl(PyObject *module, HANDLE handle, Py_buffer *buf); 797db96d56Sopenharmony_ci 807db96d56Sopenharmony_cistatic PyObject * 817db96d56Sopenharmony_ci_multiprocessing_send(PyObject *module, PyObject *const *args, Py_ssize_t nargs) 827db96d56Sopenharmony_ci{ 837db96d56Sopenharmony_ci PyObject *return_value = NULL; 847db96d56Sopenharmony_ci HANDLE handle; 857db96d56Sopenharmony_ci Py_buffer buf = {NULL, NULL}; 867db96d56Sopenharmony_ci 877db96d56Sopenharmony_ci if (!_PyArg_ParseStack(args, nargs, ""F_HANDLE"y*:send", 887db96d56Sopenharmony_ci &handle, &buf)) { 897db96d56Sopenharmony_ci goto exit; 907db96d56Sopenharmony_ci } 917db96d56Sopenharmony_ci return_value = _multiprocessing_send_impl(module, handle, &buf); 927db96d56Sopenharmony_ci 937db96d56Sopenharmony_ciexit: 947db96d56Sopenharmony_ci /* Cleanup for buf */ 957db96d56Sopenharmony_ci if (buf.obj) { 967db96d56Sopenharmony_ci PyBuffer_Release(&buf); 977db96d56Sopenharmony_ci } 987db96d56Sopenharmony_ci 997db96d56Sopenharmony_ci return return_value; 1007db96d56Sopenharmony_ci} 1017db96d56Sopenharmony_ci 1027db96d56Sopenharmony_ci#endif /* defined(MS_WINDOWS) */ 1037db96d56Sopenharmony_ci 1047db96d56Sopenharmony_ciPyDoc_STRVAR(_multiprocessing_sem_unlink__doc__, 1057db96d56Sopenharmony_ci"sem_unlink($module, name, /)\n" 1067db96d56Sopenharmony_ci"--\n" 1077db96d56Sopenharmony_ci"\n"); 1087db96d56Sopenharmony_ci 1097db96d56Sopenharmony_ci#define _MULTIPROCESSING_SEM_UNLINK_METHODDEF \ 1107db96d56Sopenharmony_ci {"sem_unlink", (PyCFunction)_multiprocessing_sem_unlink, METH_O, _multiprocessing_sem_unlink__doc__}, 1117db96d56Sopenharmony_ci 1127db96d56Sopenharmony_cistatic PyObject * 1137db96d56Sopenharmony_ci_multiprocessing_sem_unlink_impl(PyObject *module, const char *name); 1147db96d56Sopenharmony_ci 1157db96d56Sopenharmony_cistatic PyObject * 1167db96d56Sopenharmony_ci_multiprocessing_sem_unlink(PyObject *module, PyObject *arg) 1177db96d56Sopenharmony_ci{ 1187db96d56Sopenharmony_ci PyObject *return_value = NULL; 1197db96d56Sopenharmony_ci const char *name; 1207db96d56Sopenharmony_ci 1217db96d56Sopenharmony_ci if (!PyUnicode_Check(arg)) { 1227db96d56Sopenharmony_ci _PyArg_BadArgument("sem_unlink", "argument", "str", arg); 1237db96d56Sopenharmony_ci goto exit; 1247db96d56Sopenharmony_ci } 1257db96d56Sopenharmony_ci Py_ssize_t name_length; 1267db96d56Sopenharmony_ci name = PyUnicode_AsUTF8AndSize(arg, &name_length); 1277db96d56Sopenharmony_ci if (name == NULL) { 1287db96d56Sopenharmony_ci goto exit; 1297db96d56Sopenharmony_ci } 1307db96d56Sopenharmony_ci if (strlen(name) != (size_t)name_length) { 1317db96d56Sopenharmony_ci PyErr_SetString(PyExc_ValueError, "embedded null character"); 1327db96d56Sopenharmony_ci goto exit; 1337db96d56Sopenharmony_ci } 1347db96d56Sopenharmony_ci return_value = _multiprocessing_sem_unlink_impl(module, name); 1357db96d56Sopenharmony_ci 1367db96d56Sopenharmony_ciexit: 1377db96d56Sopenharmony_ci return return_value; 1387db96d56Sopenharmony_ci} 1397db96d56Sopenharmony_ci 1407db96d56Sopenharmony_ci#ifndef _MULTIPROCESSING_CLOSESOCKET_METHODDEF 1417db96d56Sopenharmony_ci #define _MULTIPROCESSING_CLOSESOCKET_METHODDEF 1427db96d56Sopenharmony_ci#endif /* !defined(_MULTIPROCESSING_CLOSESOCKET_METHODDEF) */ 1437db96d56Sopenharmony_ci 1447db96d56Sopenharmony_ci#ifndef _MULTIPROCESSING_RECV_METHODDEF 1457db96d56Sopenharmony_ci #define _MULTIPROCESSING_RECV_METHODDEF 1467db96d56Sopenharmony_ci#endif /* !defined(_MULTIPROCESSING_RECV_METHODDEF) */ 1477db96d56Sopenharmony_ci 1487db96d56Sopenharmony_ci#ifndef _MULTIPROCESSING_SEND_METHODDEF 1497db96d56Sopenharmony_ci #define _MULTIPROCESSING_SEND_METHODDEF 1507db96d56Sopenharmony_ci#endif /* !defined(_MULTIPROCESSING_SEND_METHODDEF) */ 1517db96d56Sopenharmony_ci/*[clinic end generated code: output=d3bbf69de578db7b input=a9049054013a1b77]*/ 152