blob: 2c47a4236b3f9c73c787f07dd350e5617d75a217 [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,
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 *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030047grp_getgrnam_impl(PyObject *module, PyObject *name);
Brett Cannon8fb7bb22014-08-22 11:52:46 -040048
49static PyObject *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030050grp_getgrnam(PyObject *module, PyObject *args, PyObject *kwargs)
Brett Cannon8fb7bb22014-08-22 11:52:46 -040051{
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 *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030078grp_getgrall_impl(PyObject *module);
Brett Cannon8fb7bb22014-08-22 11:52:46 -040079
80static PyObject *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030081grp_getgrall(PyObject *module, PyObject *Py_UNUSED(ignored))
Brett Cannon8fb7bb22014-08-22 11:52:46 -040082{
83 return grp_getgrall_impl(module);
84}
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030085/*[clinic end generated code: output=bee09feefc54a2cb input=a9049054013a1b77]*/