blob: eb5b59d29bb1880f8abed4ac20cbda0fbe2fd0f2 [file] [log] [blame]
Brett Cannon8fb7bb22014-08-22 11:52:46 -04001/*[clinic input]
2preserve
3[clinic start generated code]*/
4
5PyDoc_STRVAR(grp_getgrgid__doc__,
6"getgrgid($module, /, id)\n"
7"--\n"
8"\n"
9"Return the group database entry for the given numeric group ID.\n"
10"\n"
11"If id is not valid, raise KeyError.");
12
13#define GRP_GETGRGID_METHODDEF \
14 {"getgrgid", (PyCFunction)grp_getgrgid, METH_VARARGS|METH_KEYWORDS, grp_getgrgid__doc__},
15
16static PyObject *
17grp_getgrgid_impl(PyModuleDef *module, PyObject *id);
18
19static PyObject *
20grp_getgrgid(PyModuleDef *module, PyObject *args, PyObject *kwargs)
21{
22 PyObject *return_value = NULL;
23 static char *_keywords[] = {"id", NULL};
24 PyObject *id;
25
Serhiy Storchaka247789c2015-04-24 00:40:51 +030026 if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O:getgrgid", _keywords,
Brett Cannon8fb7bb22014-08-22 11:52:46 -040027 &id))
28 goto exit;
29 return_value = grp_getgrgid_impl(module, id);
30
31exit:
32 return return_value;
33}
34
35PyDoc_STRVAR(grp_getgrnam__doc__,
36"getgrnam($module, /, name)\n"
37"--\n"
38"\n"
39"Return the group database entry for the given group name.\n"
40"\n"
41"If name is not valid, raise KeyError.");
42
43#define GRP_GETGRNAM_METHODDEF \
44 {"getgrnam", (PyCFunction)grp_getgrnam, METH_VARARGS|METH_KEYWORDS, grp_getgrnam__doc__},
45
46static PyObject *
47grp_getgrnam_impl(PyModuleDef *module, PyObject *name);
48
49static PyObject *
50grp_getgrnam(PyModuleDef *module, PyObject *args, PyObject *kwargs)
51{
52 PyObject *return_value = NULL;
53 static char *_keywords[] = {"name", NULL};
54 PyObject *name;
55
Serhiy Storchaka247789c2015-04-24 00:40:51 +030056 if (!PyArg_ParseTupleAndKeywords(args, kwargs, "U:getgrnam", _keywords,
Brett Cannon8fb7bb22014-08-22 11:52:46 -040057 &name))
58 goto exit;
59 return_value = grp_getgrnam_impl(module, name);
60
61exit:
62 return return_value;
63}
64
65PyDoc_STRVAR(grp_getgrall__doc__,
66"getgrall($module, /)\n"
67"--\n"
68"\n"
69"Return a list of all available group entries, in arbitrary order.\n"
70"\n"
71"An entry whose name starts with \'+\' or \'-\' represents an instruction\n"
72"to use YP/NIS and may not be accessible via getgrnam or getgrgid.");
73
74#define GRP_GETGRALL_METHODDEF \
75 {"getgrall", (PyCFunction)grp_getgrall, METH_NOARGS, grp_getgrall__doc__},
76
77static PyObject *
78grp_getgrall_impl(PyModuleDef *module);
79
80static PyObject *
81grp_getgrall(PyModuleDef *module, PyObject *Py_UNUSED(ignored))
82{
83 return grp_getgrall_impl(module);
84}
Serhiy Storchaka247789c2015-04-24 00:40:51 +030085/*[clinic end generated code: output=5191c25600afb1bd input=a9049054013a1b77]*/