1 |
commit: fca437485e58a32d6d3ece361d8a528f00aa8d82 |
2 |
Author: Sam James <sam <AT> gentoo <DOT> org> |
3 |
AuthorDate: Thu Jun 30 22:20:49 2022 +0000 |
4 |
Commit: Sam James <sam <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Jun 30 22:20:58 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fca43748 |
7 |
|
8 |
dev-python/pypam: treeclean |
9 |
|
10 |
Bug: https://bugs.gentoo.org/802927 |
11 |
Bug: https://bugs.gentoo.org/833297 |
12 |
Signed-off-by: Sam James <sam <AT> gentoo.org> |
13 |
|
14 |
dev-python/pypam/Manifest | 1 - |
15 |
dev-python/pypam/files/PyPAM-0.5.0-dealloc.patch | 17 -- |
16 |
.../pypam/files/PyPAM-0.5.0-memory-errors.patch | 128 ------------- |
17 |
dev-python/pypam/files/PyPAM-0.5.0-nofree.patch | 60 ------- |
18 |
.../pypam/files/PyPAM-0.5.0-return-value.patch | 57 ------ |
19 |
dev-python/pypam/files/PyPAM-python3-support.patch | 198 --------------------- |
20 |
dev-python/pypam/files/pypam-0.5.0-stricter.patch | 15 -- |
21 |
dev-python/pypam/metadata.xml | 5 - |
22 |
dev-python/pypam/pypam-0.5.0-r6.ebuild | 45 ----- |
23 |
dev-python/pypam/pypam-0.5.0-r7.ebuild | 45 ----- |
24 |
dev-python/pypam/pypam-0.5.0-r8.ebuild | 40 ----- |
25 |
profiles/package.mask | 6 - |
26 |
12 files changed, 617 deletions(-) |
27 |
|
28 |
diff --git a/dev-python/pypam/Manifest b/dev-python/pypam/Manifest |
29 |
deleted file mode 100644 |
30 |
index 01642e48981b..000000000000 |
31 |
--- a/dev-python/pypam/Manifest |
32 |
+++ /dev/null |
33 |
@@ -1 +0,0 @@ |
34 |
-DIST PyPAM-0.5.0.tar.gz 105206 BLAKE2B 7778275cae11606ca8e522d2f99fb0558c55545cdaedb3ff7c55b4bb693ed3429e22566912f53c7795f73316bc45f1bfbdf5a53daec234dba87e1c141e2410f2 SHA512 9e0e919e34930d2283307cd6665c5287c664a76a5de56367bd975867ac26b376ae03d30cb3bc4a16390c977ca2690cfd2e90ac73dcc7886b8c999444da4a07e0 |
35 |
|
36 |
diff --git a/dev-python/pypam/files/PyPAM-0.5.0-dealloc.patch b/dev-python/pypam/files/PyPAM-0.5.0-dealloc.patch |
37 |
deleted file mode 100644 |
38 |
index 596491c46bcd..000000000000 |
39 |
--- a/dev-python/pypam/files/PyPAM-0.5.0-dealloc.patch |
40 |
+++ /dev/null |
41 |
@@ -1,17 +0,0 @@ |
42 |
-diff -up a/PAMmodule.c b/PAMmodule.c |
43 |
---- a/PAMmodule.c |
44 |
-+++ b/PAMmodule.c |
45 |
-@@ -538,10 +538,11 @@ static void PyPAM_dealloc(PyPAMObject *s |
46 |
- free(self->service); |
47 |
- free(self->user); |
48 |
- free(self->conv); |
49 |
-- pam_end(self->pamh, PAM_SUCCESS); |
50 |
-+ if (self->pamh) |
51 |
-+ pam_end(self->pamh, PAM_SUCCESS); |
52 |
- dlclose(self->dlh2); |
53 |
- dlclose(self->dlh1); |
54 |
-- PyMem_DEL(self); |
55 |
-+ PyObject_Del(self); |
56 |
- } |
57 |
- |
58 |
- static PyObject * PyPAM_getattr(PyPAMObject *self, char *name) |
59 |
|
60 |
diff --git a/dev-python/pypam/files/PyPAM-0.5.0-memory-errors.patch b/dev-python/pypam/files/PyPAM-0.5.0-memory-errors.patch |
61 |
deleted file mode 100644 |
62 |
index 6da3dd6eb7d6..000000000000 |
63 |
--- a/dev-python/pypam/files/PyPAM-0.5.0-memory-errors.patch |
64 |
+++ /dev/null |
65 |
@@ -1,128 +0,0 @@ |
66 |
-diff -up a/PAMmodule.c b/PAMmodule.c |
67 |
---- a/PAMmodule.c |
68 |
-+++ b/PAMmodule.c |
69 |
-@@ -37,33 +37,48 @@ static void PyPAM_Err(PyPAMObject *self, |
70 |
- |
71 |
- err_msg = pam_strerror(self->pamh, result); |
72 |
- error = Py_BuildValue("(si)", err_msg, result); |
73 |
-- Py_INCREF(PyPAM_Error); |
74 |
- PyErr_SetObject(PyPAM_Error, error); |
75 |
-+ Py_XDECREF(error); |
76 |
- } |
77 |
- |
78 |
- static int PyPAM_conv(int num_msg, const struct pam_message **msg, |
79 |
- struct pam_response **resp, void *appdata_ptr) |
80 |
- { |
81 |
-- PyObject *args; |
82 |
-- |
83 |
-+ PyObject *args, *msgList, *respList, *item; |
84 |
-+ struct pam_response *response, *spr; |
85 |
- PyPAMObject* self = (PyPAMObject *) appdata_ptr; |
86 |
-+ |
87 |
- if (self->callback == NULL) |
88 |
- return PAM_CONV_ERR; |
89 |
- |
90 |
- Py_INCREF(self); |
91 |
- |
92 |
-- PyObject* msgList = PyList_New(num_msg); |
93 |
-- |
94 |
-+ msgList = PyList_New(num_msg); |
95 |
-+ if (msgList == NULL) { |
96 |
-+ Py_DECREF(self); |
97 |
-+ return PAM_CONV_ERR; |
98 |
-+ } |
99 |
-+ |
100 |
- for (int i = 0; i < num_msg; i++) { |
101 |
-- PyList_SetItem(msgList, i, |
102 |
-- Py_BuildValue("(si)", msg[i]->msg, msg[i]->msg_style)); |
103 |
-+ item = Py_BuildValue("(si)", msg[i]->msg, msg[i]->msg_style); |
104 |
-+ if (item == NULL) { |
105 |
-+ Py_DECREF(msgList); |
106 |
-+ Py_DECREF(self); |
107 |
-+ return PAM_CONV_ERR; |
108 |
-+ } |
109 |
-+ PyList_SetItem(msgList, i, item); |
110 |
- } |
111 |
-- |
112 |
-+ |
113 |
- args = Py_BuildValue("(OO)", self, msgList); |
114 |
-- PyObject* respList = PyEval_CallObject(self->callback, args); |
115 |
-+ if (args == NULL) { |
116 |
-+ Py_DECREF(self); |
117 |
-+ Py_DECREF(msgList); |
118 |
-+ return PAM_CONV_ERR; |
119 |
-+ } |
120 |
-+ respList = PyEval_CallObject(self->callback, args); |
121 |
- Py_DECREF(args); |
122 |
- Py_DECREF(self); |
123 |
-- |
124 |
-+ |
125 |
- if (respList == NULL) |
126 |
- return PAM_CONV_ERR; |
127 |
- |
128 |
-@@ -71,11 +86,15 @@ static int PyPAM_conv(int num_msg, const |
129 |
- Py_DECREF(respList); |
130 |
- return PAM_CONV_ERR; |
131 |
- } |
132 |
-- |
133 |
-- *resp = (struct pam_response *) malloc( |
134 |
-+ |
135 |
-+ response = (struct pam_response *) malloc( |
136 |
- PyList_Size(respList) * sizeof(struct pam_response)); |
137 |
-+ if (response == NULL) { |
138 |
-+ Py_DECREF(respList); |
139 |
-+ return PAM_CONV_ERR; |
140 |
-+ } |
141 |
-+ spr = response; |
142 |
- |
143 |
-- struct pam_response* spr = *resp; |
144 |
- for (int i = 0; i < PyList_Size(respList); i++, spr++) { |
145 |
- PyObject* respTuple = PyList_GetItem(respList, i); |
146 |
- char* resp_text; |
147 |
-@@ -85,7 +104,7 @@ static int PyPAM_conv(int num_msg, const |
148 |
- free((--spr)->resp); |
149 |
- --i; |
150 |
- } |
151 |
-- free(*resp); |
152 |
-+ free(response); |
153 |
- Py_DECREF(respList); |
154 |
- return PAM_CONV_ERR; |
155 |
- } |
156 |
-@@ -95,7 +114,8 @@ static int PyPAM_conv(int num_msg, const |
157 |
- } |
158 |
- |
159 |
- Py_DECREF(respList); |
160 |
-- |
161 |
-+ *resp = response; |
162 |
-+ |
163 |
- return PAM_SUCCESS; |
164 |
- } |
165 |
- |
166 |
-@@ -122,7 +142,11 @@ static PyObject * PyPAM_pam(PyObject *se |
167 |
- PyPAMObject_Type.ob_type = &PyType_Type; |
168 |
- p = (PyPAMObject *) PyObject_NEW(PyPAMObject, &PyPAMObject_Type); |
169 |
- |
170 |
-+ if (p == NULL) |
171 |
-+ return NULL; |
172 |
-+ |
173 |
- if ((spc = (struct pam_conv *) malloc(sizeof(struct pam_conv))) == NULL) { |
174 |
-+ Py_DECREF((PyObject *)p); |
175 |
- PyErr_SetString(PyExc_MemoryError, "out of memory"); |
176 |
- return NULL; |
177 |
- } |
178 |
-@@ -455,9 +479,15 @@ static PyObject * PyPAM_getenvlist(PyObj |
179 |
- } |
180 |
- |
181 |
- retval = PyList_New(0); |
182 |
-+ if (retval == NULL) |
183 |
-+ return NULL; |
184 |
- |
185 |
- while ((cp = *(result++)) != NULL) { |
186 |
- entry = Py_BuildValue("s", cp); |
187 |
-+ if (entry == NULL) { |
188 |
-+ Py_DECREF(retval); |
189 |
-+ return NULL; |
190 |
-+ } |
191 |
- PyList_Append(retval, entry); |
192 |
- Py_DECREF(entry); |
193 |
- } |
194 |
|
195 |
diff --git a/dev-python/pypam/files/PyPAM-0.5.0-nofree.patch b/dev-python/pypam/files/PyPAM-0.5.0-nofree.patch |
196 |
deleted file mode 100644 |
197 |
index f27e9d543d06..000000000000 |
198 |
--- a/dev-python/pypam/files/PyPAM-0.5.0-nofree.patch |
199 |
+++ /dev/null |
200 |
@@ -1,60 +0,0 @@ |
201 |
-diff --git a/PAMmodule.c b/PAMmodule.c |
202 |
-index 03cb799..a7ff8a5 100644 |
203 |
---- a/PAMmodule.c |
204 |
-+++ b/PAMmodule.c |
205 |
-@@ -24,8 +24,6 @@ typedef struct { |
206 |
- char *service; |
207 |
- char *user; |
208 |
- PyObject *callback; |
209 |
-- struct pam_response *response_data; |
210 |
-- int response_len; |
211 |
- PyObject *user_data; |
212 |
- void *dlh1, *dlh2; |
213 |
- } PyPAMObject; |
214 |
-@@ -54,15 +52,6 @@ static int PyPAM_conv(int num_msg, const struct pam_message **msg, |
215 |
- |
216 |
- Py_INCREF(self); |
217 |
- |
218 |
-- if (NULL != self->response_data) { |
219 |
-- for (int i = 0; i < self->response_len; i++) { |
220 |
-- free(self->response_data[0].resp); |
221 |
-- } |
222 |
-- free(self->response_data); |
223 |
-- self->response_data = NULL; |
224 |
-- self->response_len = 0; |
225 |
-- } |
226 |
-- |
227 |
- PyObject* msgList = PyList_New(num_msg); |
228 |
- |
229 |
- for (int i = 0; i < num_msg; i++) { |
230 |
-@@ -92,6 +81,10 @@ static int PyPAM_conv(int num_msg, const struct pam_message **msg, |
231 |
- char* resp_text; |
232 |
- int resp_retcode = 0; |
233 |
- if (!PyArg_ParseTuple(respTuple, "si", &resp_text, &resp_retcode)) { |
234 |
-+ while (i > 0) { |
235 |
-+ free((--spr)->resp); |
236 |
-+ --i; |
237 |
-+ } |
238 |
- free(*resp); |
239 |
- Py_DECREF(respList); |
240 |
- return PAM_CONV_ERR; |
241 |
-@@ -100,10 +93,6 @@ static int PyPAM_conv(int num_msg, const struct pam_message **msg, |
242 |
- spr->resp_retcode = resp_retcode; |
243 |
- Py_DECREF(respTuple); |
244 |
- } |
245 |
-- |
246 |
-- // Save this so we can free it later. |
247 |
-- self->response_data = *resp; |
248 |
-- self->response_len = PyList_Size(respList); |
249 |
- |
250 |
- Py_DECREF(respList); |
251 |
- |
252 |
-@@ -144,8 +133,6 @@ static PyObject * PyPAM_pam(PyObject *self, PyObject *args) |
253 |
- p->user = NULL; |
254 |
- Py_INCREF(Py_None); |
255 |
- p->callback = Py_None; |
256 |
-- p->response_data = NULL; |
257 |
-- p->response_len = 0; |
258 |
- Py_INCREF(Py_None); |
259 |
- p->user_data = Py_None; |
260 |
- |
261 |
|
262 |
diff --git a/dev-python/pypam/files/PyPAM-0.5.0-return-value.patch b/dev-python/pypam/files/PyPAM-0.5.0-return-value.patch |
263 |
deleted file mode 100644 |
264 |
index 3773d6fafd20..000000000000 |
265 |
--- a/dev-python/pypam/files/PyPAM-0.5.0-return-value.patch |
266 |
+++ /dev/null |
267 |
@@ -1,57 +0,0 @@ |
268 |
-diff -up a/PAMmodule.c b/PAMmodule.c |
269 |
---- a/PAMmodule.c |
270 |
-+++ b/PAMmodule.c |
271 |
-@@ -248,7 +248,7 @@ static PyObject * PyPAM_setcred(PyObject |
272 |
- result = pam_setcred(_self->pamh, flags); |
273 |
- |
274 |
- if (result != PAM_SUCCESS) { |
275 |
-- PyErr_SetString(PyPAM_Error, "Not authenticated"); |
276 |
-+ PyPAM_Err(_self, result); |
277 |
- return NULL; |
278 |
- } |
279 |
- |
280 |
-@@ -270,7 +270,7 @@ static PyObject * PyPAM_acct_mgmt(PyObje |
281 |
- result = pam_acct_mgmt(_self->pamh, flags); |
282 |
- |
283 |
- if (result != PAM_SUCCESS) { |
284 |
-- PyErr_SetString(PyPAM_Error, "Not authenticated"); |
285 |
-+ PyPAM_Err(_self, result); |
286 |
- return NULL; |
287 |
- } |
288 |
- |
289 |
-@@ -292,7 +292,7 @@ static PyObject * PyPAM_chauthtok(PyObje |
290 |
- result = pam_chauthtok(_self->pamh, flags); |
291 |
- |
292 |
- if (result != PAM_SUCCESS) { |
293 |
-- PyErr_SetString(PyPAM_Error, "Not authenticated"); |
294 |
-+ PyPAM_Err(_self, result); |
295 |
- return NULL; |
296 |
- } |
297 |
- |
298 |
-@@ -314,7 +314,7 @@ static PyObject * PyPAM_open_session(PyO |
299 |
- result = pam_open_session(_self->pamh, flags); |
300 |
- |
301 |
- if (result != PAM_SUCCESS) { |
302 |
-- PyErr_SetString(PyPAM_Error, "Not authenticated"); |
303 |
-+ PyPAM_Err(_self, result); |
304 |
- return NULL; |
305 |
- } |
306 |
- |
307 |
-@@ -336,7 +336,7 @@ static PyObject * PyPAM_close_session(Py |
308 |
- result = pam_close_session(_self->pamh, flags); |
309 |
- |
310 |
- if (result != PAM_SUCCESS) { |
311 |
-- PyErr_SetString(PyPAM_Error, "Not authenticated"); |
312 |
-+ PyPAM_Err(_self, result); |
313 |
- return NULL; |
314 |
- } |
315 |
- |
316 |
-@@ -433,7 +433,7 @@ static PyObject * PyPAM_putenv(PyObject |
317 |
- result = pam_putenv(_self->pamh, val); |
318 |
- |
319 |
- if (result != PAM_SUCCESS) { |
320 |
-- PyErr_SetString(PyPAM_Error, "Not authenticated"); |
321 |
-+ PyPAM_Err(_self, result); |
322 |
- return NULL; |
323 |
- } |
324 |
- |
325 |
|
326 |
diff --git a/dev-python/pypam/files/PyPAM-python3-support.patch b/dev-python/pypam/files/PyPAM-python3-support.patch |
327 |
deleted file mode 100644 |
328 |
index a4100953631f..000000000000 |
329 |
--- a/dev-python/pypam/files/PyPAM-python3-support.patch |
330 |
+++ /dev/null |
331 |
@@ -1,198 +0,0 @@ |
332 |
---- a/PAMmodule.c |
333 |
-+++ b(PAMmodule.c |
334 |
-@@ -15,6 +15,14 @@ |
335 |
- #include <stdio.h> |
336 |
- #include <dlfcn.h> |
337 |
- |
338 |
-+#if PY_MAJOR_VERSION >= 3 |
339 |
-+#define IS_PY3K |
340 |
-+#else |
341 |
-+// include bytesobject.h to map PyBytes_* to PyString_* |
342 |
-+#include <bytesobject.h> |
343 |
-+#endif |
344 |
-+ |
345 |
-+ |
346 |
- static PyObject *PyPAM_Error; |
347 |
- |
348 |
- typedef struct { |
349 |
-@@ -28,7 +36,11 @@ |
350 |
- void *dlh1, *dlh2; |
351 |
- } PyPAMObject; |
352 |
- |
353 |
-+#ifdef IS_PY3K |
354 |
-+static PyTypeObject PyPAMObject_Type; |
355 |
-+#else |
356 |
- staticforward PyTypeObject PyPAMObject_Type; |
357 |
-+#endif |
358 |
- |
359 |
- static void PyPAM_Err(PyPAMObject *self, int result) |
360 |
- { |
361 |
-@@ -139,7 +151,6 @@ |
362 |
- return NULL; |
363 |
- } |
364 |
- |
365 |
-- PyPAMObject_Type.ob_type = &PyType_Type; |
366 |
- p = (PyPAMObject *) PyObject_NEW(PyPAMObject, &PyPAMObject_Type); |
367 |
- |
368 |
- if (p == NULL) |
369 |
-@@ -562,35 +573,44 @@ |
370 |
- PyObject_Del(self); |
371 |
- } |
372 |
- |
373 |
--static PyObject * PyPAM_getattr(PyPAMObject *self, char *name) |
374 |
--{ |
375 |
-- return Py_FindMethod(PyPAMObject_Methods, (PyObject *) self, name); |
376 |
--} |
377 |
-- |
378 |
- static PyObject * PyPAM_repr(PyPAMObject *self) |
379 |
- { |
380 |
- char buf[1024]; |
381 |
- |
382 |
- snprintf(buf, 1024, "<pam object, service=\"%s\", user=\"%s\", conv=%p, pamh=%p>", |
383 |
- self->service, self->user, self->conv, self->pamh); |
384 |
-- return PyString_FromString(buf); |
385 |
-+ return PyBytes_FromString(buf); |
386 |
- } |
387 |
- |
388 |
- static PyTypeObject PyPAMObject_Type = { |
389 |
-- PyObject_HEAD_INIT(0) /* Must fill in type value later */ |
390 |
-- 0, |
391 |
-- "pam", |
392 |
-- sizeof(PyPAMObject), |
393 |
-- 0, |
394 |
-- (destructor)PyPAM_dealloc, /*tp_dealloc*/ |
395 |
-- 0, /*tp_print*/ |
396 |
-- (getattrfunc)PyPAM_getattr, /*tp_getattr*/ |
397 |
-- 0, /*tp_setattr*/ |
398 |
-- 0, /*tp_compare*/ |
399 |
-- (reprfunc)PyPAM_repr, /*tp_repr*/ |
400 |
-- 0, /*tp_as_number*/ |
401 |
-- 0, /*tp_as_sequence*/ |
402 |
-- 0, /*tp_as_mapping*/ |
403 |
-+ PyVarObject_HEAD_INIT(NULL, 0) /* Must fill in type value later */ |
404 |
-+ "pam", /* tp_name */ |
405 |
-+ sizeof(PyPAMObject), /* tp_basicsize */ |
406 |
-+ 0, /* tp_itemsize */ |
407 |
-+ (destructor)PyPAM_dealloc, /* tp_dealloc */ |
408 |
-+ 0, /* tp_print */ |
409 |
-+ 0, /* tp_getattr */ |
410 |
-+ 0, /* tp_setattr */ |
411 |
-+ 0, /* tp_compare */ |
412 |
-+ (reprfunc)PyPAM_repr, /* tp_repr */ |
413 |
-+ 0, /* tp_as_number */ |
414 |
-+ 0, /* tp_as_sequence */ |
415 |
-+ 0, /* tp_as_mapping */ |
416 |
-+ 0, /* tp_hash */ |
417 |
-+ 0, /* tp_call */ |
418 |
-+ 0, /* tp_str */ |
419 |
-+ PyObject_GenericGetAttr, /* tp_getattro */ |
420 |
-+ 0, /* tp_setattro */ |
421 |
-+ 0, /* tp_as_buffer */ |
422 |
-+ Py_TPFLAGS_DEFAULT, /* tp_flags */ |
423 |
-+ "PyPAM", /* tp_doc */ |
424 |
-+ 0, /* tp_traverse */ |
425 |
-+ 0, /* tp_clear */ |
426 |
-+ 0, /* tp_richcompare */ |
427 |
-+ 0, /* tp_weaklistoffset */ |
428 |
-+ 0, /* tp_iter */ |
429 |
-+ 0, /* tp_iternext */ |
430 |
-+ PyPAMObject_Methods, /* tp_methods */ |
431 |
- }; |
432 |
- |
433 |
- static PyMethodDef PyPAM_Methods[] = { |
434 |
-@@ -607,7 +627,12 @@ |
435 |
- */ |
436 |
- static void insint(PyObject *d, char *name, int value) |
437 |
- { |
438 |
-- PyObject* v = PyInt_FromLong((long) value); |
439 |
-+ PyObject* v; |
440 |
-+#ifdef IS_PY3K |
441 |
-+ v = PyLong_FromLong((long) value); |
442 |
-+#else |
443 |
-+ v = PyInt_FromLong((long) value); |
444 |
-+#endif |
445 |
- |
446 |
- if (!v || PyDict_SetItemString(d, name, v)) |
447 |
- PyErr_Clear(); |
448 |
-@@ -615,19 +640,42 @@ |
449 |
- Py_XDECREF(v); |
450 |
- } |
451 |
- |
452 |
-+#ifdef IS_PY3K |
453 |
-+static struct PyModuleDef pamdef = { |
454 |
-+ PyModuleDef_HEAD_INIT, |
455 |
-+ "PAM", |
456 |
-+ NULL, |
457 |
-+ -1, |
458 |
-+ PyPAM_Methods, |
459 |
-+ NULL, |
460 |
-+ NULL, |
461 |
-+ NULL, |
462 |
-+ NULL |
463 |
-+}; |
464 |
-+ |
465 |
-+#define INITERROR return NULL |
466 |
-+PyObject *PyInit_PAM(void) |
467 |
-+ |
468 |
-+#else |
469 |
-+#define INITERROR return |
470 |
- void initPAM(void) |
471 |
-+#endif |
472 |
- { |
473 |
- PyObject *m, *d; |
474 |
- |
475 |
-+#ifdef IS_PY3K |
476 |
-+ m = PyModule_Create(&pamdef); |
477 |
-+#else |
478 |
- m = Py_InitModule("PAM", PyPAM_Methods); |
479 |
-+#endif |
480 |
- d = PyModule_GetDict(m); |
481 |
- |
482 |
- PyPAM_Error = PyErr_NewException("PAM.error", NULL, NULL); |
483 |
- if (PyPAM_Error == NULL) |
484 |
-- return; |
485 |
-+ INITERROR; |
486 |
- PyDict_SetItemString(d, "error", PyPAM_Error); |
487 |
- |
488 |
-- PyPAMObject_Type.ob_type = &PyType_Type; |
489 |
-+ Py_TYPE(&PyPAMObject_Type) = &PyType_Type; |
490 |
- PyPAMObject_Type.tp_doc = PyPAMObject_doc; |
491 |
- Py_INCREF(&PyPAMObject_Type); |
492 |
- |
493 |
-@@ -692,4 +740,7 @@ |
494 |
- insint(d, "PAM_BINARY_PROMPT", PAM_BINARY_PROMPT); |
495 |
- #endif |
496 |
- |
497 |
-+#ifdef IS_PY3K |
498 |
-+ return m; |
499 |
-+#endif |
500 |
- } |
501 |
---- a/setup.py |
502 |
-+++ b/setup.py |
503 |
-@@ -12,7 +12,7 @@ |
504 |
- license='LGPL', |
505 |
- ext_modules=[ |
506 |
- Extension( |
507 |
-- 'PAMmodule', |
508 |
-+ 'PAM', |
509 |
- ['PAMmodule.c'], |
510 |
- libraries=['pam', 'pam_misc'], |
511 |
- extra_compile_args = ['-std=c99'], |
512 |
---- a/tests/PamTest.py |
513 |
-+++ b/tests/PamTest.py |
514 |
-@@ -41,13 +41,13 @@ |
515 |
- def test_userdata_default(self): |
516 |
- """The default value for userdata is None.""" |
517 |
- |
518 |
-- self.failUnless(self.pam.get_userdata() is None) |
519 |
-+ self.assertTrue(self.pam.get_userdata() is None) |
520 |
- |
521 |
- def test_userdata(self): |
522 |
- """The userdata getter and setter will store and return any data.""" |
523 |
- |
524 |
- self.pam.set_userdata(1) |
525 |
-- self.failUnless(self.pam.get_userdata() == 1) |
526 |
-+ self.assertTrue(self.pam.get_userdata() == 1) |
527 |
- |
528 |
- def test_start(self): |
529 |
- """pam.start() works as expected.""" |
530 |
|
531 |
diff --git a/dev-python/pypam/files/pypam-0.5.0-stricter.patch b/dev-python/pypam/files/pypam-0.5.0-stricter.patch |
532 |
deleted file mode 100644 |
533 |
index 2ebe2d0af953..000000000000 |
534 |
--- a/dev-python/pypam/files/pypam-0.5.0-stricter.patch |
535 |
+++ /dev/null |
536 |
@@ -1,15 +0,0 @@ |
537 |
-=== modified file 'PAMmodule.c' |
538 |
---- a/PAMmodule.c |
539 |
-+++ b/PAMmodule.c |
540 |
-@@ -9,8 +9,9 @@ |
541 |
- |
542 |
-+#include <Python.h> |
543 |
- #include <security/pam_appl.h> |
544 |
- #include <security/pam_misc.h> |
545 |
--#include <Python.h> |
546 |
- #include <stdio.h> |
547 |
-+#include <string.h> |
548 |
- #include <dlfcn.h> |
549 |
- |
550 |
- static PyObject *PyPAM_Error; |
551 |
- |
552 |
|
553 |
diff --git a/dev-python/pypam/metadata.xml b/dev-python/pypam/metadata.xml |
554 |
deleted file mode 100644 |
555 |
index dde3e0dc4ca9..000000000000 |
556 |
--- a/dev-python/pypam/metadata.xml |
557 |
+++ /dev/null |
558 |
@@ -1,5 +0,0 @@ |
559 |
-<?xml version="1.0" encoding="UTF-8"?> |
560 |
-<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> |
561 |
-<pkgmetadata> |
562 |
- <!--maintainer-needed--> |
563 |
-</pkgmetadata> |
564 |
|
565 |
diff --git a/dev-python/pypam/pypam-0.5.0-r6.ebuild b/dev-python/pypam/pypam-0.5.0-r6.ebuild |
566 |
deleted file mode 100644 |
567 |
index aebb5e349358..000000000000 |
568 |
--- a/dev-python/pypam/pypam-0.5.0-r6.ebuild |
569 |
+++ /dev/null |
570 |
@@ -1,45 +0,0 @@ |
571 |
-# Copyright 1999-2021 Gentoo Authors |
572 |
-# Distributed under the terms of the GNU General Public License v2 |
573 |
- |
574 |
-EAPI=7 |
575 |
- |
576 |
-DISTUTILS_USE_SETUPTOOLS=no |
577 |
-MY_P="PyPAM-${PV}" |
578 |
-PYTHON_COMPAT=( python3_{7..9} ) |
579 |
-inherit distutils-r1 flag-o-matic |
580 |
- |
581 |
-DESCRIPTION="Python Bindings for PAM (Pluggable Authentication Modules)" |
582 |
-HOMEPAGE="http://www.pangalactic.org/PyPAM" |
583 |
-SRC_URI="http://www.pangalactic.org/PyPAM/${MY_P}.tar.gz |
584 |
- https://distfiles.gentoo.org/distfiles/ad/PyPAM-0.5.0.tar.gz" |
585 |
-S="${WORKDIR}/${MY_P}" |
586 |
- |
587 |
-LICENSE="LGPL-2.1" |
588 |
-SLOT="0" |
589 |
-KEYWORDS="amd64 ~arm ~arm64 ~riscv x86" |
590 |
-IUSE="" |
591 |
- |
592 |
-DEPEND=">=sys-libs/pam-0.64" |
593 |
-RDEPEND="${DEPEND}" |
594 |
- |
595 |
-DOCS=( AUTHORS examples/pamtest.py ) |
596 |
- |
597 |
-PATCHES=( |
598 |
- # Pull patches from fedora. |
599 |
- "${FILESDIR}/PyPAM-${PV}-dealloc.patch" |
600 |
- "${FILESDIR}/PyPAM-${PV}-nofree.patch" |
601 |
- "${FILESDIR}/PyPAM-${PV}-memory-errors.patch" |
602 |
- "${FILESDIR}/PyPAM-${PV}-return-value.patch" |
603 |
- "${FILESDIR}/PyPAM-python3-support.patch" |
604 |
- # Fix a missing include. |
605 |
- "${FILESDIR}/${P}-stricter.patch" |
606 |
-) |
607 |
- |
608 |
-src_compile() { |
609 |
- append-cflags -fno-strict-aliasing |
610 |
- distutils-r1_src_compile |
611 |
-} |
612 |
- |
613 |
-python_test() { |
614 |
- "${PYTHON}" tests/PamTest.py |
615 |
-} |
616 |
|
617 |
diff --git a/dev-python/pypam/pypam-0.5.0-r7.ebuild b/dev-python/pypam/pypam-0.5.0-r7.ebuild |
618 |
deleted file mode 100644 |
619 |
index a7a3593a67d9..000000000000 |
620 |
--- a/dev-python/pypam/pypam-0.5.0-r7.ebuild |
621 |
+++ /dev/null |
622 |
@@ -1,45 +0,0 @@ |
623 |
-# Copyright 1999-2021 Gentoo Authors |
624 |
-# Distributed under the terms of the GNU General Public License v2 |
625 |
- |
626 |
-EAPI=8 |
627 |
- |
628 |
-DISTUTILS_USE_SETUPTOOLS=no |
629 |
-MY_P="PyPAM-${PV}" |
630 |
-PYTHON_COMPAT=( python3_{7..10} ) |
631 |
-inherit distutils-r1 flag-o-matic |
632 |
- |
633 |
-DESCRIPTION="Python Bindings for PAM (Pluggable Authentication Modules)" |
634 |
-HOMEPAGE="http://www.pangalactic.org/PyPAM" |
635 |
-SRC_URI="http://www.pangalactic.org/PyPAM/${MY_P}.tar.gz |
636 |
- https://distfiles.gentoo.org/distfiles/ad/PyPAM-0.5.0.tar.gz" |
637 |
-S="${WORKDIR}/${MY_P}" |
638 |
- |
639 |
-LICENSE="LGPL-2.1" |
640 |
-SLOT="0" |
641 |
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" |
642 |
-IUSE="" |
643 |
- |
644 |
-DEPEND=">=sys-libs/pam-0.64" |
645 |
-RDEPEND="${DEPEND}" |
646 |
- |
647 |
-DOCS=( AUTHORS examples/pamtest.py ) |
648 |
- |
649 |
-PATCHES=( |
650 |
- # Pull patches from fedora. |
651 |
- "${FILESDIR}/PyPAM-${PV}-dealloc.patch" |
652 |
- "${FILESDIR}/PyPAM-${PV}-nofree.patch" |
653 |
- "${FILESDIR}/PyPAM-${PV}-memory-errors.patch" |
654 |
- "${FILESDIR}/PyPAM-${PV}-return-value.patch" |
655 |
- "${FILESDIR}/PyPAM-python3-support.patch" |
656 |
- # Fix a missing include. |
657 |
- "${FILESDIR}/${P}-stricter.patch" |
658 |
-) |
659 |
- |
660 |
-src_compile() { |
661 |
- append-cflags -fno-strict-aliasing |
662 |
- distutils-r1_src_compile |
663 |
-} |
664 |
- |
665 |
-python_test() { |
666 |
- "${PYTHON}" tests/PamTest.py || die |
667 |
-} |
668 |
|
669 |
diff --git a/dev-python/pypam/pypam-0.5.0-r8.ebuild b/dev-python/pypam/pypam-0.5.0-r8.ebuild |
670 |
deleted file mode 100644 |
671 |
index 9d2b524b2b96..000000000000 |
672 |
--- a/dev-python/pypam/pypam-0.5.0-r8.ebuild |
673 |
+++ /dev/null |
674 |
@@ -1,40 +0,0 @@ |
675 |
-# Copyright 1999-2022 Gentoo Authors |
676 |
-# Distributed under the terms of the GNU General Public License v2 |
677 |
- |
678 |
-EAPI=8 |
679 |
- |
680 |
-DISTUTILS_USE_PEP517=setuptools |
681 |
-MY_P="PyPAM-${PV}" |
682 |
-PYTHON_COMPAT=( python3_{8..10} ) |
683 |
-inherit distutils-r1 |
684 |
- |
685 |
-DESCRIPTION="Python Bindings for PAM (Pluggable Authentication Modules)" |
686 |
-HOMEPAGE="http://www.pangalactic.org/PyPAM" |
687 |
-SRC_URI="http://www.pangalactic.org/PyPAM/${MY_P}.tar.gz |
688 |
- https://distfiles.gentoo.org/distfiles/ad/PyPAM-0.5.0.tar.gz" |
689 |
-S="${WORKDIR}/${MY_P}" |
690 |
- |
691 |
-LICENSE="LGPL-2.1" |
692 |
-SLOT="0" |
693 |
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" |
694 |
-IUSE="" |
695 |
- |
696 |
-DEPEND=">=sys-libs/pam-0.64" |
697 |
-RDEPEND="${DEPEND}" |
698 |
- |
699 |
-DOCS=( AUTHORS examples/pamtest.py ) |
700 |
- |
701 |
-PATCHES=( |
702 |
- # Pull patches from fedora. |
703 |
- "${FILESDIR}/PyPAM-${PV}-dealloc.patch" |
704 |
- "${FILESDIR}/PyPAM-${PV}-nofree.patch" |
705 |
- "${FILESDIR}/PyPAM-${PV}-memory-errors.patch" |
706 |
- "${FILESDIR}/PyPAM-${PV}-return-value.patch" |
707 |
- "${FILESDIR}/PyPAM-python3-support.patch" |
708 |
- # Fix a missing include. |
709 |
- "${FILESDIR}/${P}-stricter.patch" |
710 |
-) |
711 |
- |
712 |
-python_test() { |
713 |
- "${EPYTHON}" tests/PamTest.py || die |
714 |
-} |
715 |
|
716 |
diff --git a/profiles/package.mask b/profiles/package.mask |
717 |
index 4c5d63309305..2c7144a2824f 100644 |
718 |
--- a/profiles/package.mask |
719 |
+++ b/profiles/package.mask |
720 |
@@ -292,12 +292,6 @@ dev-ruby/regexp_parser:1 |
721 |
# The lowest supported version of GCC is GCC 10. |
722 |
<sys-devel/gcc-10 |
723 |
|
724 |
-# Sam James <sam@g.o> (2022-05-28) |
725 |
-# Masked for removal. Dead upstream, no releases in a long time, and superseded |
726 |
-# by dev-python/python-pam. Fails tests in a few scary ways too. Removal |
727 |
-# on 2022-06-28. Bugs #833297, #802927. |
728 |
-dev-python/pypam |
729 |
- |
730 |
# Hans de Graaff <graaff@g.o> (2022-05-20) |
731 |
# Unused slots of cucumber components that are no longer or were never |
732 |
# used by current cucumber versions. Masked for removal in 30 days. |