Pyrex (at least nowadays) declares `PY_SSIZE_T_CLEAN', so make this be
likely to work. Also, use `socklen_t' as necessary.
14 files changed:
/*----- Header files ------------------------------------------------------*/
/*----- Header files ------------------------------------------------------*/
+#define PY_SSIZE_T_CLEAN
+
#include <Python.h>
#include <string.h>
#include <Python.h>
#include <string.h>
-static int da_pylength(PyObject *me)
+static Py_ssize_t da_pylength(PyObject *me)
{ return (DA_LEN(DA_V(me))); }
static int da_pytraverse(PyObject *me, visitproc proc, void *arg)
{ return (DA_LEN(DA_V(me))); }
static int da_pytraverse(PyObject *me, visitproc proc, void *arg)
-static PyObject *da_pyrepeat(PyObject *me, int times)
+static PyObject *da_pyrepeat(PyObject *me, Py_ssize_t times)
{
PyObject *x = da_new(&da_pytype);
PyObject **items = DA(DA_V(me)), **dest;
size_t n = DA_LEN(DA_V(me));
{
PyObject *x = da_new(&da_pytype);
PyObject **items = DA(DA_V(me)), **dest;
size_t n = DA_LEN(DA_V(me));
DA_ENSURE(DA_V(x), n * times);
DA_UNSAFE_EXTEND(DA_V(x), n * times);
DA_ENSURE(DA_V(x), n * times);
DA_UNSAFE_EXTEND(DA_V(x), n * times);
-static PyObject *da_pygetitem(PyObject *me, int i)
+static PyObject *da_pygetitem(PyObject *me, Py_ssize_t i)
-static PyObject *da_pygetslice(PyObject *me, int i, int j)
+static PyObject *da_pygetslice(PyObject *me, Py_ssize_t i, Py_ssize_t j)
-static int da_pyputitem(PyObject *me, int i, PyObject *x)
+static int da_pyputitem(PyObject *me, Py_ssize_t i, PyObject *x)
-static int da_pyputslice(PyObject *me, int i, int j, PyObject *x)
+static int da_pyputslice(PyObject *me, Py_ssize_t i, Py_ssize_t j,
+ PyObject *x)
{ return (da_insert(me, x, i, j)); }
static int da_pycontainsp(PyObject *me, PyObject *x)
{ return (da_insert(me, x, i, j)); }
static int da_pycontainsp(PyObject *me, PyObject *x)
dstr d = DSTR_INIT;
PyObject *s, *rc = 0;
char *p;
dstr d = DSTR_INIT;
PyObject *s, *rc = 0;
char *p;
size_t i;
dstr_puts(&d, "Array([");
size_t i;
dstr_puts(&d, "Array([");
-static PyObject *da_pyiprepeat(PyObject *me, int times)
+static PyObject *da_pyiprepeat(PyObject *me, Py_ssize_t times)
{
PyObject **items, **dest;
size_t n = DA_LEN(DA_V(me));
{
PyObject **items, **dest;
size_t n = DA_LEN(DA_V(me));
if (times < 0) {
PyErr_SetString(PyExc_ValueError, "multiplier must be nonnegative");
if (times < 0) {
PyErr_SetString(PyExc_ValueError, "multiplier must be nonnegative");
static PyObject *da_pyget(PyObject *me, PyObject *index)
{
if (PySlice_Check(index)) {
static PyObject *da_pyget(PyObject *me, PyObject *index)
{
if (PySlice_Check(index)) {
- int start, stop, step, len;
+ Py_ssize_t start, stop, step, len;
PyObject *v;
PyObject **ww;
PyObject **vv;
PyObject *v;
PyObject **ww;
PyObject **vv;
static int da_pyput(PyObject *me, PyObject *index, PyObject *x)
{
if (PySlice_Check(index)) {
static int da_pyput(PyObject *me, PyObject *index, PyObject *x)
{
if (PySlice_Check(index)) {
- int start, stop, step, len;
+ Py_ssize_t start, stop, step, len;
size_t n;
PyObject **ww;
PyObject **vv;
size_t n;
PyObject **ww;
PyObject **vv;
return 0
cdef void *_find(me, object key, unsigned *f) except NULL:
cdef void *p
return 0
cdef void *_find(me, object key, unsigned *f) except NULL:
cdef void *p
cdef _assoc_entry *e
cdef atom *a
a = ATOM_A(atom_pyintern(key))
cdef _assoc_entry *e
cdef atom *a
a = ATOM_A(atom_pyintern(key))
{
atom *a;
const void *p;
{
atom *a;
const void *p;
if (ATOM_PYCHECK(x))
RETURN_OBJ(x);
if (ATOM_PYCHECK(x))
RETURN_OBJ(x);
PyObject *s, *sr = 0;
PyObject *rc = 0;
char *p;
PyObject *s, *sr = 0;
PyObject *rc = 0;
char *p;
dstr d = DSTR_INIT;
if ((s = aget_name(me, 0)) == 0 ||
dstr d = DSTR_INIT;
if ((s = aget_name(me, 0)) == 0 ||
me.c.ops.destroy(me.c)
cdef code(me, text, int finishp):
cdef void *p
me.c.ops.destroy(me.c)
cdef code(me, text, int finishp):
cdef void *p
cdef dstr d
cdef int err
if me.c is NULL:
cdef dstr d
cdef int err
if me.c is NULL:
me.ctx.maxline = maxline
def encode(me, text):
cdef void *p
me.ctx.maxline = maxline
def encode(me, text):
cdef void *p
cdef dstr d
DCREATE(&d)
try:
cdef dstr d
DCREATE(&d)
try:
me.ctx.indent = NULL
def decode(me, text):
cdef void *p
me.ctx.indent = NULL
def decode(me, text):
cdef void *p
cdef dstr d
DCREATE(&d)
try:
cdef dstr d
DCREATE(&d)
try:
pass
def chunk(me, data):
cdef void *p
pass
def chunk(me, data):
cdef void *p
PyObject_AsReadBuffer(data, &p, &n)
me._a = c_crc32(me._a, p, n)
return me
PyObject_AsReadBuffer(data, &p, &n)
me._a = c_crc32(me._a, p, n)
return me
def crc32(data):
cdef void *p
def crc32(data):
cdef void *p
cdef uint32 c
PyObject_AsReadBuffer(data, &p, &n)
c = c_crc32(0, p, n)
cdef uint32 c
PyObject_AsReadBuffer(data, &p, &n)
c = c_crc32(0, p, n)
int tv_usec
cdef extern from 'sys/socket.h':
int tv_usec
cdef extern from 'sys/socket.h':
struct sockaddr:
int sa_family
enum:
struct sockaddr:
int sa_family
enum:
ctypedef struct PyTypeObject:
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
+ object PyString_FromStringAndSize(char *p, Py_ssize_t len)
+ int PyString_AsStringAndSize(obj, char **p, Py_ssize_t *len) except -1
+ int PyObject_AsReadBuffer(obj, void **buf, Py_ssize_t *len) except -1
int PyObject_TypeCheck(obj, ty)
object PyInt_FromLong(long i)
object PyLong_FromUnsignedLong(unsigned long i)
int PyObject_TypeCheck(obj, ty)
object PyInt_FromLong(long i)
object PyLong_FromUnsignedLong(unsigned long i)
def fdsend(sock, file, buffer):
cdef void *p
def fdsend(sock, file, buffer):
cdef void *p
cdef int rc
PyObject_AsReadBuffer(buffer, &p, &len)
rc = fdpass_send(_getfd(sock), _getfd(file), p, len)
cdef int rc
PyObject_AsReadBuffer(buffer, &p, &len)
rc = fdpass_send(_getfd(sock), _getfd(file), p, len)
def fdrecv(sock, unsigned size):
cdef void *p
cdef buf
def fdrecv(sock, unsigned size):
cdef void *p
cdef buf
cdef PyObject *obj
cdef int fd
buf = PyString_FromStringAndSize(NULL, size)
cdef PyObject *obj
cdef int fd
buf = PyString_FromStringAndSize(NULL, size)
badproc = None, errorproc = None, failedproc = None,
*hunoz, **hukairz):
cdef sockaddr_in s_in, s_out
badproc = None, errorproc = None, failedproc = None,
*hunoz, **hukairz):
cdef sockaddr_in s_in, s_out
- cdef size_t sz_in, sz_out
+ cdef socklen_t sz_in, sz_out
cdef int fd
if PyObject_TypeCheck(sk, socket.SocketType):
fd = sk.fileno()
cdef int fd
if PyObject_TypeCheck(sk, socket.SocketType):
fd = sk.fileno()
cdef char *p
return lbuf_free(&me.b, &p)
def flush(me, str):
cdef char *p
return lbuf_free(&me.b, &p)
def flush(me, str):
cdef char *p
cdef char *q
cdef size_t n
cdef char *p
cdef char *q
cdef size_t n
cdef unsigned char *p
return pkbuf_free(&me.pk, &p)
def flush(me, str):
cdef unsigned char *p
return pkbuf_free(&me.pk, &p)
def flush(me, str):
cdef unsigned char *p
cdef unsigned char *q
cdef size_t n
cdef unsigned char *p
cdef unsigned char *q
cdef size_t n
size_t *keep, void *arg):
cdef PacketBuffer pb
cdef void *rp
size_t *keep, void *arg):
cdef PacketBuffer pb
cdef void *rp
pb = <PacketBuffer>arg
if p is NULL:
pb.eof()
pb = <PacketBuffer>arg
if p is NULL:
pb.eof()
size_t *keep, void *arg):
cdef SelPacketBuffer pb
cdef void *rp
size_t *keep, void *arg):
cdef SelPacketBuffer pb
cdef void *rp
pb = <SelPacketBuffer>arg
if p is NULL:
pb.eof()
pb = <SelPacketBuffer>arg
if p is NULL:
pb.eof()
return 0
cdef void *_find(me, object key, unsigned *f) except NULL:
cdef void *p
return 0
cdef void *_find(me, object key, unsigned *f) except NULL:
cdef void *p
cdef _sym_entry *e
PyObject_AsReadBuffer(key, &p, &n)
if f:
cdef _sym_entry *e
PyObject_AsReadBuffer(key, &p, &n)
if f:
me._a = UNIHASH_INIT(me._i)
def chunk(me, data):
cdef void *p
me._a = UNIHASH_INIT(me._i)
def chunk(me, data):
cdef void *p
PyObject_AsReadBuffer(data, &p, &n)
me._a = unihash_hash(me._i, me._a, p, n)
def done(me):
PyObject_AsReadBuffer(data, &p, &n)
me._a = unihash_hash(me._i, me._a, p, n)
def done(me):