[SSSD] [PATCH] [sssd-1.11] pysss_nss_idmap: Use wrapper for older python

Lukas Slebodnik lslebodn at redhat.com
Tue Jun 16 21:40:21 UTC 2015


ehlo,

we dropped support for old version of python (<2.6)
in recent version of sssd. It should work in 1.11 branch
but there was a small issue in pysss_nss_idmap bindings.

Attached is a simple patch wich reuse our internal python wrappers.

LS
-------------- next part --------------
>From 99cf9b85962d5f71003b00e1fdca1bd20587f147 Mon Sep 17 00:00:00 2001
From: Lukas Slebodnik <lslebodn at redhat.com>
Date: Sat, 23 May 2015 21:46:45 +0200
Subject: [PATCH 19/24] pysss_nss_idmap: Use wrapper for older python

PyUnicode_FromString -> sss_python_unicode_from_string
---
 Makefile.am                  | 3 ++-
 src/python/pysss_nss_idmap.c | 6 +++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index 9d972f901420037914b949358c66f167333889ba..3f0f0c00d1d913e1dcb1f3875aa109d2694b60df 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -2181,7 +2181,8 @@ pysss_murmur_la_LDFLAGS = \
     -module
 
 pysss_nss_idmap_la_SOURCES = \
-    src/python/pysss_nss_idmap.c
+    src/python/pysss_nss_idmap.c \
+    src/util/sss_python.c
 pysss_nss_idmap_la_CFLAGS = \
     $(AM_CFLAGS)  \
     $(PYTHON_CFLAGS)
diff --git a/src/python/pysss_nss_idmap.c b/src/python/pysss_nss_idmap.c
index 0870b0da614e127c925572a8fc444cee1c6cf441..ad4b4a3f736f5512b7f0f9e5fc8afbcde1d5c5df 100644
--- a/src/python/pysss_nss_idmap.c
+++ b/src/python/pysss_nss_idmap.c
@@ -95,7 +95,7 @@ static int do_getsidbyname(PyObject *py_result, PyObject *py_name)
     ret = sss_nss_getsidbyname(name, &sid, &id_type);
     if (ret == 0) {
         ret = add_dict(py_result, py_name, PyString_FromString(SSS_SID_KEY),
-                       PyUnicode_FromString(sid), PyInt_FromLong(id_type));
+                       sss_python_unicode_from_string(sid), PyInt_FromLong(id_type));
     }
     free(sid);
 
@@ -117,7 +117,7 @@ static int do_getnamebysid(PyObject *py_result, PyObject *py_sid)
     ret = sss_nss_getnamebysid(sid, &name, &id_type);
     if (ret == 0) {
         ret = add_dict(py_result, py_sid, PyString_FromString(SSS_NAME_KEY),
-                       PyUnicode_FromString(name), PyInt_FromLong(id_type));
+                       sss_python_unicode_from_string(name), PyInt_FromLong(id_type));
     }
     free(name);
 
@@ -156,7 +156,7 @@ static int do_getsidbyid(PyObject *py_result, PyObject *py_id)
     ret = sss_nss_getsidbyid((uint32_t) id, &sid, &id_type);
     if (ret == 0) {
         ret = add_dict(py_result, py_id, PyString_FromString(SSS_SID_KEY),
-                       PyUnicode_FromString(sid), PyInt_FromLong(id_type));
+                       sss_python_unicode_from_string(sid), PyInt_FromLong(id_type));
     }
     free(sid);
 
-- 
2.4.3



More information about the sssd-devel mailing list