blob: 82dcd53780f9f335796d7ba68b9cd29d4f1729e2 [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 *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030017grp_getgrgid_impl(PyObject *module, PyObject *id);
Brett Cannon8fb7bb22014-08-22 11:52:46 -040018
19static PyObject *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030020grp_getgrgid(PyObject *module, PyObject *args, PyObject *kwargs)
Brett Cannon8fb7bb22014-08-22 11:52:46 -040021{
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,
Serhiy Storchaka5dee6552016-06-09 16:16:06 +030027 &id)) {
Brett Cannon8fb7bb22014-08-22 11:52:46 -040028 goto exit;
Serhiy Storchaka5dee6552016-06-09 16:16:06 +030029 }
Brett Cannon8fb7bb22014-08-22 11:52:46 -040030 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 *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030048grp_getgrnam_impl(PyObject *module, PyObject *name);
Brett Cannon8fb7bb22014-08-22 11:52:46 -040049
50static PyObject *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030051grp_getgrnam(PyObject *module, PyObject *args, PyObject *kwargs)
Brett Cannon8fb7bb22014-08-22 11:52:46 -040052{
53 PyObject *return_value = NULL;
54 static char *_keywords[] = {"name", NULL};
55 PyObject *name;
56
Serhiy Storchaka247789c2015-04-24 00:40:51 +030057 if (!PyArg_ParseTupleAndKeywords(args, kwargs, "U:getgrnam", _keywords,
Serhiy Storchaka5dee6552016-06-09 16:16:06 +030058 &name)) {
Brett Cannon8fb7bb22014-08-22 11:52:46 -040059 goto exit;
Serhiy Storchaka5dee6552016-06-09 16:16:06 +030060 }
Brett Cannon8fb7bb22014-08-22 11:52:46 -040061 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 *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030080grp_getgrall_impl(PyObject *module);
Brett Cannon8fb7bb22014-08-22 11:52:46 -040081
82static PyObject *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030083grp_getgrall(PyObject *module, PyObject *Py_UNUSED(ignored))
Brett Cannon8fb7bb22014-08-22 11:52:46 -040084{
85 return grp_getgrall_impl(module);
86}
Serhiy Storchaka2954f832016-07-07 18:20:03 +030087/*[clinic end generated code: output=8b7502970a29e7f1 input=a9049054013a1b77]*/