summaryrefslogtreecommitdiff
path: root/systemd/pyutil.h
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2013-03-15 19:01:10 -0400
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2015-07-05 14:19:18 -0400
commitd583bb0f53df19ef889d1d2575ac4c7eaacb8795 (patch)
treec6148d95d0522bc188e9fc61d6f966b7a2d9953c /systemd/pyutil.h
parent961f238f8f449b0ecc2945264d26099afb60940b (diff)
downloadpython-systemd-d583bb0f53df19ef889d1d2575ac4c7eaacb8795.tar.gz
systemd-python: add systemd.daemon wrapping sd-daemon
Please see the documentation (e.g. pydoc3 systemd.daemon) for full description. As usual, systemd._daemon wraps the raw interface, while systemd.daemon provides the more pythonic API. sd_listen_fds, sd_booted, sd_is_fifo, sd_is_socket, sd_is_socket_unix, sd_is_socket_inet, sd_is_mq, and SD_LISTEN_FDS_START are currently wrapped.
Diffstat (limited to 'systemd/pyutil.h')
-rw-r--r--systemd/pyutil.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/systemd/pyutil.h b/systemd/pyutil.h
index 3b7bc58..2163fda 100644
--- a/systemd/pyutil.h
+++ b/systemd/pyutil.h
@@ -1,5 +1,7 @@
/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+#pragma once
+
/***
This file is part of systemd.
@@ -27,3 +29,20 @@
void cleanup_Py_DECREFp(PyObject **p);
#define _cleanup_Py_DECREF_ __attribute__((cleanup(cleanup_Py_DECREFp)))
+
+#if PY_MAJOR_VERSION >=3
+# define unicode_FromStringAndSize PyUnicode_FromStringAndSize
+# define unicode_FromString PyUnicode_FromString
+# define long_FromLong PyLong_FromLong
+# define long_FromSize_t PyLong_FromSize_t
+# define long_Check PyLong_Check
+# define long_AsLong PyLong_AsLong
+#else
+/* Python 3 type naming convention is used */
+# define unicode_FromStringAndSize PyString_FromStringAndSize
+# define unicode_FromString PyString_FromString
+# define long_FromLong PyInt_FromLong
+# define long_FromSize_t PyInt_FromSize_t
+# define long_Check PyInt_Check
+# define long_AsLong PyInt_AsLong
+#endif