diff -ruN -x configure -x *~ -x ircd-hybrid-6.0.orig -x *.rej ircd-hybrid-6.0.orig/include/patchlevel.h ircd-hybrid-6.0/include/patchlevel.h
--- ircd-hybrid-6.0.orig/include/patchlevel.h	Mon Jun 25 10:13:30 2001
+++ ircd-hybrid-6.0/include/patchlevel.h	Mon Jun 25 10:11:24 2001
@@ -17,5 +17,5 @@
  */
 
 #ifndef PATCHLEVEL
-#define PATCHLEVEL    "dancer-ircd-0.9.1.3"
+#define PATCHLEVEL    "dancer-ircd-0.9.1.4"
 #endif
diff -ruN -x configure -x *~ -x ircd-hybrid-6.0.orig -x *.rej ircd-hybrid-6.0.orig/src/m_chall.c ircd-hybrid-6.0/src/m_chall.c
--- ircd-hybrid-6.0.orig/src/m_chall.c	Mon Jun 25 10:13:29 2001
+++ ircd-hybrid-6.0/src/m_chall.c	Mon Jun 25 10:12:55 2001
@@ -100,7 +100,7 @@
   if (parc < 5)
     {
       sendto_one(cptr, "ERROR: Invalid challenge");
-      sendto_ops_flag(UMODE_SERVNOTICE, "Invalid CHALL from remote host for %s", host);
+      sendto_ops_flag(UMODE_SEEROUTING, "Invalid CHALL from remote host for %s", host);
       return 0;
     }
 
@@ -110,24 +110,24 @@
 
   /* See if we got c and n lines. */
   if (!(n_conf = find_conf_by_name(host, CONF_NOCONNECT_SERVER))) {
-    sendto_ops_flag(UMODE_SERVNOTICE, "Challenge rejected. No N line for server %s", host);
+    sendto_ops_flag(UMODE_SEEROUTING, "Challenge rejected. No N line for server %s", host);
     log(L_NOTICE, "Challenge rejected. No N line for server %s", host);
-    sendto_one(cptr, "ERROR :Access denied. No N line"); 
+    sendto_one(cptr, "ERROR :Access denied. No N line"); 
     return exit_client(cptr, cptr, cptr, "Access denied. No N line");    
   } 
 
   if (!(c_conf = find_conf_by_name(host, CONF_CONNECT_SERVER))) {
-    sendto_ops_flag(UMODE_SERVNOTICE, "Challenge rejected. No C line for server %s", host);
+    sendto_ops_flag(UMODE_SEEROUTING, "Challenge rejected. No C line for server %s", host);
     log(L_NOTICE, "Challenge rejected. No C line for server %s", host);
-    sendto_one(cptr, "ERROR :Access denied. No C line"); 
+    sendto_one(cptr, "ERROR :Access denied. No C line"); 
     return exit_client(cptr, cptr, cptr, "Access denied. No C line");    
   }
   
   /* Check if the ip matches the c/n IPs */
   if ( (cptr->ip.s_addr != c_conf->ipnum.s_addr) || (cptr->ip.s_addr != n_conf->ipnum.s_addr)) {
-    sendto_ops_flag(UMODE_SERVNOTICE, "Challenge rejected. C/N line IP doesn't match connection");
+    sendto_ops_flag(UMODE_SEEROUTING, "Challenge rejected. C/N line IP doesn't match connection");
     log(L_NOTICE, "Challenge rejected. C/N line IP doesn't match connection");
-    sendto_one(cptr, "ERROR :Access denied. C/N line don't match you"); 
+    sendto_one(cptr, "ERROR :Access denied. C/N line don't match you"); 
     return exit_client(cptr, cptr, cptr, "Access denied. C/N line don't match");        
   }
   
diff -ruN -x configure -x *~ -x ircd-hybrid-6.0.orig -x *.rej ircd-hybrid-6.0.orig/src/m_map.c ircd-hybrid-6.0/src/m_map.c
--- ircd-hybrid-6.0.orig/src/m_map.c	Mon Jun 25 10:13:30 2001
+++ ircd-hybrid-6.0/src/m_map.c	Mon Jun 25 10:01:18 2001
@@ -55,7 +55,7 @@
     {
       if (aconf->map_done)
 	{
-	  sendto_ops_flag(UMODE_DEBUG, "WTF: already done %s (%d) in m_map()", current->name, aconf->map_done);
+	  sendto_ops_flag(UMODE_DEBUG, "WTF: already done %s (%d, %s, %d) in m_map()", current->name, aconf->map_done, aconf->name, aconf);
 	}
       aconf->map_done = 1;
     }
@@ -131,6 +131,7 @@
 	      continue;
 	    if (conf->map_done)
 	      {
+		sendto_ops_flag(UMODE_DEBUG, "clearing conf->map_done in m_map(), conf == %d, conf->name == %s, conf->map_done == %s", conf, conf->name, conf->map_done);
 		conf->map_done = 0; /* clear it for the next map */
 		continue;
 	      }
diff -ruN -x configure -x *~ -x ircd-hybrid-6.0.orig -x *.rej ircd-hybrid-6.0.orig/src/m_version.c ircd-hybrid-6.0/src/m_version.c
--- ircd-hybrid-6.0.orig/src/m_version.c	Mon Jun 25 10:13:30 2001
+++ ircd-hybrid-6.0/src/m_version.c	Mon Jun 25 10:05:39 2001
@@ -97,7 +97,7 @@
 {
   if (IsSetOperRemote(sptr))
      {
-       if ((parc > 0) && (strcmp(parv[1], "*") == 0))
+       if ((parc > 1) && (strcmp(parv[1], "*") == 0))
 	 {
 	   sendto_serv_butone(cptr, ":%s VERSION :*", sptr->name);
 	   sendto_one(sptr, form_str(RPL_VERSION), me.name,
diff -ruN -x configure -x *~ -x ircd-hybrid-6.0.orig -x *.rej ircd-hybrid-6.0.orig/src/s_user.c ircd-hybrid-6.0/src/s_user.c
--- ircd-hybrid-6.0.orig/src/s_user.c	Mon Jun 25 10:13:30 2001
+++ ircd-hybrid-6.0/src/s_user.c	Mon Jun 25 10:07:40 2001
@@ -2035,6 +2035,7 @@
 			    int mode = user_modes_from_c_to_bitmask[(unsigned char)*m];
 			    if (CanGrantModes(sptr))
 			      {
+				sendto_ops_flag(UMODE_DEBUG, "In grant mode for %s, mode %d, allowed %d", sptr->name, mode, TestBit(sptr->allowed_umodes, mode));
 				if ((what == MODE_ADD) && (mode != UMODE_GRANT) /* You may not grant the ability to grant */
 				    && TestBit(sptr->allowed_umodes, mode))
 				  {
