From 38eb7f2fcf2a6848f97025ac4b968e3aa3d65815 Mon Sep 17 00:00:00 2001 From: wm4 Date: Sun, 14 Oct 2012 23:08:39 +0200 Subject: command: reduce some property boilerplate Reduces code needed for implementing string and int64_t read-only properties. Originally, there actually was a m_property_string_ro(), but it was removed, as that would have implicitly strdup'ed the string. But the new name m_property_strdup_ro() should make it quite clear what is happening. --- m_property.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'm_property.c') diff --git a/m_property.c b/m_property.c index c8cf4e3dcf..f97bb366a4 100644 --- a/m_property.c +++ b/m_property.c @@ -324,6 +324,16 @@ int m_property_int_ro(const m_option_t *prop, int action, return M_PROPERTY_NOT_IMPLEMENTED; } +int m_property_int64_ro(const struct m_option* prop, int action, void* arg, + int64_t var) +{ + if (action == M_PROPERTY_GET) { + *(int64_t *)arg = var; + return M_PROPERTY_OK; + } + return M_PROPERTY_NOT_IMPLEMENTED; +} + int m_property_float_ro(const m_option_t *prop, int action, void *arg, float var) { @@ -343,3 +353,13 @@ int m_property_double_ro(const m_option_t *prop, int action, } return M_PROPERTY_NOT_IMPLEMENTED; } + +int m_property_strdup_ro(const struct m_option* prop, int action, void* arg, + const char *var) +{ + if (action == M_PROPERTY_GET) { + *(char **)arg = talloc_strdup(NULL, var); + return M_PROPERTY_OK; + } + return M_PROPERTY_NOT_IMPLEMENTED; +} -- cgit v1.2.3