From 5d3be8ccba5fe48b09e2a4e816f21c39038adfd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Wed, 14 Dec 2016 23:43:28 -0500 Subject: _daemon,_reader: return ENOSYS instead of NotImplemented In _reader we were raising OSError(errno=ENOSYS), but in _dameon we were raising NotImplementedError. Let's always use ENOSYS. Also, make the messages in _reader more specific. Fixes #33. --- systemd/_daemon.c | 4 ++-- systemd/_reader.c | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/systemd/_daemon.c b/systemd/_daemon.c index a041b1b..87a33f0 100644 --- a/systemd/_daemon.c +++ b/systemd/_daemon.c @@ -145,14 +145,14 @@ static PyObject* notify(PyObject *self, PyObject *args, PyObject *keywds) { #ifdef HAVE_PID_NOTIFY r = sd_pid_notify(pid, unset, msg); #else - PyErr_SetString(PyExc_NotImplementedError, "Compiled without support for sd_pid_notify"); + set_error(-ENOSYS, NULL, "Compiled without support for sd_pid_notify"); return NULL; #endif } else { #ifdef HAVE_PID_NOTIFY_WITH_FDS r = sd_pid_notify_with_fds(pid, unset, msg, arr, n_fds); #else - PyErr_SetString(PyExc_NotImplementedError, "Compiled without support for sd_pid_notify_with_fds"); + set_error(-ENOSYS, NULL, "Compiled without support for sd_pid_notify_with_fds"); return NULL; #endif } diff --git a/systemd/_reader.c b/systemd/_reader.c index 3a2c218..5b7e191 100644 --- a/systemd/_reader.c +++ b/systemd/_reader.c @@ -1048,7 +1048,7 @@ static PyObject* Reader_enumerate_fields(Reader *self, PyObject *args) { _value_set = NULL; return value_set; #else - set_error(-ENOSYS, NULL, "Not implemented"); + set_error(-ENOSYS, NULL, "Compiled without support for sd_journal_enumerate_fields"); return NULL; #endif } @@ -1069,7 +1069,7 @@ static PyObject* Reader_has_runtime_files(Reader *self, PyObject *args) { return PyBool_FromLong(r); #else - set_error(-ENOSYS, NULL, "Not implemented"); + set_error(-ENOSYS, NULL, "Compiled without support for sd_journal_has_runtime_files"); return NULL; #endif } @@ -1090,7 +1090,7 @@ static PyObject* Reader_has_persistent_files(Reader *self, PyObject *args) { return PyBool_FromLong(r); #else - set_error(-ENOSYS, NULL, "Not implemented"); + set_error(-ENOSYS, NULL, "Compiled without support for sd_journal_has_persistent_files"); return NULL; #endif } -- cgit v1.2.1