]> git.sur5r.net Git - openldap/commitdiff
connid is unsigned; offset real conns by maxrid + 1
authorPierangelo Masarati <ando@openldap.org>
Sat, 21 Nov 2009 21:44:45 +0000 (21:44 +0000)
committerPierangelo Masarati <ando@openldap.org>
Sat, 21 Nov 2009 21:44:45 +0000 (21:44 +0000)
servers/slapd/connection.c
servers/slapd/slap.h

index 2f426d6106252d73aea57bf97d7e2c2f6479347b..7f8331f5329875b6bc8b486f7377b5f00383ac7b 100644 (file)
@@ -48,7 +48,7 @@ static ldap_pvt_thread_mutex_t connections_mutex;
 static Connection *connections = NULL;
 
 static ldap_pvt_thread_mutex_t conn_nextid_mutex;
-static unsigned long conn_nextid = 0;
+static unsigned long conn_nextid = SLAPD_SYNC_SYNCCONN_OFFSET;
 
 static const char conn_lost_str[] = "connection lost";
 
index bc31eea45ed6459b51dd93c0b2c26130dd30c0a8..076b898a5b6ac60b4f2434d98939a6109bc3ac57 100644 (file)
@@ -1701,13 +1701,15 @@ typedef BackendDB Backend;
 
 struct syncinfo_s;
 
-/* fake conn connid constructed as SLAPD_SYNC_CONN_OFFSET - rid */
-#define SLAPD_SYNC_SYNCCONN_OFFSET (-1000)
-#define SLAPD_SYNC_IS_SYNCCONN(connid) ((connid) <= SLAPD_SYNC_SYNCCONN_OFFSET)
-#define SLAPD_SYNC_RID2SYNCCONN(rid) (SLAPD_SYNC_SYNCCONN_OFFSET - (rid))
-
 #define SLAP_SYNC_RID_MAX      999
 #define SLAP_SYNC_SID_MAX      4095    /* based on liblutil/csn.c field width */
+
+/* fake conn connid constructed as rid; real connids start
+ * at SLAPD_SYNC_CONN_OFFSET */
+#define SLAPD_SYNC_SYNCCONN_OFFSET (SLAP_SYNC_RID_MAX + 1)
+#define SLAPD_SYNC_IS_SYNCCONN(connid) ((connid) < SLAPD_SYNC_SYNCCONN_OFFSET)
+#define SLAPD_SYNC_RID2SYNCCONN(rid) (rid)
+
 #define SLAP_SYNCUUID_SET_SIZE 256
 
 struct sync_cookie {