17db96d56Sopenharmony_ci/*[clinic input]
27db96d56Sopenharmony_cipreserve
37db96d56Sopenharmony_ci[clinic start generated code]*/
47db96d56Sopenharmony_ci
57db96d56Sopenharmony_ciPyDoc_STRVAR(pwd_getpwuid__doc__,
67db96d56Sopenharmony_ci"getpwuid($module, uidobj, /)\n"
77db96d56Sopenharmony_ci"--\n"
87db96d56Sopenharmony_ci"\n"
97db96d56Sopenharmony_ci"Return the password database entry for the given numeric user ID.\n"
107db96d56Sopenharmony_ci"\n"
117db96d56Sopenharmony_ci"See `help(pwd)` for more on password database entries.");
127db96d56Sopenharmony_ci
137db96d56Sopenharmony_ci#define PWD_GETPWUID_METHODDEF    \
147db96d56Sopenharmony_ci    {"getpwuid", (PyCFunction)pwd_getpwuid, METH_O, pwd_getpwuid__doc__},
157db96d56Sopenharmony_ci
167db96d56Sopenharmony_ciPyDoc_STRVAR(pwd_getpwnam__doc__,
177db96d56Sopenharmony_ci"getpwnam($module, name, /)\n"
187db96d56Sopenharmony_ci"--\n"
197db96d56Sopenharmony_ci"\n"
207db96d56Sopenharmony_ci"Return the password database entry for the given user name.\n"
217db96d56Sopenharmony_ci"\n"
227db96d56Sopenharmony_ci"See `help(pwd)` for more on password database entries.");
237db96d56Sopenharmony_ci
247db96d56Sopenharmony_ci#define PWD_GETPWNAM_METHODDEF    \
257db96d56Sopenharmony_ci    {"getpwnam", (PyCFunction)pwd_getpwnam, METH_O, pwd_getpwnam__doc__},
267db96d56Sopenharmony_ci
277db96d56Sopenharmony_cistatic PyObject *
287db96d56Sopenharmony_cipwd_getpwnam_impl(PyObject *module, PyObject *name);
297db96d56Sopenharmony_ci
307db96d56Sopenharmony_cistatic PyObject *
317db96d56Sopenharmony_cipwd_getpwnam(PyObject *module, PyObject *arg)
327db96d56Sopenharmony_ci{
337db96d56Sopenharmony_ci    PyObject *return_value = NULL;
347db96d56Sopenharmony_ci    PyObject *name;
357db96d56Sopenharmony_ci
367db96d56Sopenharmony_ci    if (!PyUnicode_Check(arg)) {
377db96d56Sopenharmony_ci        _PyArg_BadArgument("getpwnam", "argument", "str", arg);
387db96d56Sopenharmony_ci        goto exit;
397db96d56Sopenharmony_ci    }
407db96d56Sopenharmony_ci    if (PyUnicode_READY(arg) == -1) {
417db96d56Sopenharmony_ci        goto exit;
427db96d56Sopenharmony_ci    }
437db96d56Sopenharmony_ci    name = arg;
447db96d56Sopenharmony_ci    return_value = pwd_getpwnam_impl(module, name);
457db96d56Sopenharmony_ci
467db96d56Sopenharmony_ciexit:
477db96d56Sopenharmony_ci    return return_value;
487db96d56Sopenharmony_ci}
497db96d56Sopenharmony_ci
507db96d56Sopenharmony_ci#if defined(HAVE_GETPWENT)
517db96d56Sopenharmony_ci
527db96d56Sopenharmony_ciPyDoc_STRVAR(pwd_getpwall__doc__,
537db96d56Sopenharmony_ci"getpwall($module, /)\n"
547db96d56Sopenharmony_ci"--\n"
557db96d56Sopenharmony_ci"\n"
567db96d56Sopenharmony_ci"Return a list of all available password database entries, in arbitrary order.\n"
577db96d56Sopenharmony_ci"\n"
587db96d56Sopenharmony_ci"See help(pwd) for more on password database entries.");
597db96d56Sopenharmony_ci
607db96d56Sopenharmony_ci#define PWD_GETPWALL_METHODDEF    \
617db96d56Sopenharmony_ci    {"getpwall", (PyCFunction)pwd_getpwall, METH_NOARGS, pwd_getpwall__doc__},
627db96d56Sopenharmony_ci
637db96d56Sopenharmony_cistatic PyObject *
647db96d56Sopenharmony_cipwd_getpwall_impl(PyObject *module);
657db96d56Sopenharmony_ci
667db96d56Sopenharmony_cistatic PyObject *
677db96d56Sopenharmony_cipwd_getpwall(PyObject *module, PyObject *Py_UNUSED(ignored))
687db96d56Sopenharmony_ci{
697db96d56Sopenharmony_ci    return pwd_getpwall_impl(module);
707db96d56Sopenharmony_ci}
717db96d56Sopenharmony_ci
727db96d56Sopenharmony_ci#endif /* defined(HAVE_GETPWENT) */
737db96d56Sopenharmony_ci
747db96d56Sopenharmony_ci#ifndef PWD_GETPWALL_METHODDEF
757db96d56Sopenharmony_ci    #define PWD_GETPWALL_METHODDEF
767db96d56Sopenharmony_ci#endif /* !defined(PWD_GETPWALL_METHODDEF) */
777db96d56Sopenharmony_ci/*[clinic end generated code: output=7fceab7f1a85da36 input=a9049054013a1b77]*/
78