summaryrefslogtreecommitdiff
path: root/usr/src/lib/pysolaris/common/misc.c
diff options
context:
space:
mode:
authorAndy Fiddaman <omnios@citrus-it.co.uk>2018-10-13 21:12:19 +0000
committerDan McDonald <danmcd@joyent.com>2018-10-24 15:27:58 -0400
commite8921a52c53ee69f7b65f054d9b2e886139daa59 (patch)
tree47ff09b2c3cf4a36bb54f09c2f24debb5f5f513a /usr/src/lib/pysolaris/common/misc.c
parente24b44e5c3120c9b5c8e9b7440bc10c8b7413bfb (diff)
downloadillumos-gate-e8921a52c53ee69f7b65f054d9b2e886139daa59.tar.gz
9894 Deliver python3 modules
9904 Split python modules out into separate packages 5571 Provide 64-bit python modules Reviewed by: Alexander Pyhalov <apyhalov@gmail.com> Reviewed by: Toomas Soome <tsoome@me.com> Approved by: Dan McDonald <danmcd@joyent.com>
Diffstat (limited to 'usr/src/lib/pysolaris/common/misc.c')
-rw-r--r--usr/src/lib/pysolaris/common/misc.c36
1 files changed, 33 insertions, 3 deletions
diff --git a/usr/src/lib/pysolaris/common/misc.c b/usr/src/lib/pysolaris/common/misc.c
index 13280d461f..211ab1b983 100644
--- a/usr/src/lib/pysolaris/common/misc.c
+++ b/usr/src/lib/pysolaris/common/misc.c
@@ -21,6 +21,7 @@
/*
* Copyright 2010 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
+ * Copyright 2018 OmniOS Community Edition (OmniOSce) Association.
*/
#include <Python.h>
@@ -85,7 +86,7 @@ py_sid_to_name(PyObject *self, PyObject *args)
return (NULL);
}
- ret = PyString_FromString(name);
+ ret = PyUnicode_FromString(name);
free(name);
return (ret);
}
@@ -121,8 +122,37 @@ static PyMethodDef solarismethods[] = {
{NULL, NULL, 0, NULL}
};
-void
+#if PY_MAJOR_VERSION >= 3
+static struct PyModuleDef solaris_module = {
+ PyModuleDef_HEAD_INIT,
+ "solaris.misc",
+ NULL,
+ -1,
+ solarismethods
+};
+#endif
+
+static PyObject *
+moduleinit()
+{
+#if PY_MAJOR_VERSION >= 3
+ return (PyModule_Create(&solaris_module));
+#else
+ (void) Py_InitModule("solaris.misc", solarismethods);
+ return (NULL);
+#endif
+}
+
+#if PY_MAJOR_VERSION >= 3
+PyMODINIT_FUNC
+PyInit_misc(void)
+{
+ return (moduleinit());
+}
+#else
+PyMODINIT_FUNC
initmisc(void)
{
- PyObject *solaris_misc = Py_InitModule("solaris.misc", solarismethods);
+ (void) moduleinit();
}
+#endif