diff --git a/Misc/NEWS b/Misc/NEWS
index 77e280d..9550156 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -181,6 +181,8 @@
 Extension Modules
 -----------------
 
+- Bug #869197: os.setgroups rejects long integer arguments
+
 - Bug #1346533, select.poll() doesn't raise an error if timeout > sys.maxint
 
 - Bug #1344508, Fix UNIX mmap leaking file descriptors
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index 6f77159..a08058f 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -4912,13 +4912,38 @@
 		if (!elem)
 			return NULL;
 		if (!PyInt_Check(elem)) {
-			PyErr_SetString(PyExc_TypeError,
-					"groups must be integers");
-			Py_DECREF(elem);
-			return NULL;
+			if (!PyLong_Check(elem)) {
+				PyErr_SetString(PyExc_TypeError,
+						"groups must be integers");
+				Py_DECREF(elem);
+				return NULL;
+			} else {
+				unsigned long x = PyLong_AsUnsignedLong(elem);
+				if (PyErr_Occurred()) {
+					PyErr_SetString(PyExc_TypeError, 
+							"group id too big");
+					Py_DECREF(elem);
+					return NULL;
+				}
+				grouplist[i] = x;
+				/* read back the value to see if it fitted in gid_t */
+				if (grouplist[i] != x) {
+					PyErr_SetString(PyExc_TypeError,
+							"group id too big");
+					Py_DECREF(elem);
+					return NULL;
+				}
+			}
+		} else {
+			long x  = PyInt_AsLong(elem);
+			grouplist[i] = x;
+			if (grouplist[i] != x) {
+				PyErr_SetString(PyExc_TypeError,
+						"group id too big");
+				Py_DECREF(elem);
+				return NULL;
+			}
 		}
-		/* XXX: check that value fits into gid_t. */
-		grouplist[i] = PyInt_AsLong(elem);
 		Py_DECREF(elem);
 	}
 
