-cdef extern from 'mLib/crc32.h':
- ctypedef int uint32
- uint32 c_crc32 "crc32" (uint32 a, void *p, int sz)
-
-cdef extern from 'limits.h':
- enum:
- LONG_MAX
-
-cdef extern from 'Python.h':
- int PyObject_AsReadBuffer(obj, void **buf, int *len) except -1
- PyInt_FromLong(long i)
- PyLong_FromUnsignedLong(unsigned long i)
-
-cdef _u32(uint32 x):
- if x < LONG_MAX:
- return PyInt_FromLong(x)
- else:
- return PyLong_FromUnsignedLong(x)
-