X-Git-Url: https://git.distorted.org.uk/~mdw/catacomb-python/blobdiff_plain/8e923c6832d8ba26dbe9e97e5c3607debbe27566..2a448f86048c26a24288d310b3bb70e8ae7e7528:/pubkey.c diff --git a/pubkey.c b/pubkey.c index d7201c6..b1d32a5 100644 --- a/pubkey.c +++ b/pubkey.c @@ -218,7 +218,7 @@ static const PyMemberDef dsapriv_pymembers[] = { { 0 } }; -static PyTypeObject dsapub_pytype_skel = { +static const PyTypeObject dsapub_pytype_skel = { PyObject_HEAD_INIT(0) 0, /* Header */ "DSAPub", /* @tp_name@ */ sizeof(dsa_pyobj), /* @tp_basicsize@ */ @@ -266,7 +266,7 @@ static PyTypeObject dsapub_pytype_skel = { 0 /* @tp_is_gc@ */ }; -static PyTypeObject dsapriv_pytype_skel = { +static const PyTypeObject dsapriv_pytype_skel = { PyObject_HEAD_INIT(0) 0, /* Header */ "DSAPriv", /* @tp_name@ */ sizeof(dsa_pyobj), /* @tp_basicsize@ */ @@ -436,7 +436,7 @@ static const PyMethodDef kcdsapriv_pymethods[] = { { 0 } }; -static PyTypeObject kcdsapub_pytype_skel = { +static const PyTypeObject kcdsapub_pytype_skel = { PyObject_HEAD_INIT(0) 0, /* Header */ "KCDSAPub", /* @tp_name@ */ sizeof(dsa_pyobj), /* @tp_basicsize@ */ @@ -484,7 +484,7 @@ static PyTypeObject kcdsapub_pytype_skel = { 0 /* @tp_is_gc@ */ }; -static PyTypeObject kcdsapriv_pytype_skel = { +static const PyTypeObject kcdsapriv_pytype_skel = { PyObject_HEAD_INIT(0) 0, /* Header */ "KCDSAPriv", /* @tp_name@ */ sizeof(dsa_pyobj), /* @tp_basicsize@ */ @@ -787,7 +787,7 @@ static const PyMethodDef rsapriv_pymethods[] = { { 0 } }; -static PyTypeObject rsapub_pytype_skel = { +static const PyTypeObject rsapub_pytype_skel = { PyObject_HEAD_INIT(0) 0, /* Header */ "RSAPub", /* @tp_name@ */ sizeof(rsapub_pyobj), /* @tp_basicsize@ */ @@ -835,7 +835,7 @@ static PyTypeObject rsapub_pytype_skel = { 0 /* @tp_is_gc@ */ }; -static PyTypeObject rsapriv_pytype_skel = { +static const PyTypeObject rsapriv_pytype_skel = { PyObject_HEAD_INIT(0) 0, /* Header */ "RSAPriv", /* @tp_name@ */ sizeof(rsapriv_pyobj), /* @tp_basicsize@ */ @@ -1256,6 +1256,16 @@ EDDSAS(DEFEDDSA) /*----- Global stuff ------------------------------------------------------*/ +static const struct nameval consts[] = { + CONST(X25519_KEYSZ), CONST(X25519_PUBSZ), CONST(X25519_OUTSZ), + CONST(X448_KEYSZ), CONST(X448_PUBSZ), CONST(X448_OUTSZ), + CONST(ED25519_KEYSZ), CONST(ED25519_PUBSZ), CONST(ED25519_SIGSZ), + CONST(ED25519_MAXPERSOSZ), + CONST(ED448_KEYSZ), CONST(ED448_PUBSZ), CONST(ED448_SIGSZ), + CONST(ED448_MAXPERSOSZ), + { 0 } +}; + static const PyMethodDef methods[] = { #define METHNAME(name) meth_##name KWMETH(_p1crypt_encode, 0) @@ -1301,6 +1311,7 @@ void pubkey_pyinsert(PyObject *mod) INSERT("KCDSAPriv", kcdsapriv_pytype); INSERT("RSAPub", rsapub_pytype); INSERT("RSAPriv", rsapriv_pytype); + setconstants(mod, consts); } /*----- That's all, folks -------------------------------------------------*/