blob: cb191a0b776d1a712d6752a84f019ae1da896e2f [file] [log] [blame]
Brett Cannon9f49e312014-08-22 14:08:46 -04001/*[clinic input]
2preserve
3[clinic start generated code]*/
4
5PyDoc_STRVAR(pwd_getpwuid__doc__,
6"getpwuid($module, uidobj, /)\n"
7"--\n"
8"\n"
9"Return the password database entry for the given numeric user ID.\n"
10"\n"
11"See `help(pwd)` for more on password database entries.");
12
13#define PWD_GETPWUID_METHODDEF \
14 {"getpwuid", (PyCFunction)pwd_getpwuid, METH_O, pwd_getpwuid__doc__},
15
16PyDoc_STRVAR(pwd_getpwnam__doc__,
17"getpwnam($module, arg, /)\n"
18"--\n"
19"\n"
20"Return the password database entry for the given user name.\n"
21"\n"
22"See `help(pwd)` for more on password database entries.");
23
24#define PWD_GETPWNAM_METHODDEF \
Serhiy Storchaka92e8af62015-04-04 00:12:11 +030025 {"getpwnam", (PyCFunction)pwd_getpwnam, METH_O, pwd_getpwnam__doc__},
Brett Cannon9f49e312014-08-22 14:08:46 -040026
27static PyObject *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030028pwd_getpwnam_impl(PyObject *module, PyObject *arg);
Brett Cannon9f49e312014-08-22 14:08:46 -040029
30static PyObject *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030031pwd_getpwnam(PyObject *module, PyObject *arg_)
Brett Cannon9f49e312014-08-22 14:08:46 -040032{
33 PyObject *return_value = NULL;
34 PyObject *arg;
35
Serhiy Storchaka247789c2015-04-24 00:40:51 +030036 if (!PyArg_Parse(arg_, "U:getpwnam", &arg))
Brett Cannon9f49e312014-08-22 14:08:46 -040037 goto exit;
38 return_value = pwd_getpwnam_impl(module, arg);
39
40exit:
41 return return_value;
42}
43
44#if defined(HAVE_GETPWENT)
45
46PyDoc_STRVAR(pwd_getpwall__doc__,
47"getpwall($module, /)\n"
48"--\n"
49"\n"
50"Return a list of all available password database entries, in arbitrary order.\n"
51"\n"
52"See help(pwd) for more on password database entries.");
53
54#define PWD_GETPWALL_METHODDEF \
55 {"getpwall", (PyCFunction)pwd_getpwall, METH_NOARGS, pwd_getpwall__doc__},
56
57static PyObject *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030058pwd_getpwall_impl(PyObject *module);
Brett Cannon9f49e312014-08-22 14:08:46 -040059
60static PyObject *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030061pwd_getpwall(PyObject *module, PyObject *Py_UNUSED(ignored))
Brett Cannon9f49e312014-08-22 14:08:46 -040062{
63 return pwd_getpwall_impl(module);
64}
65
66#endif /* defined(HAVE_GETPWENT) */
67
68#ifndef PWD_GETPWALL_METHODDEF
69 #define PWD_GETPWALL_METHODDEF
70#endif /* !defined(PWD_GETPWALL_METHODDEF) */
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030071/*[clinic end generated code: output=d0ea1c5c832f0c1a input=a9049054013a1b77]*/