blob: 681830954b1a6889e11aba569cc7f7326dbe5da2 [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
26 if (!PyArg_ParseTupleAndKeywords(args, kwargs,
27 "O:getgrgid", _keywords,
28 &id))
29 goto exit;
30 return_value = grp_getgrgid_impl(module, id);
31
32exit:
33 return return_value;
34}
35
36PyDoc_STRVAR(grp_getgrnam__doc__,
37"getgrnam($module, /, name)\n"
38"--\n"
39"\n"
40"Return the group database entry for the given group name.\n"
41"\n"
42"If name is not valid, raise KeyError.");
43
44#define GRP_GETGRNAM_METHODDEF \
45 {"getgrnam", (PyCFunction)grp_getgrnam, METH_VARARGS|METH_KEYWORDS, grp_getgrnam__doc__},
46
47static PyObject *
48grp_getgrnam_impl(PyModuleDef *module, PyObject *name);
49
50static PyObject *
51grp_getgrnam(PyModuleDef *module, PyObject *args, PyObject *kwargs)
52{
53 PyObject *return_value = NULL;
54 static char *_keywords[] = {"name", NULL};
55 PyObject *name;
56
57 if (!PyArg_ParseTupleAndKeywords(args, kwargs,
58 "U:getgrnam", _keywords,
59 &name))
60 goto exit;
61 return_value = grp_getgrnam_impl(module, name);
62
63exit:
64 return return_value;
65}
66
67PyDoc_STRVAR(grp_getgrall__doc__,
68"getgrall($module, /)\n"
69"--\n"
70"\n"
71"Return a list of all available group entries, in arbitrary order.\n"
72"\n"
73"An entry whose name starts with \'+\' or \'-\' represents an instruction\n"
74"to use YP/NIS and may not be accessible via getgrnam or getgrgid.");
75
76#define GRP_GETGRALL_METHODDEF \
77 {"getgrall", (PyCFunction)grp_getgrall, METH_NOARGS, grp_getgrall__doc__},
78
79static PyObject *
80grp_getgrall_impl(PyModuleDef *module);
81
82static PyObject *
83grp_getgrall(PyModuleDef *module, PyObject *Py_UNUSED(ignored))
84{
85 return grp_getgrall_impl(module);
86}
87/*[clinic end generated code: output=4709a6ba40bb8df9 input=a9049054013a1b77]*/