Here's a patch I used to bring the python binding up to date. I'm not exactly sure what the problem was, but this patch seems to let me build a correctly-functioning extension module.
cheers, -Brian
--- rrdtool-1.2.15/bindings/python/rrdtoolmodule.c~ 2006-07-14 05:11:26.000000000 -0700 +++ rrdtool-1.2.15/bindings/python/rrdtoolmodule.c 2006-11-13 19:44:28.000000000 -0800 @@ -517,20 +517,19 @@ Py_DECREF(t); /* Initialization function for the module */ -void -/*initrrdtool(void)*/ -initrrdtoolmodule(void) +PyMODINIT_FUNC +initrrdtool(void) { PyObject *m, *d, *t; /* Create the module and add the functions */ - m = Py_InitModule("rrdtoolmodule", _rrdtool_methods); + m = Py_InitModule("rrdtool", _rrdtool_methods); /* Add some symbolic constants to the module */ d = PyModule_GetDict(m); SET_STRCONSTANT(d, __version__); - ErrorObject = PyErr_NewException("rrdtoolmodule.error", NULL, NULL); + ErrorObject = PyErr_NewException("rrdtool.error", NULL, NULL); PyDict_SetItemString(d, "error", ErrorObject); /* Check for errors */