]> jfr.im git - irc/evilnet/x3.git/commitdiff
mod-python: add emb_adduser function
authorhstuart <redacted>
Mon, 12 Oct 2009 12:54:09 +0000 (12:54 +0000)
committerhstuart <redacted>
Mon, 12 Oct 2009 12:54:09 +0000 (12:54 +0000)
ChangeLog
src/mod-python.c

index d8a0b8fcf4988291c14f0d2e1a8716a697027462..cebcb9f89023c0d846c30cc5a5d8540ca376511b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,10 @@
 /***********************************************************************
 X3 ChangeLog
 
+2009-10-12  Henrik Stuart <evilnet@hstuart.dk>
+
+       * src/mod-python.c: add emb_adduser function.
+
 2009-10-12  Henrik Stuart <evilnet@hstuart.dk>
 
        * src/mod-python.c: add emb_svsjoin function.
index 867082aade7125d13406c613da8a9a257ff73d60..7f290f4f17e7e03d86423641e41517a8c327a7e9 100644 (file)
@@ -1121,6 +1121,26 @@ emb_svsjoin(UNUSED_ARG(PyObject* self_), PyObject* args) {
     return Py_None;
 }
 
+PyDoc_STRVAR(emb_adduser__doc__,
+        "adduser(nick, ident, hostname, description, modes) -> dict with user information\n\n"
+        "Adds a new local user with the given information.");
+
+static PyObject*
+emb_adduser(UNUSED_ARG(PyObject* self_), PyObject* args) {
+    char const* nick, *ident, *hostname, *desc, *modes;
+    struct userNode* user;
+    PyObject* retval;
+
+    if (!PyArg_ParseTuple(args, "sssss", &nick, &ident, &hostname, &desc, &modes))
+        return NULL;
+
+    user = AddLocalUser(nick, ident, hostname, desc, modes);
+
+    retval = pyobj_from_usernode(user);
+
+    return retval;
+}
+
 static PyMethodDef EmbMethods[] = {
     /* Communication methods */
     {"dump", emb_dump, METH_VARARGS, emb_dump__doc__},
@@ -1134,6 +1154,7 @@ static PyMethodDef EmbMethods[] = {
     {"svsnick", emb_svsnick, METH_VARARGS, emb_svsnick__doc__},
     {"svsquit", emb_svsquit, METH_VARARGS, emb_svsquit__doc__},
     {"svsjoin", emb_svsjoin, METH_VARARGS, emb_svsjoin__doc__},
+    {"adduser", emb_adduser, METH_VARARGS, emb_adduser__doc__},
 //TODO: svsmode, svsident, nick, quit, join, part, ident, vhost
 //TODO:    {"shun"
 //TODO:    {"unshun"