redis allows passwords up to 512 characters long
[collectd.git] / src / cpython.h
index b5a1754..4b8aa72 100644 (file)
  *   Sven Trenkel <collectd at semidefinite.de>  
  **/
 
+/* Some python versions don't include this by default. */
+
+#include <longintrepr.h>
+
 /* These two macros are basicly Py_BEGIN_ALLOW_THREADS and Py_BEGIN_ALLOW_THREADS
  * from the other direction. If a Python thread calls a C function
  * Py_BEGIN_ALLOW_THREADS is used to allow other python threads to run because
@@ -178,14 +182,16 @@ typedef struct {
        char type_instance[DATA_MAX_NAME_LEN];
 } PluginData;
 PyTypeObject PluginDataType;
+#define PluginData_New() PyObject_CallFunctionObjArgs((PyObject *) &PluginDataType, (void *) 0)
 
 typedef struct {
        PluginData data;
        PyObject *values;    /* Sequence */
        PyObject *meta;      /* dict */
-       int interval;
+       double interval;
 } Values;
 PyTypeObject ValuesType;
+#define Values_New() PyObject_CallFunctionObjArgs((PyObject *) &ValuesType, (void *) 0)
 
 typedef struct {
        PluginData data;
@@ -193,9 +199,11 @@ typedef struct {
        char message[NOTIF_MAX_MSG_LEN];
 } Notification;
 PyTypeObject NotificationType;
+#define Notification_New() PyObject_CallFunctionObjArgs((PyObject *) &NotificationType, (void *) 0)
 
 typedef PyLongObject Signed;
 PyTypeObject SignedType;
 
 typedef PyLongObject Unsigned;
 PyTypeObject UnsignedType;
+