Merge AddService(), AddClone() into AddLocalUser()
authorMichael Poole <mdpoole@troilus.org>
Fri, 22 Sep 2006 01:48:00 +0000 (01:48 +0000)
committerMichael Poole <mdpoole@troilus.org>
Fri, 22 Sep 2006 01:48:00 +0000 (01:48 +0000)
src/chanserv.c (init_chanserv): Convert AddService() call to AddLocalUser().

src/global.c (init_global): Likewise.

src/mod-helpserv.c (register_helpserv): Likewise.

src/modcmd.c (cmd_service_add): Likewise.
  (modcmd_load_bots): Likewise.

src/nickserv.c (regex.h): Fall back to rxposix.h from local rx package.
  (init_nickserv): Convert AddService() call to AddLocalUser().

src/opserv.c (opserv_add_reserve): Convert AddClone() call to AddLocalUser().
  (cmd_clone): Likewise.
  (add_reserved): Likewise.
  (init_opserv): Convert AddService() call to AddLocalUser().

src/proto-bahamut.c (AddService): Convert into AddLocalUser().
  (AddClone): Delete.

src/proto-p10.c (AddService): Convert into AddLocalUser().
  (AddClone): Delete.

src/proto.h (AddService): Convert into AddLocalUser().
  (AddClone): Delete.
git-archimport-id: srvx@srvx.net--2006/srvx--devo--1.3--patch-35

ChangeLog
src/chanserv.c
src/global.c
src/mod-helpserv.c
src/modcmd.c
src/nickserv.c
src/opserv.c
src/proto-bahamut.c
src/proto-p10.c
src/proto.h

index 1f70b3f32a46b101d12834514680ea05c8afd351..f44c8d2b4075306ccb19bcafab4a1872cd2ed186 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,45 @@
 # arch-tag: automatic-ChangeLog--srvx@srvx.net--2006/srvx--devo--1.3
 #
 
+2006-09-22 01:48:00 GMT        Michael Poole <mdpoole@troilus.org>     patch-35
+
+    Summary:
+      Merge AddService(), AddClone() into AddLocalUser()
+    Revision:
+      srvx--devo--1.3--patch-35
+
+    src/chanserv.c (init_chanserv): Convert AddService() call to AddLocalUser().
+    
+    src/global.c (init_global): Likewise.
+    
+    src/mod-helpserv.c (register_helpserv): Likewise.
+    
+    src/modcmd.c (cmd_service_add): Likewise.
+      (modcmd_load_bots): Likewise.
+    
+    src/nickserv.c (regex.h): Fall back to rxposix.h from local rx package.
+      (init_nickserv): Convert AddService() call to AddLocalUser().
+    
+    src/opserv.c (opserv_add_reserve): Convert AddClone() call to AddLocalUser().
+      (cmd_clone): Likewise.
+      (add_reserved): Likewise.
+      (init_opserv): Convert AddService() call to AddLocalUser().
+    
+    src/proto-bahamut.c (AddService): Convert into AddLocalUser().
+      (AddClone): Delete.
+    
+    src/proto-p10.c (AddService): Convert into AddLocalUser().
+      (AddClone): Delete.
+    
+    src/proto.h (AddService): Convert into AddLocalUser().
+      (AddClone): Delete.
+
+    modified files:
+     ChangeLog src/chanserv.c src/global.c src/mod-helpserv.c
+     src/modcmd.c src/nickserv.c src/opserv.c src/proto-bahamut.c
+     src/proto-p10.c src/proto.h
+
+
 2006-09-22 01:35:03 GMT        Michael Poole <mdpoole@troilus.org>     patch-34
 
     Summary:
index 3ee0aef4ad3c67d96524e11500c66a1e1cc311a3..e9196a3aa82863f6bc10ba80009911d95dc35fbd 100644 (file)
@@ -7373,7 +7373,7 @@ init_chanserv(const char *nick)
     if(nick)
     {
         const char *modes = conf_get_data("services/chanserv/modes", RECDB_QSTRING);
-        chanserv = AddService(nick, modes ? modes : NULL, "Channel Services", NULL);
+        chanserv = AddLocalUser(nick, nick, NULL, "Channel Services", modes);
         service_register(chanserv)->trigger = '!';
         reg_chanmsg_func('\001', chanserv, chanserv_ctcp_check);
     }
index d92e5bd6f150f58a1d35bed30b1bc72f531f1a73..d1aea5d46c27e6180c1b61a2d95c9dba4b9f60e9 100644 (file)
@@ -704,7 +704,7 @@ init_global(const char *nick)
     if(nick)
     {
         const char *modes = conf_get_data("services/global/modes", RECDB_QSTRING);
-        global = AddService(nick, modes ? modes : NULL, "Global Services", NULL);
+        global = AddLocalUser(nick, nick, NULL, "Global Services", modes);
         global_service = service_register(global);
     }
     saxdb_register("Global", global_saxdb_read, global_saxdb_write);
