fixed devnull id's
authorpk910 <philipp@zoelle1.de>
Sun, 15 Sep 2013 19:04:06 +0000 (21:04 +0200)
committerpk910 <philipp@zoelle1.de>
Sun, 15 Sep 2013 19:04:06 +0000 (21:04 +0200)
src/opserv.c

index 6c6ac33d6046cde0ca855c06e5836219779454a5..bd52413b6ef6453e6db78c32f8b60f512ad4b671 100644 (file)
@@ -79,7 +79,6 @@
 #define KEY_ISSUER "issuer"
 #define KEY_ISSUED "issued"
 #define KEY_DEVNULL_CLASSES "classes"
-#define KEY_DEVNULL_LASTID "devnull_id"
 #define KEY_DEVNULL_ID "id"
 #define KEY_DEVNULL_NAME "class"
 #define KEY_DEVNULL_MODE "modes"
@@ -2825,9 +2824,11 @@ opserv_add_devnull_class(const char *name, unsigned int id, unsigned long modes,
     th = calloc(1, sizeof(*th));
     if (!th)
         return;
-    if(id)
+    if(id) {
         th->id = id;
-    else
+        if(id >= devnull_last_id)
+            devnull_last_id = id+1;
+    } else
         th->id = (++devnull_last_id);
     th->name = strdup(name);
     th->modes = modes;
@@ -2919,8 +2920,6 @@ opserv_saxdb_read(struct dict *conf_db)
         if ((str = database_get_data(object, KEY_TIME, RECDB_QSTRING)))
             max_clients_time = atoi(str);
     }
-    if ((str = database_get_data(object, KEY_DEVNULL_LASTID, RECDB_QSTRING)))
-        devnull_last_id = atoi(str);
     if ((object = database_get_data(conf_db, KEY_TRUSTED_HOSTS, RECDB_OBJECT)))
         dict_foreach(object, trusted_host_read, opserv_trusted_hosts);
     if ((object = database_get_data(conf_db, KEY_DEVNULL_CLASSES, RECDB_OBJECT)))
@@ -3004,7 +3003,6 @@ opserv_saxdb_write(struct saxdb_context *ctx)
         }
         saxdb_end_record(ctx);
     }
-    saxdb_write_int(ctx, KEY_DEVNULL_LASTID, devnull_last_id);
     /* gags */
     if (gagList) {
         struct gag_entry *gag;
@@ -4445,7 +4443,7 @@ static MODCMD_FUNC(cmd_adddevnull)
         return 0;
     }
     
-    opserv_add_devnull_class(argv[1], (++devnull_last_id), 0, 0, 0);
+    opserv_add_devnull_class(argv[1], 0, 0, 0, 0);
     reply("OSMSG_DEVNULL_ADDED",argv[1]);
     return 1;
 }