X-Git-Url: https://git.distorted.org.uk/~mdw/mLib-python/blobdiff_plain/b170d65aecec439b1ca2dd52f60f47f547d365e3..ae68e889be24648e94d936e1aea614d2d1a0e7a8:/defs.pxi diff --git a/defs.pxi b/defs.pxi index 4b1ecde..f452b28 100644 --- a/defs.pxi +++ b/defs.pxi @@ -88,17 +88,20 @@ cdef extern from 'netdb.h': cdef extern from 'Python.h': + ctypedef struct PyObject: + pass + ctypedef struct PyTypeObject: + pass + object PyString_FromStringAndSize(char *p, int len) int PyString_AsStringAndSize(obj, char **p, int *len) except -1 int PyObject_AsReadBuffer(obj, void **buf, int *len) except -1 int PyObject_TypeCheck(obj, ty) object PyInt_FromLong(long i) object PyLong_FromUnsignedLong(unsigned long i) + char *PyString_AS_STRING(string) + int _PyString_Resize(PyObject **string, int size) except -1 - ctypedef struct PyObject: - pass - ctypedef struct PyTypeObject: - pass void Py_INCREF(PyObject *obj) void Py_DECREF(PyObject *obj) @@ -163,6 +166,9 @@ cdef extern from 'mLib/str.h': int str_matchx(char *p, char *s, unsigned f) void str_sanitize(char *d, char *p, size_t sz) +cdef extern from 'mLib/versioncmp.h': + int _versioncmp "versioncmp"(char *va, char *vb) + #----- Form-urlencoding functions ------------------------------------------- cdef extern from 'mLib/url.h': @@ -383,9 +389,37 @@ cdef extern from 'mLib/ident.h': cdef extern from 'mLib/quis.h': void _ego "ego"(char *prog) char *_quis "quis"() + cdef extern from 'mLib/report.h': void _moan "moan"(char *f, char *msg) +#----- File comparison ------------------------------------------------------ + +cdef extern from 'mLib/fwatch.h': + ctypedef struct fwatch: + pass + void fwatch_init(fwatch *f, char *name) + void fwatch_initfd(fwatch *f, int fd) + int fwatch_update(fwatch *f, char *name) + int fwatch_updatefd(fwatch *f, int fd) + +#----- File descriptor hacking ---------------------------------------------- + +cdef extern from 'mLib/fdflags.h': + int _fdflags "fdflags"(int fd, + unsigned fbic, unsigned fxor, + unsigned fdbic, unsigned fdxor) + +cdef extern from 'mLib/fdpass.h': + int fdpass_send(int sock, int fd, void *p, size_t sz) + int fdpass_recv(int sock, int *fd, void *p, size_t sz) + +#----- Daemon utilities ----------------------------------------------------- + +cdef extern from 'mLib/daemonize.h': + int _daemonize "daemonize"() + void _detachtty "detachtty"() + #----- Internal utilities --------------------------------------------------- cdef extern from 'grim.h':