python-nss package is retired on c9s for CS-436
This commit is contained in:
parent
1e50804b69
commit
67a5e9cb61
11
.gitignore
vendored
11
.gitignore
vendored
@ -1,11 +0,0 @@
|
|||||||
/python-nss-0.10.tar.bz2
|
|
||||||
/python-nss-0.11.tar.bz2
|
|
||||||
/python-nss-0.12.tar.bz2
|
|
||||||
/python-nss-0.13.tar.bz2
|
|
||||||
/python-nss-0.14.0.tar.bz2
|
|
||||||
/python-nss-0.15.0.tar.bz2
|
|
||||||
/python-nss-0.16.0.tar.bz2
|
|
||||||
/python-nss-1.0.0beta1.tar.bz2
|
|
||||||
/python-nss-1.0.0.tar.bz2
|
|
||||||
/python-nss-1.0.1.tar.bz2
|
|
||||||
python-nss-*/
|
|
@ -1,594 +0,0 @@
|
|||||||
From 079d4f65a743fb9e952ab109c1a24997c15398a7 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Alexander Scheel <ascheel@redhat.com>
|
|
||||||
Date: Thu, 3 Dec 2020 10:03:50 -0500
|
|
||||||
Subject: [PATCH] Rename {DSA,RSA}PublicKey to Py{DSA,RSA}PublicKey
|
|
||||||
|
|
||||||
These two structs have also been added to NSS as of v3.58. Because we
|
|
||||||
duplicate the name with different members, we should prefix the
|
|
||||||
python-nss classes with "Py" in the C code to distinguish them.
|
|
||||||
|
|
||||||
Signed-off-by: Alexander Scheel <ascheel@redhat.com>
|
|
||||||
---
|
|
||||||
src/py_nss.c | 180 +++++++++++++++++++++++++--------------------------
|
|
||||||
src/py_nss.h | 8 +--
|
|
||||||
2 files changed, 94 insertions(+), 94 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/py_nss.c b/src/py_nss.c
|
|
||||||
index 3e8ccdb..d033ac2 100644
|
|
||||||
--- a/src/py_nss.c
|
|
||||||
+++ b/src/py_nss.c
|
|
||||||
@@ -7091,7 +7091,7 @@ KEYPQGParams_new_from_SECKEYPQGParams(const SECKEYPQGParams *params)
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ========================================================================== */
|
|
||||||
-/* =========================== RSAPublicKey Class =========================== */
|
|
||||||
+/* ========================== PyRSAPublicKey Class ========================== */
|
|
||||||
/* ========================================================================== */
|
|
||||||
|
|
||||||
/* ============================ Attribute Access ============================ */
|
|
||||||
@@ -7100,7 +7100,7 @@ KEYPQGParams_new_from_SECKEYPQGParams(const SECKEYPQGParams *params)
|
|
||||||
// via integer_secitem_to_pylong()
|
|
||||||
|
|
||||||
static PyObject *
|
|
||||||
-RSAPublicKey_get_modulus(RSAPublicKey *self, void *closure)
|
|
||||||
+PyRSAPublicKey_get_modulus(PyRSAPublicKey *self, void *closure)
|
|
||||||
{
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
@@ -7109,7 +7109,7 @@ RSAPublicKey_get_modulus(RSAPublicKey *self, void *closure)
|
|
||||||
}
|
|
||||||
|
|
||||||
static PyObject *
|
|
||||||
-RSAPublicKey_get_exponent(RSAPublicKey *self, void *closure)
|
|
||||||
+PyRSAPublicKey_get_exponent(PyRSAPublicKey *self, void *closure)
|
|
||||||
{
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
@@ -7118,20 +7118,20 @@ RSAPublicKey_get_exponent(RSAPublicKey *self, void *closure)
|
|
||||||
}
|
|
||||||
|
|
||||||
static
|
|
||||||
-PyGetSetDef RSAPublicKey_getseters[] = {
|
|
||||||
- {"modulus", (getter)RSAPublicKey_get_modulus, (setter)NULL, "RSA modulus", NULL},
|
|
||||||
- {"exponent", (getter)RSAPublicKey_get_exponent, (setter)NULL, "RSA exponent", NULL},
|
|
||||||
+PyGetSetDef PyRSAPublicKey_getseters[] = {
|
|
||||||
+ {"modulus", (getter)PyRSAPublicKey_get_modulus, (setter)NULL, "RSA modulus", NULL},
|
|
||||||
+ {"exponent", (getter)PyRSAPublicKey_get_exponent, (setter)NULL, "RSA exponent", NULL},
|
|
||||||
{NULL} /* Sentinel */
|
|
||||||
};
|
|
||||||
|
|
||||||
-static PyMemberDef RSAPublicKey_members[] = {
|
|
||||||
+static PyMemberDef PyRSAPublicKey_members[] = {
|
|
||||||
{NULL} /* Sentinel */
|
|
||||||
};
|
|
||||||
|
|
||||||
/* ============================== Class Methods ============================= */
|
|
||||||
|
|
||||||
static PyObject *
|
|
||||||
-RSAPublicKey_format_lines(RSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
+PyRSAPublicKey_format_lines(PyRSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
{
|
|
||||||
static char *kwlist[] = {"level", NULL};
|
|
||||||
int level = 0;
|
|
||||||
@@ -7147,12 +7147,12 @@ RSAPublicKey_format_lines(RSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
- if ((obj = RSAPublicKey_get_modulus(self, NULL)) == NULL) {
|
|
||||||
+ if ((obj = PyRSAPublicKey_get_modulus(self, NULL)) == NULL) {
|
|
||||||
goto fail;
|
|
||||||
}
|
|
||||||
FMT_SEC_INT_OBJ_APPEND_AND_CLEAR(lines, _("Modulus"), obj, level, fail);
|
|
||||||
|
|
||||||
- if ((obj = RSAPublicKey_get_exponent(self, NULL)) == NULL) {
|
|
||||||
+ if ((obj = PyRSAPublicKey_get_exponent(self, NULL)) == NULL) {
|
|
||||||
goto fail;
|
|
||||||
}
|
|
||||||
FMT_SEC_INT_OBJ_APPEND_AND_CLEAR(lines, _("Exponent"), obj, level, fail);
|
|
||||||
@@ -7165,41 +7165,41 @@ RSAPublicKey_format_lines(RSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
}
|
|
||||||
|
|
||||||
static PyObject *
|
|
||||||
-RSAPublicKey_format(RSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
+PyRSAPublicKey_format(PyRSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
{
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
- return format_from_lines((format_lines_func)RSAPublicKey_format_lines, (PyObject *)self, args, kwds);
|
|
||||||
+ return format_from_lines((format_lines_func)PyRSAPublicKey_format_lines, (PyObject *)self, args, kwds);
|
|
||||||
}
|
|
||||||
|
|
||||||
static PyObject *
|
|
||||||
-RSAPublicKey_str(RSAPublicKey *self)
|
|
||||||
+PyRSAPublicKey_str(PyRSAPublicKey *self)
|
|
||||||
{
|
|
||||||
PyObject *py_formatted_result = NULL;
|
|
||||||
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
- py_formatted_result = RSAPublicKey_format(self, empty_tuple, NULL);
|
|
||||||
+ py_formatted_result = PyRSAPublicKey_format(self, empty_tuple, NULL);
|
|
||||||
return py_formatted_result;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
-static PyMethodDef RSAPublicKey_methods[] = {
|
|
||||||
- {"format_lines", (PyCFunction)RSAPublicKey_format_lines, METH_VARARGS|METH_KEYWORDS, generic_format_lines_doc},
|
|
||||||
- {"format", (PyCFunction)RSAPublicKey_format, METH_VARARGS|METH_KEYWORDS, generic_format_doc},
|
|
||||||
+static PyMethodDef PyRSAPublicKey_methods[] = {
|
|
||||||
+ {"format_lines", (PyCFunction)PyRSAPublicKey_format_lines, METH_VARARGS|METH_KEYWORDS, generic_format_lines_doc},
|
|
||||||
+ {"format", (PyCFunction)PyRSAPublicKey_format, METH_VARARGS|METH_KEYWORDS, generic_format_doc},
|
|
||||||
{NULL, NULL} /* Sentinel */
|
|
||||||
};
|
|
||||||
|
|
||||||
/* =========================== Class Construction =========================== */
|
|
||||||
|
|
||||||
static PyObject *
|
|
||||||
-RSAPublicKey_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
|
|
||||||
+PyRSAPublicKey_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
|
|
||||||
{
|
|
||||||
- RSAPublicKey *self;
|
|
||||||
+ PyRSAPublicKey *self;
|
|
||||||
|
|
||||||
TraceObjNewEnter(type);
|
|
||||||
|
|
||||||
- if ((self = (RSAPublicKey *)type->tp_alloc(type, 0)) == NULL) {
|
|
||||||
+ if ((self = (PyRSAPublicKey *)type->tp_alloc(type, 0)) == NULL) {
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -7211,7 +7211,7 @@ RSAPublicKey_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
|
|
||||||
}
|
|
||||||
|
|
||||||
static int
|
|
||||||
-RSAPublicKey_traverse(RSAPublicKey *self, visitproc visit, void *arg)
|
|
||||||
+PyRSAPublicKey_traverse(PyRSAPublicKey *self, visitproc visit, void *arg)
|
|
||||||
{
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
@@ -7221,7 +7221,7 @@ RSAPublicKey_traverse(RSAPublicKey *self, visitproc visit, void *arg)
|
|
||||||
}
|
|
||||||
|
|
||||||
static int
|
|
||||||
-RSAPublicKey_clear(RSAPublicKey* self)
|
|
||||||
+PyRSAPublicKey_clear(PyRSAPublicKey* self)
|
|
||||||
{
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
@@ -7231,31 +7231,31 @@ RSAPublicKey_clear(RSAPublicKey* self)
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
-RSAPublicKey_dealloc(RSAPublicKey* self)
|
|
||||||
+PyRSAPublicKey_dealloc(PyRSAPublicKey* self)
|
|
||||||
{
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
- RSAPublicKey_clear(self);
|
|
||||||
+ PyRSAPublicKey_clear(self);
|
|
||||||
Py_TYPE(self)->tp_free((PyObject*)self);
|
|
||||||
}
|
|
||||||
|
|
||||||
-PyDoc_STRVAR(RSAPublicKey_doc,
|
|
||||||
+PyDoc_STRVAR(PyRSAPublicKey_doc,
|
|
||||||
"An object representing an RSA Public Key");
|
|
||||||
|
|
||||||
static int
|
|
||||||
-RSAPublicKey_init(RSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
+PyRSAPublicKey_init(PyRSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
{
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
-static PyTypeObject RSAPublicKeyType = {
|
|
||||||
+static PyTypeObject PyRSAPublicKeyType = {
|
|
||||||
PyVarObject_HEAD_INIT(NULL, 0)
|
|
||||||
- "nss.nss.RSAPublicKey", /* tp_name */
|
|
||||||
- sizeof(RSAPublicKey), /* tp_basicsize */
|
|
||||||
+ "nss.nss.PyRSAPublicKey", /* tp_name */
|
|
||||||
+ sizeof(PyRSAPublicKey), /* tp_basicsize */
|
|
||||||
0, /* tp_itemsize */
|
|
||||||
- (destructor)RSAPublicKey_dealloc, /* tp_dealloc */
|
|
||||||
+ (destructor)PyRSAPublicKey_dealloc, /* tp_dealloc */
|
|
||||||
0, /* tp_print */
|
|
||||||
0, /* tp_getattr */
|
|
||||||
0, /* tp_setattr */
|
|
||||||
@@ -7266,39 +7266,39 @@ static PyTypeObject RSAPublicKeyType = {
|
|
||||||
0, /* tp_as_mapping */
|
|
||||||
0, /* tp_hash */
|
|
||||||
0, /* tp_call */
|
|
||||||
- (reprfunc)RSAPublicKey_str, /* tp_str */
|
|
||||||
+ (reprfunc)PyRSAPublicKey_str, /* tp_str */
|
|
||||||
0, /* tp_getattro */
|
|
||||||
0, /* tp_setattro */
|
|
||||||
0, /* tp_as_buffer */
|
|
||||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_HAVE_GC, /* tp_flags */
|
|
||||||
- RSAPublicKey_doc, /* tp_doc */
|
|
||||||
- (traverseproc)RSAPublicKey_traverse, /* tp_traverse */
|
|
||||||
- (inquiry)RSAPublicKey_clear, /* tp_clear */
|
|
||||||
+ PyRSAPublicKey_doc, /* tp_doc */
|
|
||||||
+ (traverseproc)PyRSAPublicKey_traverse, /* tp_traverse */
|
|
||||||
+ (inquiry)PyRSAPublicKey_clear, /* tp_clear */
|
|
||||||
0, /* tp_richcompare */
|
|
||||||
0, /* tp_weaklistoffset */
|
|
||||||
0, /* tp_iter */
|
|
||||||
0, /* tp_iternext */
|
|
||||||
- RSAPublicKey_methods, /* tp_methods */
|
|
||||||
- RSAPublicKey_members, /* tp_members */
|
|
||||||
- RSAPublicKey_getseters, /* tp_getset */
|
|
||||||
+ PyRSAPublicKey_methods, /* tp_methods */
|
|
||||||
+ PyRSAPublicKey_members, /* tp_members */
|
|
||||||
+ PyRSAPublicKey_getseters, /* tp_getset */
|
|
||||||
0, /* tp_base */
|
|
||||||
0, /* tp_dict */
|
|
||||||
0, /* tp_descr_get */
|
|
||||||
0, /* tp_descr_set */
|
|
||||||
0, /* tp_dictoffset */
|
|
||||||
- (initproc)RSAPublicKey_init, /* tp_init */
|
|
||||||
+ (initproc)PyRSAPublicKey_init, /* tp_init */
|
|
||||||
0, /* tp_alloc */
|
|
||||||
- RSAPublicKey_new, /* tp_new */
|
|
||||||
+ PyRSAPublicKey_new, /* tp_new */
|
|
||||||
};
|
|
||||||
|
|
||||||
PyObject *
|
|
||||||
-RSAPublicKey_new_from_SECKEYRSAPublicKey(SECKEYRSAPublicKey *rsa)
|
|
||||||
+PyRSAPublicKey_new_from_SECKEYRSAPublicKey(SECKEYRSAPublicKey *rsa)
|
|
||||||
{
|
|
||||||
- RSAPublicKey *self = NULL;
|
|
||||||
+ PyRSAPublicKey *self = NULL;
|
|
||||||
|
|
||||||
TraceObjNewEnter(NULL);
|
|
||||||
|
|
||||||
- if ((self = (RSAPublicKey *) RSAPublicKeyType.tp_new(&RSAPublicKeyType, NULL, NULL)) == NULL) {
|
|
||||||
+ if ((self = (PyRSAPublicKey *) PyRSAPublicKeyType.tp_new(&PyRSAPublicKeyType, NULL, NULL)) == NULL) {
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -7317,13 +7317,13 @@ RSAPublicKey_new_from_SECKEYRSAPublicKey(SECKEYRSAPublicKey *rsa)
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ========================================================================== */
|
|
||||||
-/* =========================== DSAPublicKey Class =========================== */
|
|
||||||
+/* ========================== PyDSAPublicKey Class ========================== */
|
|
||||||
/* ========================================================================== */
|
|
||||||
|
|
||||||
/* ============================ Attribute Access ============================ */
|
|
||||||
|
|
||||||
static PyObject *
|
|
||||||
-DSAPublicKey_get_pqg_params(DSAPublicKey *self, void *closure)
|
|
||||||
+PyDSAPublicKey_get_pqg_params(PyDSAPublicKey *self, void *closure)
|
|
||||||
{
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
@@ -7332,7 +7332,7 @@ DSAPublicKey_get_pqg_params(DSAPublicKey *self, void *closure)
|
|
||||||
}
|
|
||||||
|
|
||||||
static PyObject *
|
|
||||||
-DSAPublicKey_get_public_value(DSAPublicKey *self, void *closure)
|
|
||||||
+PyDSAPublicKey_get_public_value(PyDSAPublicKey *self, void *closure)
|
|
||||||
{
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
@@ -7341,20 +7341,20 @@ DSAPublicKey_get_public_value(DSAPublicKey *self, void *closure)
|
|
||||||
}
|
|
||||||
|
|
||||||
static
|
|
||||||
-PyGetSetDef DSAPublicKey_getseters[] = {
|
|
||||||
- {"pqg_params", (getter)DSAPublicKey_get_pqg_params, (setter)NULL, "DSA P,Q,G params as a KEYPQGParams object", NULL},
|
|
||||||
- {"public_value", (getter)DSAPublicKey_get_public_value, (setter)NULL, "DSA public_value", NULL},
|
|
||||||
+PyGetSetDef PyDSAPublicKey_getseters[] = {
|
|
||||||
+ {"pqg_params", (getter)PyDSAPublicKey_get_pqg_params, (setter)NULL, "DSA P,Q,G params as a KEYPQGParams object", NULL},
|
|
||||||
+ {"public_value", (getter)PyDSAPublicKey_get_public_value, (setter)NULL, "DSA public_value", NULL},
|
|
||||||
{NULL} /* Sentinel */
|
|
||||||
};
|
|
||||||
|
|
||||||
-static PyMemberDef DSAPublicKey_members[] = {
|
|
||||||
+static PyMemberDef PyDSAPublicKey_members[] = {
|
|
||||||
{NULL} /* Sentinel */
|
|
||||||
};
|
|
||||||
|
|
||||||
/* ============================== Class Methods ============================= */
|
|
||||||
|
|
||||||
static PyObject *
|
|
||||||
-DSAPublicKey_format_lines(DSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
+PyDSAPublicKey_format_lines(PyDSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
{
|
|
||||||
static char *kwlist[] = {"level", NULL};
|
|
||||||
int level = 0;
|
|
||||||
@@ -7371,13 +7371,13 @@ DSAPublicKey_format_lines(DSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
- if ((obj = DSAPublicKey_get_pqg_params(self, NULL)) == NULL) {
|
|
||||||
+ if ((obj = PyDSAPublicKey_get_pqg_params(self, NULL)) == NULL) {
|
|
||||||
goto fail;
|
|
||||||
}
|
|
||||||
CALL_FORMAT_LINES_AND_APPEND(lines, obj, level, fail);
|
|
||||||
Py_CLEAR(obj);
|
|
||||||
|
|
||||||
- if ((obj = DSAPublicKey_get_public_value(self, NULL)) == NULL) {
|
|
||||||
+ if ((obj = PyDSAPublicKey_get_public_value(self, NULL)) == NULL) {
|
|
||||||
goto fail;
|
|
||||||
}
|
|
||||||
FMT_SEC_INT_OBJ_APPEND_AND_CLEAR(lines, _("Public Value"), obj, level, fail);
|
|
||||||
@@ -7390,41 +7390,41 @@ DSAPublicKey_format_lines(DSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
}
|
|
||||||
|
|
||||||
static PyObject *
|
|
||||||
-DSAPublicKey_format(DSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
+PyDSAPublicKey_format(PyDSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
{
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
- return format_from_lines((format_lines_func)DSAPublicKey_format_lines, (PyObject *)self, args, kwds);
|
|
||||||
+ return format_from_lines((format_lines_func)PyDSAPublicKey_format_lines, (PyObject *)self, args, kwds);
|
|
||||||
}
|
|
||||||
|
|
||||||
static PyObject *
|
|
||||||
-DSAPublicKey_str(DSAPublicKey *self)
|
|
||||||
+PyDSAPublicKey_str(PyDSAPublicKey *self)
|
|
||||||
{
|
|
||||||
PyObject *py_formatted_result = NULL;
|
|
||||||
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
- py_formatted_result = DSAPublicKey_format(self, empty_tuple, NULL);
|
|
||||||
+ py_formatted_result = PyDSAPublicKey_format(self, empty_tuple, NULL);
|
|
||||||
return py_formatted_result;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
-static PyMethodDef DSAPublicKey_methods[] = {
|
|
||||||
- {"format_lines", (PyCFunction)DSAPublicKey_format_lines, METH_VARARGS|METH_KEYWORDS, generic_format_lines_doc},
|
|
||||||
- {"format", (PyCFunction)DSAPublicKey_format, METH_VARARGS|METH_KEYWORDS, generic_format_doc},
|
|
||||||
+static PyMethodDef PyDSAPublicKey_methods[] = {
|
|
||||||
+ {"format_lines", (PyCFunction)PyDSAPublicKey_format_lines, METH_VARARGS|METH_KEYWORDS, generic_format_lines_doc},
|
|
||||||
+ {"format", (PyCFunction)PyDSAPublicKey_format, METH_VARARGS|METH_KEYWORDS, generic_format_doc},
|
|
||||||
{NULL, NULL} /* Sentinel */
|
|
||||||
};
|
|
||||||
|
|
||||||
/* =========================== Class Construction =========================== */
|
|
||||||
|
|
||||||
static PyObject *
|
|
||||||
-DSAPublicKey_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
|
|
||||||
+PyDSAPublicKey_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
|
|
||||||
{
|
|
||||||
- DSAPublicKey *self;
|
|
||||||
+ PyDSAPublicKey *self;
|
|
||||||
|
|
||||||
TraceObjNewEnter(type);
|
|
||||||
|
|
||||||
- if ((self = (DSAPublicKey *)type->tp_alloc(type, 0)) == NULL) {
|
|
||||||
+ if ((self = (PyDSAPublicKey *)type->tp_alloc(type, 0)) == NULL) {
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -7436,7 +7436,7 @@ DSAPublicKey_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
|
|
||||||
}
|
|
||||||
|
|
||||||
static int
|
|
||||||
-DSAPublicKey_traverse(DSAPublicKey *self, visitproc visit, void *arg)
|
|
||||||
+PyDSAPublicKey_traverse(PyDSAPublicKey *self, visitproc visit, void *arg)
|
|
||||||
{
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
@@ -7446,7 +7446,7 @@ DSAPublicKey_traverse(DSAPublicKey *self, visitproc visit, void *arg)
|
|
||||||
}
|
|
||||||
|
|
||||||
static int
|
|
||||||
-DSAPublicKey_clear(DSAPublicKey* self)
|
|
||||||
+PyDSAPublicKey_clear(PyDSAPublicKey* self)
|
|
||||||
{
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
@@ -7456,31 +7456,31 @@ DSAPublicKey_clear(DSAPublicKey* self)
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
-DSAPublicKey_dealloc(DSAPublicKey* self)
|
|
||||||
+PyDSAPublicKey_dealloc(PyDSAPublicKey* self)
|
|
||||||
{
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
- DSAPublicKey_clear(self);
|
|
||||||
+ PyDSAPublicKey_clear(self);
|
|
||||||
Py_TYPE(self)->tp_free((PyObject*)self);
|
|
||||||
}
|
|
||||||
|
|
||||||
-PyDoc_STRVAR(DSAPublicKey_doc,
|
|
||||||
+PyDoc_STRVAR(PyDSAPublicKey_doc,
|
|
||||||
"A object representing a DSA Public Key");
|
|
||||||
|
|
||||||
static int
|
|
||||||
-DSAPublicKey_init(DSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
+PyDSAPublicKey_init(PyDSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
{
|
|
||||||
TraceMethodEnter(self);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
-static PyTypeObject DSAPublicKeyType = {
|
|
||||||
+static PyTypeObject PyDSAPublicKeyType = {
|
|
||||||
PyVarObject_HEAD_INIT(NULL, 0)
|
|
||||||
- "nss.nss.DSAPublicKey", /* tp_name */
|
|
||||||
- sizeof(DSAPublicKey), /* tp_basicsize */
|
|
||||||
+ "nss.nss.PyDSAPublicKey", /* tp_name */
|
|
||||||
+ sizeof(PyDSAPublicKey), /* tp_basicsize */
|
|
||||||
0, /* tp_itemsize */
|
|
||||||
- (destructor)DSAPublicKey_dealloc, /* tp_dealloc */
|
|
||||||
+ (destructor)PyDSAPublicKey_dealloc, /* tp_dealloc */
|
|
||||||
0, /* tp_print */
|
|
||||||
0, /* tp_getattr */
|
|
||||||
0, /* tp_setattr */
|
|
||||||
@@ -7491,39 +7491,39 @@ static PyTypeObject DSAPublicKeyType = {
|
|
||||||
0, /* tp_as_mapping */
|
|
||||||
0, /* tp_hash */
|
|
||||||
0, /* tp_call */
|
|
||||||
- (reprfunc)DSAPublicKey_str, /* tp_str */
|
|
||||||
+ (reprfunc)PyDSAPublicKey_str, /* tp_str */
|
|
||||||
0, /* tp_getattro */
|
|
||||||
0, /* tp_setattro */
|
|
||||||
0, /* tp_as_buffer */
|
|
||||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_HAVE_GC, /* tp_flags */
|
|
||||||
- DSAPublicKey_doc, /* tp_doc */
|
|
||||||
- (traverseproc)DSAPublicKey_traverse, /* tp_traverse */
|
|
||||||
- (inquiry)DSAPublicKey_clear, /* tp_clear */
|
|
||||||
+ PyDSAPublicKey_doc, /* tp_doc */
|
|
||||||
+ (traverseproc)PyDSAPublicKey_traverse, /* tp_traverse */
|
|
||||||
+ (inquiry)PyDSAPublicKey_clear, /* tp_clear */
|
|
||||||
0, /* tp_richcompare */
|
|
||||||
0, /* tp_weaklistoffset */
|
|
||||||
0, /* tp_iter */
|
|
||||||
0, /* tp_iternext */
|
|
||||||
- DSAPublicKey_methods, /* tp_methods */
|
|
||||||
- DSAPublicKey_members, /* tp_members */
|
|
||||||
- DSAPublicKey_getseters, /* tp_getset */
|
|
||||||
+ PyDSAPublicKey_methods, /* tp_methods */
|
|
||||||
+ PyDSAPublicKey_members, /* tp_members */
|
|
||||||
+ PyDSAPublicKey_getseters, /* tp_getset */
|
|
||||||
0, /* tp_base */
|
|
||||||
0, /* tp_dict */
|
|
||||||
0, /* tp_descr_get */
|
|
||||||
0, /* tp_descr_set */
|
|
||||||
0, /* tp_dictoffset */
|
|
||||||
- (initproc)DSAPublicKey_init, /* tp_init */
|
|
||||||
+ (initproc)PyDSAPublicKey_init, /* tp_init */
|
|
||||||
0, /* tp_alloc */
|
|
||||||
- DSAPublicKey_new, /* tp_new */
|
|
||||||
+ PyDSAPublicKey_new, /* tp_new */
|
|
||||||
};
|
|
||||||
|
|
||||||
PyObject *
|
|
||||||
-DSAPublicKey_new_from_SECKEYDSAPublicKey(SECKEYDSAPublicKey *dsa)
|
|
||||||
+PyDSAPublicKey_new_from_SECKEYDSAPublicKey(SECKEYDSAPublicKey *dsa)
|
|
||||||
{
|
|
||||||
- DSAPublicKey *self = NULL;
|
|
||||||
+ PyDSAPublicKey *self = NULL;
|
|
||||||
|
|
||||||
TraceObjNewEnter(NULL);
|
|
||||||
|
|
||||||
- if ((self = (DSAPublicKey *) DSAPublicKeyType.tp_new(&DSAPublicKeyType, NULL, NULL)) == NULL) {
|
|
||||||
+ if ((self = (PyDSAPublicKey *) PyDSAPublicKeyType.tp_new(&PyDSAPublicKeyType, NULL, NULL)) == NULL) {
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -7882,8 +7882,8 @@ static
|
|
||||||
PyGetSetDef PublicKey_getseters[] = {
|
|
||||||
{"key_type", (getter)PublicKey_get_key_type, (setter)NULL, "key type (e.g. rsaKey, dsaKey, etc.) as an int", NULL},
|
|
||||||
{"key_type_str", (getter)PublicKey_get_key_type_str, (setter)NULL, "key type as a string", NULL},
|
|
||||||
- {"rsa", (getter)PublicKey_get_rsa, (setter)NULL, "RSA key as a RSAPublicKey object", NULL},
|
|
||||||
- {"dsa", (getter)PublicKey_get_dsa, (setter)NULL, "RSA key as a RSAPublicKey object", NULL},
|
|
||||||
+ {"rsa", (getter)PublicKey_get_rsa, (setter)NULL, "RSA key as a PyRSAPublicKey object", NULL},
|
|
||||||
+ {"dsa", (getter)PublicKey_get_dsa, (setter)NULL, "RSA key as a PyRSAPublicKey object", NULL},
|
|
||||||
{NULL} /* Sentinel */
|
|
||||||
};
|
|
||||||
|
|
||||||
@@ -8087,13 +8087,13 @@ PublicKey_new_from_SECKEYPublicKey(SECKEYPublicKey *pk)
|
|
||||||
|
|
||||||
switch(pk->keyType) { /* FIXME: handle the other cases */
|
|
||||||
case rsaKey:
|
|
||||||
- if ((self->py_rsa_key = RSAPublicKey_new_from_SECKEYRSAPublicKey(&pk->u.rsa)) == NULL) {
|
|
||||||
+ if ((self->py_rsa_key = PyRSAPublicKey_new_from_SECKEYRSAPublicKey(&pk->u.rsa)) == NULL) {
|
|
||||||
Py_CLEAR(self);
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case dsaKey:
|
|
||||||
- if ((self->py_dsa_key = DSAPublicKey_new_from_SECKEYDSAPublicKey(&pk->u.dsa)) == NULL) {
|
|
||||||
+ if ((self->py_dsa_key = PyDSAPublicKey_new_from_SECKEYDSAPublicKey(&pk->u.dsa)) == NULL) {
|
|
||||||
Py_CLEAR(self);
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
@@ -25310,8 +25310,8 @@ MOD_INIT(nss)
|
|
||||||
TYPE_READY(AlgorithmIDType);
|
|
||||||
TYPE_READY(RSAGenParamsType);
|
|
||||||
TYPE_READY(KEYPQGParamsType);
|
|
||||||
- TYPE_READY(RSAPublicKeyType);
|
|
||||||
- TYPE_READY(DSAPublicKeyType);
|
|
||||||
+ TYPE_READY(PyRSAPublicKeyType);
|
|
||||||
+ TYPE_READY(PyDSAPublicKeyType);
|
|
||||||
TYPE_READY(SignedDataType);
|
|
||||||
TYPE_READY(PublicKeyType);
|
|
||||||
TYPE_READY(SubjectPublicKeyInfoType);
|
|
||||||
diff --git a/src/py_nss.h b/src/py_nss.h
|
|
||||||
index c93b3a2..4bc94e6 100644
|
|
||||||
--- a/src/py_nss.h
|
|
||||||
+++ b/src/py_nss.h
|
|
||||||
@@ -116,24 +116,24 @@ typedef struct {
|
|
||||||
} SignedCRL;
|
|
||||||
|
|
||||||
/* ========================================================================== */
|
|
||||||
-/* ============================ RSAPublicKey Class ========================== */
|
|
||||||
+/* =========================== PyRSAPublicKey Class ========================= */
|
|
||||||
/* ========================================================================== */
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
PyObject_HEAD
|
|
||||||
PyObject *py_modulus;
|
|
||||||
PyObject *py_exponent;
|
|
||||||
-} RSAPublicKey;
|
|
||||||
+} PyRSAPublicKey;
|
|
||||||
|
|
||||||
/* ========================================================================== */
|
|
||||||
-/* ============================ DSAPublicKey Class ========================== */
|
|
||||||
+/* =========================== PyDSAPublicKey Class ========================= */
|
|
||||||
/* ========================================================================== */
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
PyObject_HEAD
|
|
||||||
PyObject *py_pqg_params;
|
|
||||||
PyObject *py_public_value;
|
|
||||||
-} DSAPublicKey;
|
|
||||||
+} PyDSAPublicKey;
|
|
||||||
|
|
||||||
/* ========================================================================== */
|
|
||||||
/* ============================ RSAGenParams Class ========================== */
|
|
||||||
--
|
|
||||||
2.26.2
|
|
||||||
|
|
||||||
From 51343db2e865b05054f0204dc6116a5633c671c7 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Alexander Scheel <ascheel@redhat.com>
|
|
||||||
Date: Mon, 7 Dec 2020 08:41:32 -0500
|
|
||||||
Subject: [PATCH] Fix python names of RSAPublicKey, DSAPublicKey
|
|
||||||
|
|
||||||
In 079d4f65a743fb9e952ab109c1a24997c15398a7, I was a little greedy on my
|
|
||||||
find/replace and ended up adjusting the Python names of these structs as
|
|
||||||
well as the C names. We wish to keep the Python names the same, so
|
|
||||||
revert that part of the patch.
|
|
||||||
|
|
||||||
Credit to Stanislav Levin for finding and reporting this.
|
|
||||||
|
|
||||||
Signed-off-by: Alexander Scheel <ascheel@redhat.com>
|
|
||||||
---
|
|
||||||
src/py_nss.c | 4 ++--
|
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/py_nss.c b/src/py_nss.c
|
|
||||||
index d033ac2..a01dd07 100644
|
|
||||||
--- a/src/py_nss.c
|
|
||||||
+++ b/src/py_nss.c
|
|
||||||
@@ -7252,7 +7252,7 @@ PyRSAPublicKey_init(PyRSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
|
|
||||||
static PyTypeObject PyRSAPublicKeyType = {
|
|
||||||
PyVarObject_HEAD_INIT(NULL, 0)
|
|
||||||
- "nss.nss.PyRSAPublicKey", /* tp_name */
|
|
||||||
+ "nss.nss.RSAPublicKey", /* tp_name */
|
|
||||||
sizeof(PyRSAPublicKey), /* tp_basicsize */
|
|
||||||
0, /* tp_itemsize */
|
|
||||||
(destructor)PyRSAPublicKey_dealloc, /* tp_dealloc */
|
|
||||||
@@ -7477,7 +7477,7 @@ PyDSAPublicKey_init(PyDSAPublicKey *self, PyObject *args, PyObject *kwds)
|
|
||||||
|
|
||||||
static PyTypeObject PyDSAPublicKeyType = {
|
|
||||||
PyVarObject_HEAD_INIT(NULL, 0)
|
|
||||||
- "nss.nss.PyDSAPublicKey", /* tp_name */
|
|
||||||
+ "nss.nss.DSAPublicKey", /* tp_name */
|
|
||||||
sizeof(PyDSAPublicKey), /* tp_basicsize */
|
|
||||||
0, /* tp_itemsize */
|
|
||||||
(destructor)PyDSAPublicKey_dealloc, /* tp_dealloc */
|
|
||||||
--
|
|
||||||
2.26.2
|
|
||||||
|
|
1
dead.package
Normal file
1
dead.package
Normal file
@ -0,0 +1 @@
|
|||||||
|
python-nss package is retired on c9s for CS-436
|
1269
python-nss.spec
1269
python-nss.spec
File diff suppressed because it is too large
Load Diff
1
sources
1
sources
@ -1 +0,0 @@
|
|||||||
SHA512 (python-nss-1.0.1.tar.bz2) = 88fc5a066a54524f0dd73cba8947bb3cd4cc078cf59a72253f0e56d835f39679a10a4ee87b5d9f4c167d0ff7a40704dee2e4d890e1d304afbe346ba02b8750b9
|
|
344
sphinx.patch
344
sphinx.patch
@ -1,344 +0,0 @@
|
|||||||
diff -r d767ac371ee3 doc/sphinx/source/conf.py
|
|
||||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
|
|
||||||
+++ b/doc/sphinx/source/conf.py Fri Jul 06 11:24:08 2018 -0400
|
|
||||||
@@ -0,0 +1,163 @@
|
|
||||||
+# -*- coding: utf-8 -*-
|
|
||||||
+#
|
|
||||||
+# Configuration file for the Sphinx documentation builder.
|
|
||||||
+#
|
|
||||||
+# This file does only contain a selection of the most common options. For a
|
|
||||||
+# full list see the documentation:
|
|
||||||
+# http://www.sphinx-doc.org/en/master/config
|
|
||||||
+
|
|
||||||
+# -- Path setup --------------------------------------------------------------
|
|
||||||
+
|
|
||||||
+# If extensions (or modules to document with autodoc) are in another directory,
|
|
||||||
+# add these directories to sys.path here. If the directory is relative to the
|
|
||||||
+# documentation root, use os.path.abspath to make it absolute, like shown here.
|
|
||||||
+#
|
|
||||||
+# import os
|
|
||||||
+# import sys
|
|
||||||
+# sys.path.insert(0, os.path.abspath('.'))
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+# -- Project information -----------------------------------------------------
|
|
||||||
+
|
|
||||||
+project = 'python-nss'
|
|
||||||
+copyright = '2018, John Dennis'
|
|
||||||
+author = 'John Dennis'
|
|
||||||
+
|
|
||||||
+# The short X.Y version
|
|
||||||
+version = ''
|
|
||||||
+# The full version, including alpha/beta/rc tags
|
|
||||||
+release = ''
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+# -- General configuration ---------------------------------------------------
|
|
||||||
+
|
|
||||||
+# If your documentation needs a minimal Sphinx version, state it here.
|
|
||||||
+#
|
|
||||||
+# needs_sphinx = '1.0'
|
|
||||||
+
|
|
||||||
+# Add any Sphinx extension module names here, as strings. They can be
|
|
||||||
+# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
|
|
||||||
+# ones.
|
|
||||||
+extensions = [
|
|
||||||
+ 'sphinx.ext.autodoc',
|
|
||||||
+ 'sphinx.ext.autosummary',
|
|
||||||
+]
|
|
||||||
+
|
|
||||||
+autodoc_default_flags = ['members']
|
|
||||||
+autosummary_generate = True
|
|
||||||
+
|
|
||||||
+# Add any paths that contain templates here, relative to this directory.
|
|
||||||
+templates_path = ['_templates']
|
|
||||||
+
|
|
||||||
+# The suffix(es) of source filenames.
|
|
||||||
+# You can specify multiple suffix as a list of string:
|
|
||||||
+#
|
|
||||||
+# source_suffix = ['.rst', '.md']
|
|
||||||
+source_suffix = '.rst'
|
|
||||||
+
|
|
||||||
+# The master toctree document.
|
|
||||||
+master_doc = 'index'
|
|
||||||
+
|
|
||||||
+# The language for content autogenerated by Sphinx. Refer to documentation
|
|
||||||
+# for a list of supported languages.
|
|
||||||
+#
|
|
||||||
+# This is also used if you do content translation via gettext catalogs.
|
|
||||||
+# Usually you set "language" from the command line for these cases.
|
|
||||||
+language = None
|
|
||||||
+
|
|
||||||
+# List of patterns, relative to source directory, that match files and
|
|
||||||
+# directories to ignore when looking for source files.
|
|
||||||
+# This pattern also affects html_static_path and html_extra_path .
|
|
||||||
+exclude_patterns = []
|
|
||||||
+
|
|
||||||
+# The name of the Pygments (syntax highlighting) style to use.
|
|
||||||
+pygments_style = 'sphinx'
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+# -- Options for HTML output -------------------------------------------------
|
|
||||||
+
|
|
||||||
+# The theme to use for HTML and HTML Help pages. See the documentation for
|
|
||||||
+# a list of builtin themes.
|
|
||||||
+#
|
|
||||||
+html_theme = 'alabaster'
|
|
||||||
+
|
|
||||||
+# Theme options are theme-specific and customize the look and feel of a theme
|
|
||||||
+# further. For a list of options available for each theme, see the
|
|
||||||
+# documentation.
|
|
||||||
+#
|
|
||||||
+# html_theme_options = {}
|
|
||||||
+
|
|
||||||
+# Add any paths that contain custom static files (such as style sheets) here,
|
|
||||||
+# relative to this directory. They are copied after the builtin static files,
|
|
||||||
+# so a file named "default.css" will overwrite the builtin "default.css".
|
|
||||||
+html_static_path = ['_static']
|
|
||||||
+
|
|
||||||
+# Custom sidebar templates, must be a dictionary that maps document names
|
|
||||||
+# to template names.
|
|
||||||
+#
|
|
||||||
+# The default sidebars (for documents that don't match any pattern) are
|
|
||||||
+# defined by theme itself. Builtin themes are using these templates by
|
|
||||||
+# default: ``['localtoc.html', 'relations.html', 'sourcelink.html',
|
|
||||||
+# 'searchbox.html']``.
|
|
||||||
+#
|
|
||||||
+# html_sidebars = {}
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+# -- Options for HTMLHelp output ---------------------------------------------
|
|
||||||
+
|
|
||||||
+# Output file base name for HTML help builder.
|
|
||||||
+htmlhelp_basename = 'python-nssdoc'
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+# -- Options for LaTeX output ------------------------------------------------
|
|
||||||
+
|
|
||||||
+latex_elements = {
|
|
||||||
+ # The paper size ('letterpaper' or 'a4paper').
|
|
||||||
+ #
|
|
||||||
+ # 'papersize': 'letterpaper',
|
|
||||||
+
|
|
||||||
+ # The font size ('10pt', '11pt' or '12pt').
|
|
||||||
+ #
|
|
||||||
+ # 'pointsize': '10pt',
|
|
||||||
+
|
|
||||||
+ # Additional stuff for the LaTeX preamble.
|
|
||||||
+ #
|
|
||||||
+ # 'preamble': '',
|
|
||||||
+
|
|
||||||
+ # Latex figure (float) alignment
|
|
||||||
+ #
|
|
||||||
+ # 'figure_align': 'htbp',
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+# Grouping the document tree into LaTeX files. List of tuples
|
|
||||||
+# (source start file, target name, title,
|
|
||||||
+# author, documentclass [howto, manual, or own class]).
|
|
||||||
+latex_documents = [
|
|
||||||
+ (master_doc, 'python-nss.tex', 'python-nss Documentation',
|
|
||||||
+ 'John Dennis', 'manual'),
|
|
||||||
+]
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+# -- Options for manual page output ------------------------------------------
|
|
||||||
+
|
|
||||||
+# One entry per manual page. List of tuples
|
|
||||||
+# (source start file, name, description, authors, manual section).
|
|
||||||
+man_pages = [
|
|
||||||
+ (master_doc, 'python-nss', 'python-nss Documentation',
|
|
||||||
+ [author], 1)
|
|
||||||
+]
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+# -- Options for Texinfo output ----------------------------------------------
|
|
||||||
+
|
|
||||||
+# Grouping the document tree into Texinfo files. List of tuples
|
|
||||||
+# (source start file, target name, title, author,
|
|
||||||
+# dir menu entry, description, category)
|
|
||||||
+texinfo_documents = [
|
|
||||||
+ (master_doc, 'python-nss', 'python-nss Documentation',
|
|
||||||
+ author, 'python-nss', 'One line description of project.',
|
|
||||||
+ 'Miscellaneous'),
|
|
||||||
+]
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+# -- Extension configuration -------------------------------------------------
|
|
||||||
diff -r d767ac371ee3 doc/sphinx/source/index.rst
|
|
||||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
|
|
||||||
+++ b/doc/sphinx/source/index.rst Fri Jul 06 11:24:08 2018 -0400
|
|
||||||
@@ -0,0 +1,43 @@
|
|
||||||
+.. python-nss documentation master file, created by
|
|
||||||
+ sphinx-quickstart on Thu Jun 28 09:36:37 2018.
|
|
||||||
+ You can adapt this file completely to your liking, but it should at least
|
|
||||||
+ contain the root `toctree` directive.
|
|
||||||
+
|
|
||||||
+Welcome to python-nss's documentation!
|
|
||||||
+======================================
|
|
||||||
+
|
|
||||||
+Sub-modules
|
|
||||||
+===========
|
|
||||||
+
|
|
||||||
+The functionality of python-nss is implemented in several sub-modules.
|
|
||||||
+Each sub-module focuses on related functions, classes and data. The
|
|
||||||
+bulk of NSS functionality (e.g. general cryptography) appears in the
|
|
||||||
+`nss.nss` module. You can detailed information on the module, it's
|
|
||||||
+data, it's classes and functions by following the link to the
|
|
||||||
+sub-module in the table below. You can also use the `Index` in the
|
|
||||||
+next section to jump directly to a specific item.
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+.. autosummary::
|
|
||||||
+ :toctree: generated
|
|
||||||
+
|
|
||||||
+ nss.io
|
|
||||||
+ nss.ssl
|
|
||||||
+ nss.nss
|
|
||||||
+ nss.error
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+Indices and tables
|
|
||||||
+==================
|
|
||||||
+
|
|
||||||
+* :ref:`genindex`
|
|
||||||
+* :ref:`modindex`
|
|
||||||
+* :ref:`search`
|
|
||||||
+
|
|
||||||
+.. automodule:: nss
|
|
||||||
+ :members:
|
|
||||||
+
|
|
||||||
+.. toctree::
|
|
||||||
+ :maxdepth: 2
|
|
||||||
+ :caption: Contents:
|
|
||||||
+
|
|
||||||
diff -r d767ac371ee3 setup.py
|
|
||||||
--- a/setup.py Tue Feb 28 18:24:19 2017 -0500
|
|
||||||
+++ b/setup.py Fri Jul 06 11:24:08 2018 -0400
|
|
||||||
@@ -15,21 +15,25 @@
|
|
||||||
from distutils.util import subst_vars, change_root
|
|
||||||
from distutils.command.build_py import build_py as _build_py
|
|
||||||
from distutils.command.sdist import sdist as _sdist
|
|
||||||
+from sphinx.setup_command import BuildDoc as SphinxBuildDoc
|
|
||||||
|
|
||||||
+name = 'python-nss'
|
|
||||||
version = "1.0.1"
|
|
||||||
+release = version
|
|
||||||
|
|
||||||
doc_manifest = [
|
|
||||||
[['include README LICENSE* doc/ChangeLog',
|
|
||||||
'recursive-include doc *.py *.txt',
|
|
||||||
- 'prune doc/examples/pki'],
|
|
||||||
+ 'prune doc/examples/pki',
|
|
||||||
+ 'prune doc/sphinx'],
|
|
||||||
[('^doc/', '')], None],
|
|
||||||
[['recursive-include test run_tests setup_certs.py test_*.py util.py *.txt',
|
|
||||||
'prune test/pki'],
|
|
||||||
None , None],
|
|
||||||
[['recursive-include lib *.py *.txt',],
|
|
||||||
[('^lib/', '')] , 'examples'],
|
|
||||||
- [['recursive-include build/doc/html *'],
|
|
||||||
- [('^build/doc/', 'api/')], None],
|
|
||||||
+ [['recursive-include build/sphinx/html *'],
|
|
||||||
+ [('^build/sphinx/', 'api/')], None],
|
|
||||||
]
|
|
||||||
|
|
||||||
def update_version():
|
|
||||||
@@ -114,13 +118,13 @@
|
|
||||||
user_options = [('docdir=', 'd', "directory root for documentation"),
|
|
||||||
]
|
|
||||||
|
|
||||||
- def has_epydoc (self):
|
|
||||||
- if find_executable('epydoc'):
|
|
||||||
+ def has_sphinx (self):
|
|
||||||
+ if find_executable('sphinx-build'):
|
|
||||||
return True
|
|
||||||
else:
|
|
||||||
return False
|
|
||||||
|
|
||||||
- sub_commands = [('build_api_doc', has_epydoc),
|
|
||||||
+ sub_commands = [('build_sphinx', has_sphinx),
|
|
||||||
]
|
|
||||||
|
|
||||||
def initialize_options(self):
|
|
||||||
@@ -137,46 +141,15 @@
|
|
||||||
|
|
||||||
def run(self):
|
|
||||||
self.run_command('build')
|
|
||||||
+ # Add build directory to Python path so doc builder can import
|
|
||||||
+ # in-tree built modules
|
|
||||||
+ sys.path.insert(0, self.build_lib)
|
|
||||||
for cmd_name in self.get_sub_commands():
|
|
||||||
self.run_command(cmd_name)
|
|
||||||
+ # Remove the build directory from Python path
|
|
||||||
+ del sys.path[0]
|
|
||||||
|
|
||||||
|
|
||||||
-class BuildApiDoc(Command):
|
|
||||||
- description = 'generate the API documentation'
|
|
||||||
- user_options = [('docdir=', 'd', "directory root for documentation"),
|
|
||||||
- ('action=', 'a', "epydoc action (html, latex, dvi, ps, pdf, check, pickle"),
|
|
||||||
- ('htmldir', 'H', "directory to locate the API HTML files under"),
|
|
||||||
- ]
|
|
||||||
-
|
|
||||||
- def initialize_options(self):
|
|
||||||
- self.build_base = None
|
|
||||||
- self.build_lib = None
|
|
||||||
- self.docdir = None
|
|
||||||
- self.action = None
|
|
||||||
- self.htmldir = None
|
|
||||||
-
|
|
||||||
- def finalize_options(self):
|
|
||||||
- self.set_undefined_options('build',
|
|
||||||
- ('build_base', 'build_base'),
|
|
||||||
- ('build_lib', 'build_lib'))
|
|
||||||
-
|
|
||||||
- if self.action is None:
|
|
||||||
- self.action = 'html'
|
|
||||||
-
|
|
||||||
- if self.docdir is None:
|
|
||||||
- if self.action == 'html':
|
|
||||||
- self.docdir = change_root(self.get_finalized_command('build_doc').docdir, 'html')
|
|
||||||
- else:
|
|
||||||
- self.docdir = self.get_finalized_command('build_doc').docdir
|
|
||||||
-
|
|
||||||
- def run(self):
|
|
||||||
- prog = find_executable('epydoc')
|
|
||||||
- pkg_dirs = [change_root(self.build_lib, pkg) for pkg in self.distribution.packages]
|
|
||||||
- cmd = [prog, '-v', '--%s' % self.action, '--docformat', 'restructuredtext', '-o', self.docdir]
|
|
||||||
- #if self.verbose: cmd.append('-v')
|
|
||||||
- cmd.extend(pkg_dirs)
|
|
||||||
- self.mkpath(self.docdir)
|
|
||||||
- spawn(cmd)
|
|
||||||
|
|
||||||
class InstallDoc(Command):
|
|
||||||
description = 'install documentation'
|
|
||||||
@@ -373,7 +346,7 @@
|
|
||||||
|
|
||||||
#bug_tracker = 'https://bugzilla.redhat.com/buglist.cgi?submit&component=python-nss&product=Fedora&classification=Fedora'
|
|
||||||
#bug_enter = 'https://bugzilla.redhat.com/enter_bug.cgi?component=python-nss&product=Fedora&classification=Fedora',
|
|
||||||
- setup(name = 'python-nss',
|
|
||||||
+ setup(name = name,
|
|
||||||
version = version,
|
|
||||||
description = 'Python bindings for Network Security Services (NSS) and Netscape Portable Runtime (NSPR)',
|
|
||||||
long_description = long_description,
|
|
||||||
@@ -393,12 +366,17 @@
|
|
||||||
package_dir = {'nss':'src'},
|
|
||||||
packages = ['nss'],
|
|
||||||
cmdclass = {'build_doc' : BuildDoc,
|
|
||||||
- 'build_api_doc' : BuildApiDoc,
|
|
||||||
+ 'build_sphinx' : SphinxBuildDoc,
|
|
||||||
'install_doc' : InstallDoc,
|
|
||||||
'build_py' : BuildPy,
|
|
||||||
'sdist' : SDist,
|
|
||||||
},
|
|
||||||
-
|
|
||||||
+ command_options={
|
|
||||||
+ 'build_sphinx': {
|
|
||||||
+ 'project': ('setup.py', name),
|
|
||||||
+ 'version': ('setup.py', version),
|
|
||||||
+ 'release': ('setup.py', release),
|
|
||||||
+ 'source_dir': ('setup.py', 'doc/sphinx/source')}},
|
|
||||||
)
|
|
||||||
|
|
||||||
return 0
|
|
Loading…
Reference in New Issue
Block a user