chiark / gitweb /
algorithms.c: Fix docstring for `GCHash.hashsz'.
[catacomb-python] / key.c
diff --git a/key.c b/key.c
index 7deb3825e71deda4b2a4f307ef218a4d491042e0..a3cd200b1189a4f9f05aec1e98b702468c898b67 100644 (file)
--- a/key.c
+++ b/key.c
@@ -104,7 +104,7 @@ static PyMethodDef keyexc_pymethods[] = {
 
 static void keyexc_raise(int err)
 {
-  PyObject *arg = Py_BuildValue("(i)", err);
+  PyObject *arg = Py_BuildValue("(is)", err, key_strerror(err));
   if (arg) PyErr_SetObject(keyexc, arg);
   Py_XDECREF(arg);
 }
@@ -467,7 +467,7 @@ static PyMethodDef keydata_pymethods[] = {
   METH (split,                 "KD.split()")
   KWMETH(write,                        "KD.write(filter = <any>) -> STRING")
   KWMETH(encode,               "KD.encode(filter = <any>) -> BYTES")
-  KWMETH(copy,                 "KD.encode(filter = <any>) -> KD")
+  KWMETH(copy,                 "KD.copy(filter = <any>) -> KD")
   METH (plock,                 "KD.plock(TAG) -> ENCRYPTED-KD")
   METH (lock,                  "KD.lock(KEY) -> ENCRYPTED-KD")
 #undef METHNAME
@@ -483,7 +483,7 @@ static PyGetSetDef keydata_pygetset[] = {
 
 static PyTypeObject keydata_pytype_skel = {
   PyObject_HEAD_INIT(0) 0,             /* Header */
-  "catacomb.KeyData",                  /* @tp_name@ */
+  "KeyData",                           /* @tp_name@ */
   sizeof(keydata_pyobj),               /* @tp_basicsize@ */
   0,                                   /* @tp_itemsize@ */
 
@@ -560,7 +560,7 @@ static PyGetSetDef keydatabin_pygetset[] = {
 
 static PyTypeObject keydatabin_pytype_skel = {
   PyObject_HEAD_INIT(0) 0,             /* Header */
-  "catacomb.KeyDataBinary",            /* @tp_name@ */
+  "KeyDataBinary",                     /* @tp_name@ */
   sizeof(keydata_pyobj),               /* @tp_basicsize@ */
   0,                                   /* @tp_itemsize@ */
 
@@ -697,7 +697,7 @@ static PyGetSetDef keydataenc_pygetset[] = {
 
 static PyTypeObject keydataenc_pytype_skel = {
   PyObject_HEAD_INIT(0) 0,             /* Header */
-  "catacomb.KeyDataEncrypted",         /* @tp_name@ */
+  "KeyDataEncrypted",                  /* @tp_name@ */
   sizeof(keydata_pyobj),               /* @tp_basicsize@ */
   0,                                   /* @tp_itemsize@ */
 
@@ -773,7 +773,7 @@ static PyGetSetDef keydatamp_pygetset[] = {
 
 static PyTypeObject keydatamp_pytype_skel = {
   PyObject_HEAD_INIT(0) 0,             /* Header */
-  "catacomb.KeyDataMP",                        /* @tp_name@ */
+  "KeyDataMP",                         /* @tp_name@ */
   sizeof(keydata_pyobj),               /* @tp_basicsize@ */
   0,                                   /* @tp_itemsize@ */
 
@@ -848,7 +848,7 @@ static PyGetSetDef keydatastr_pygetset[] = {
 
 static PyTypeObject keydatastr_pytype_skel = {
   PyObject_HEAD_INIT(0) 0,             /* Header */
-  "catacomb.KeyDataString",            /* @tp_name@ */
+  "KeyDataString",                     /* @tp_name@ */
   sizeof(keydata_pyobj),               /* @tp_basicsize@ */
   0,                                   /* @tp_itemsize@ */
 
@@ -928,7 +928,7 @@ static PyGetSetDef keydataec_pygetset[] = {
 
 static PyTypeObject keydataec_pytype_skel = {
   PyObject_HEAD_INIT(0) 0,             /* Header */
-  "catacomb.KeyDataECPt",              /* @tp_name@ */
+  "KeyDataECPt",                       /* @tp_name@ */
   sizeof(keydata_pyobj),               /* @tp_basicsize@ */
   0,                                   /* @tp_itemsize@ */
 
@@ -999,7 +999,7 @@ static void subkeyiter_pydealloc(PyObject *me)
 
 static PyTypeObject subkeyiter_pytype_skel = {
   PyObject_HEAD_INIT(0) 0,             /* Header */
-  "catacomb.SubKeyIter",               /* @tp_name@ */
+  "SubKeyIter",                                /* @tp_name@ */
   sizeof(subkeyiter_pyobj),            /* @tp_basicsize@ */
   0,                                   /* @tp_itemsize@ */
 
@@ -1134,7 +1134,7 @@ static PyMappingMethods keydatastruct_pymapping = {
 
 static PyTypeObject keydatastruct_pytype_skel = {
   PyObject_HEAD_INIT(0) 0,             /* Header */
-  "catacomb.KeyDataStructured",                /* @tp_name@ */
+  "KeyDataStructured",                 /* @tp_name@ */
   sizeof(keydata_pyobj),               /* @tp_basicsize@ */
   0,                                   /* @tp_itemsize@ */
 
@@ -1210,7 +1210,7 @@ static void keyattriter_pydealloc(PyObject *me)
 
 static PyTypeObject keyattriter_pytype_skel = {
   PyObject_HEAD_INIT(0) 0,             /* Header */
-  "catacomb.KeyAttributeIter",         /* @tp_name@ */
+  "KeyAttributeIter",                  /* @tp_name@ */
   sizeof(keyattriter_pyobj),           /* @tp_basicsize@ */
   0,                                   /* @tp_itemsize@ */
 
@@ -1320,7 +1320,7 @@ static PyMappingMethods keyattrs_pymapping = {
 
 static PyTypeObject keyattrs_pytype_skel = {
   PyObject_HEAD_INIT(0) 0,             /* Header */
-  "catacomb.KeyAttributes",            /* @tp_name@ */
+  "KeyAttributes",                     /* @tp_name@ */
   sizeof(keyattrs_pyobj),              /* @tp_basicsize@ */
   0,                                   /* @tp_itemsize@ */
 
@@ -1385,16 +1385,16 @@ static PyObject *key_pynew(PyTypeObject *ty, PyObject *arg, PyObject *kw)
   PyObject *kfobj;
   uint32 id;
   char *type;
-  long exptime = KEXP_FOREVER;
+  unsigned long exptime = KEXP_FOREVER;
   static char *kwlist[] = { "keyfile", "id", "type", "exptime", 0 };
   key *k;
   int err;
 
-  if (!PyArg_ParseTupleAndKeywords(arg, kw, "O!O&sl:new", kwlist,
+  if (!PyArg_ParseTupleAndKeywords(arg, kw, "O!O&s|O&:new", kwlist,
                                   keyfile_pytype, &kfobj, convu32, &id,
-                                  &type, &exptime))
+                                  &type, convulong, &exptime))
     goto end;
-  if ((err = key_new(KEYFILE_KF(kfobj), id, type, exptime, &k)) == 0)
+  if ((err = key_new(KEYFILE_KF(kfobj), id, type, exptime, &k)) != 0)
     KEYERR(err);
   return (key_dowrap(ty, kfobj, k));
 end:
@@ -1622,7 +1622,7 @@ static PyGetSetDef key_pygetset[] = {
 
 static PyTypeObject key_pytype_skel = {
   PyObject_HEAD_INIT(0) 0,             /* Header */
-  "catacomb.Key",                      /* @tp_name@ */
+  "Key",                               /* @tp_name@ */
   sizeof(key_pyobj),                   /* @tp_basicsize@ */
   0,                                   /* @tp_itemsize@ */
 
@@ -1696,7 +1696,7 @@ static void keyiter_pydealloc(PyObject *me)
 
 static PyTypeObject keyiter_pytype_skel = {
   PyObject_HEAD_INIT(0) 0,             /* Header */
-  "catacomb.KeyFileIter",              /* @tp_name@ */
+  "KeyFileIter",                       /* @tp_name@ */
   sizeof(keyiter_pyobj),               /* @tp_basicsize@ */
   0,                                   /* @tp_itemsize@ */
 
@@ -2017,7 +2017,7 @@ static PyMappingMethods keyfile_pymapping = {
 
 static PyTypeObject keyfile_pytype_skel = {
   PyObject_HEAD_INIT(0) 0,             /* Header */
-  "catacomb.KeyFile",                  /* @tp_name@ */
+  "KeyFile",                           /* @tp_name@ */
   sizeof(keyfile_pyobj),               /* @tp_basicsize@ */
   0,                                   /* @tp_itemsize@ */
 
@@ -2081,7 +2081,7 @@ static PyMethodDef methods[] = {
           "KeyData.readflags(STRING) -> (FLAGS, MASK, REST)")
   METH (_KeyData_writeflags,   "KeyData.writeflags(FLAGS) -> STRING")
   METH (_KeyData_read,         "KeyData.read(STRING) -> (KD, REST)")
-  METH (_KeyData_decode,       "KeyData.read(BYTES) -> KD")
+  METH (_KeyData_decode,       "KeyData.decode(BYTES) -> KD")
   METH (barf,                  "barf(ERR)")
 #undef METHNAME
   { 0 }