index e8053d541c658f4202e76b401aa20d221695d1da..3b8130e1d59bab732084bed6112582b5729ecc52 100644 (file)
@@ -2601,7 +2601,7 @@ static struct helpserv_bot *register_helpserv(const char *nick, const char *help
      * it's a harmless default */
     hs = calloc(1, sizeof(struct helpserv_bot));
 
-    if (!(hs->helpserv = AddService(nick, "+iok", helpserv_conf.description, NULL))) {
+    if (!(hs->helpserv = AddLocalUser(nick, nick, NULL, helpserv_conf.description, NULL))) {
         free(hs);
         return NULL;
     }
index 2e833002ddd5b10e4c310b71917b796fd95d58a2..fb811e89385acd9020171978623ce2d63847344a 100644 (file)
@@ -1733,7 +1733,7 @@ static MODCMD_FUNC(cmd_service_add) {
         reply("MCMSG_ALREADY_SERVICE", bot->nick);
         return 0;
     }
-    bot = AddService(nick, NULL, desc, hostname);
+    bot = AddLocalUser(nick, nick, hostname, desc, NULL);
     service_register(bot);
     reply("MCMSG_NEW_SERVICE", bot->nick);
     return 1;
@@ -2052,7 +2052,7 @@ modcmd_load_bots(struct dict *db, int default_nick) {
         hostname = database_get_data(rd->d.object, "hostname", RECDB_QSTRING);
         if (desc) {
             if (!svc)
-                svc = service_register(AddService(nick, NULL, desc, hostname));
+                svc = service_register(AddLocalUser(nick, nick, hostname, desc, NULL));
             else if (hostname)
                 strcpy(svc->bot->hostname, hostname);
             desc = database_get_data(rd->d.object, "trigger", RECDB_QSTRING);
index 54c6fbc194b62b8b62656315477efc8b04974583..4b0e374ebbb1b4712a9c41b82dbd7134f52783d4 100644 (file)
@@ -1,5 +1,5 @@
 /* nickserv.c - Nick/authentication service
- * Copyright 2000-2004 srvx Development Team
+ * Copyright 2000-2006 srvx Development Team
  *
  * This file is part of srvx.
  *
@@ -28,7 +28,9 @@
 #include "timeq.h"
 
 #ifdef HAVE_REGEX_H
-#include <regex.h>
+# include <regex.h>
+#else
+# include "rx/rxposix.h"
 #endif
 
 #define NICKSERV_CONF_NAME "services/nickserv"
@@ -3840,7 +3842,7 @@ init_nickserv(const char *nick)
 
     if (nick) {
         const char *modes = conf_get_data("services/nickserv/modes", RECDB_QSTRING);
-        nickserv = AddService(nick, modes ? modes : NULL, "Nick Services", NULL);
+        nickserv = AddLocalUser(nick, nick, NULL, "Nick Services", modes);
         nickserv_service = service_register(nickserv);
     }
     saxdb_register("NickServ", nickserv_saxdb_read, nickserv_saxdb_write);
index 5751df13402f722df6218e6220c41349a226fe81..ee7b6b8b278f8028bc5a244b3ce23c83d6da08d5 100644 (file)
@@ -1646,7 +1646,7 @@ opserv_add_reserve(struct svccmd *cmd, struct userNode *user, const char *nick,
            return NULL;
        }
     }
-    if ((resv = AddClone(nick, ident, host, desc))) {
+    if ((resv = AddLocalUser(nick, ident, host, desc, "+i"))) {
         dict_insert(opserv_reserved_nick_dict, resv->nick, resv);
     }
     return resv;
@@ -2248,7 +2248,7 @@ static MODCMD_FUNC(cmd_clone)
            reply("OSMSG_NOT_A_HOSTMASK");
            return 0;
        }
-       if (!(clone = AddClone(argv[2], ident, argv[3]+i, userinfo))) {
+       if (!(clone = AddLocalUser(argv[2], ident, argv[3]+i, userinfo, "+i"))) {
             reply("OSMSG_CLONE_FAILED", argv[2]);
             return 0;
         }
@@ -2429,7 +2429,7 @@ int add_reserved(const char *key, void *data, void *extra)
        log_module(OS_LOG, LOG_ERROR, "Missing description for reserve of %s", key);
        return 0;
     }
-    if ((reserve = AddClone(key, ident, hostname, desc))) {
+    if ((reserve = AddLocalUser(key, ident, hostname, desc, "+i"))) {
         reserve->modes |= FLAGS_PERSISTENT;
         dict_insert(extra, reserve->nick, reserve);
     }
@@ -4097,7 +4097,7 @@ init_opserv(const char *nick)
     OS_LOG = log_register_type("OpServ", "file:opserv.log");
     if (nick) {
         const char *modes = conf_get_data("services/opserv/modes", RECDB_QSTRING);
-        opserv = AddService(nick, modes ? modes : NULL, "Oper Services", NULL);
+        opserv = AddLocalUser(nick, nick, NULL, "Oper Services", modes);
     }
     conf_register_reload(opserv_conf_read);
 
index d493744ce00892fee8138d05e5544926469e1750..faa89fe9a1301478d3def034187a2219897ad942 100644 (file)
@@ -1,5 +1,5 @@
 /* proto-bahamut.c - IRC protocol output
- * Copyright 2000-2004 srvx Development Team
+ * Copyright 2000-2006 srvx Development Team
  *
  * This file is part of srvx.
  *
@@ -171,10 +171,14 @@ AddUser(struct server* uplink, const char *nick, const char *ident, const char *
 }
 
 struct userNode *
-AddService(const char *nick, const char *modes, const char *desc, const char *hostname) {
+AddLocalUser(const char *nick, const char *ident, const char *hostname, const char *desc, const char *modes)
+{
     time_t timestamp = now;
     struct userNode *old_user = GetUserH(nick);
     static const irc_in_addr_t ipaddr;
+
+    if (!modes)
+        modes = "+oikr";
     if (old_user) {
         if (IsLocal(old_user))
             return old_user;
@@ -182,20 +186,7 @@ AddService(const char *nick, const char *modes, const char *desc, const char *ho
     }
     if (!hostname)
         hostname = self->name;
-    return AddUser(self, nick, nick, hostname, modes ? modes : "+oikr", desc, timestamp, ipaddr, 0);
-}
-
-struct userNode *
-AddClone(const char *nick, const char *ident, const char *hostname, const char *desc) {
-    time_t timestamp = now;
-    struct userNode *old_user = GetUserH(nick);
-    static const irc_in_addr_t ipaddr;
-    if (old_user) {
-        if (IsLocal(old_user))
-            return old_user;
-        timestamp = old_user->timestamp - 1;
-    }
-    return AddUser(self, nick, ident, hostname, "+ir", desc, timestamp, ipaddr, 0);
+    return AddUser(self, nick, ident, hostname, modes, desc, timestamp, ipaddr, 0);
 }
 
 void
index 75f9e2b4ecda2e34cb1ce55bf6937a09dd9eb764..dce0d98b3a75e8e280c51f142545fe2df5c9bf86 100644 (file)
@@ -1904,13 +1904,15 @@ void DelServer(struct server* serv, int announce, const char *message)
 }
 
 struct userNode *
-AddService(const char *nick, const char *modes, const char *desc, const char *hostname)
+AddLocalUser(const char *nick, const char *ident, const char *hostname, const char *desc, const char *modes)
 {
     char numeric[COMBO_NUMERIC_LEN+1];
     int local_num = get_local_numeric();
     time_t timestamp = now;
     struct userNode *old_user = GetUserH(nick);
 
+    if (!modes)
+        modes = "+oik";
     if (old_user) {
         if (IsLocal(old_user))
             return old_user;
@@ -1923,7 +1925,7 @@ AddService(const char *nick, const char *modes, const char *desc, const char *ho
     if (!hostname)
         hostname = self->name;
     make_numeric(self, local_num, numeric);
-    return AddUser(self, nick, nick, hostname, modes ? modes : "+oik", numeric, desc, now, "AAAAAA");
+    return AddUser(self, nick, ident, hostname, modes, numeric, desc, now, "AAAAAA");
 }
 
 struct userNode *
index 8f6bb0b31efc19d4cabb14e56e3cd073df7a77e3..451c889f365dbc4dafb774731b48b4fb80b169ab 100644 (file)
@@ -167,8 +167,7 @@ void irc_numeric(struct userNode *user, unsigned int num, const char *format, ..
 /* stuff originally from other headers that is really protocol-specific */
 int IsChannelName(const char *name);
 int is_valid_nick(const char *nick);
-struct userNode *AddService(const char *nick, const char *modes, const char *desc, const char *hostname);
-struct userNode *AddClone(const char *nick, const char *ident, const char *hostname, const char *desc);
+struct userNode *AddLocalUser(const char *nick, const char *ident, const char *hostname, const char *desc, const char *modes);
 struct server* AddServer(struct server* uplink, const char *name, int hops, time_t boot, time_t link, const char *numeric, const char *description);
 void DelServer(struct server* serv, int announce, const char *message);
 void DelUser(struct userNode* user, struct userNode *killer, int announce, const char *why);