mirror of
https://gitlab.com/libvirt/libvirt-python.git
synced 2025-08-02 04:21:59 +03:00
Fix unsigned long wraparound in python binding
This commit is contained in:
4
libvir.c
4
libvir.c
@ -261,8 +261,8 @@ libvirt_virDomainGetInfo(PyObject *self ATTRIBUTE_UNUSED, PyObject *args) {
|
|||||||
}
|
}
|
||||||
py_retval = PyList_New(5);
|
py_retval = PyList_New(5);
|
||||||
PyList_SetItem(py_retval, 0, libvirt_intWrap((int) info.state));
|
PyList_SetItem(py_retval, 0, libvirt_intWrap((int) info.state));
|
||||||
PyList_SetItem(py_retval, 1, libvirt_longWrap((long) info.maxMem));
|
PyList_SetItem(py_retval, 1, libvirt_ulongWrap(info.maxMem));
|
||||||
PyList_SetItem(py_retval, 2, libvirt_longWrap((long) info.memory));
|
PyList_SetItem(py_retval, 2, libvirt_ulongWrap(info.memory));
|
||||||
PyList_SetItem(py_retval, 3, libvirt_intWrap((int) info.nrVirtCpu));
|
PyList_SetItem(py_retval, 3, libvirt_intWrap((int) info.nrVirtCpu));
|
||||||
PyList_SetItem(py_retval, 4,
|
PyList_SetItem(py_retval, 4,
|
||||||
libvirt_longlongWrap((unsigned long long) info.cpuTime));
|
libvirt_longlongWrap((unsigned long long) info.cpuTime));
|
||||||
|
@ -41,6 +41,7 @@ typedef struct {
|
|||||||
|
|
||||||
PyObject * libvirt_intWrap(int val);
|
PyObject * libvirt_intWrap(int val);
|
||||||
PyObject * libvirt_longWrap(long val);
|
PyObject * libvirt_longWrap(long val);
|
||||||
|
PyObject * libvirt_ulongWrap(unsigned long val);
|
||||||
PyObject * libvirt_longlongWrap(long long val);
|
PyObject * libvirt_longlongWrap(long long val);
|
||||||
PyObject * libvirt_charPtrWrap(char *str);
|
PyObject * libvirt_charPtrWrap(char *str);
|
||||||
PyObject * libvirt_constcharPtrWrap(const char *str);
|
PyObject * libvirt_constcharPtrWrap(const char *str);
|
||||||
|
12
types.c
12
types.c
@ -33,6 +33,18 @@ libvirt_longWrap(long val)
|
|||||||
return (ret);
|
return (ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
PyObject *
|
||||||
|
libvirt_ulongWrap(unsigned long val)
|
||||||
|
{
|
||||||
|
PyObject *ret;
|
||||||
|
|
||||||
|
#ifdef DEBUG
|
||||||
|
printf("libvirt_ulongWrap: val = %lu\n", val);
|
||||||
|
#endif
|
||||||
|
ret = PyLong_FromLong(val);
|
||||||
|
return (ret);
|
||||||
|
}
|
||||||
|
|
||||||
PyObject *
|
PyObject *
|
||||||
libvirt_longlongWrap(long long val)
|
libvirt_longlongWrap(long long val)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user