~mdw
/
catacomb-python
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
*.c: Be more careful about `PySequence_Size'.
[catacomb-python]
/
ec.c
diff --git
a/ec.c
b/ec.c
index
e18cbb8
..
6280010
100644
(file)
--- a/
ec.c
+++ b/
ec.c
@@
-252,7
+252,7
@@
static PyObject *epmeth_tobuf(PyObject *me, PyObject *arg)
if (EC_ATINF(&p))
n = 2;
else
if (EC_ATINF(&p))
n = 2;
else
- n = mp_octets(p.x) + mp_octets(p.y) +
4
;
+ n = mp_octets(p.x) + mp_octets(p.y) +
6
;
rc = bytestring_pywrap(0, n);
buf_init(&b, PyString_AS_STRING(rc), n);
buf_putec(&b, &p);
rc = bytestring_pywrap(0, n);
buf_init(&b, PyString_AS_STRING(rc), n);
buf_putec(&b, &p);
@@
-453,7
+453,7
@@
static int ecptxl_1(ec_curve *c, ec *p, PyObject *x)
getecptout(p, x);
goto fix;
} else if (PyString_Check(x)) {
getecptout(p, x);
goto fix;
} else if (PyString_Check(x)) {
- if (PyObject_AsReadBuffer(x, &q,
0
))
+ if (PyObject_AsReadBuffer(x, &q,
&n
))
goto end;
qd.p = q;
qd.e = 0;
goto end;
qd.p = q;
qd.e = 0;
@@
-465,7
+465,7
@@
static int ecptxl_1(ec_curve *c, ec *p, PyObject *x)
if (!EC_FIND(c, p, xx)) VALERR("not on the curve");
} else if (PySequence_Check(x)) {
t = x; x = 0;
if (!EC_FIND(c, p, xx)) VALERR("not on the curve");
} else if (PySequence_Check(x)) {
t = x; x = 0;
- n = PySequence_Size(t);
+ n = PySequence_Size(t);
if (n < 0) goto end;
if (n != 2 && (n != 3 || !c))
TYERR("want sequence of two or three items");
if ((x = PySequence_GetItem(t, 0)) == 0 ||
if (n != 2 && (n != 3 || !c))
TYERR("want sequence of two or three items");
if ((x = PySequence_GetItem(t, 0)) == 0 ||