diff -uNrd -x CVS ircd-hybrid-6.dist/README.CYGSTATUS ircd-hybrid-6/README.CYGSTATUS
--- ircd-hybrid-6.dist/README.CYGSTATUS	Wed Dec 31 19:00:00 1969
+++ ircd-hybrid-6/README.CYGSTATUS	Fri Feb  8 18:40:52 2002
@@ -0,0 +1,26 @@
++cygstatus Patches:
+
+Since Cygwin installs almost always run in the foreground, it's handy to
+provide status information into it's window.  This patch sends a number of
+important messages to the "console", as well as periodically sending the
+server status message to the screen.
+
+For example:
+
+STATUS (Fri Feb  8 18:29:52 2002) ----
+  Local:  1/1  Global:  42/43
+  Opers:  24  Channels:  8  Servers:  27
+ ---
+
++cygstatus1
+
+Against:  6.3rc6
+
+First release:  status, rejects, kills, kline add/remove/expires, dlines,
+glines, server introductions, server splits, and sucessful /oper's are
+logged to the "console"
+
+Also, for cygwin only, make SIGINT (CTRL-C) exit the server rather than
+restart the server.
+
+8 Feb 2002
diff -uNrd -x CVS ircd-hybrid-6.dist/include/config.h ircd-hybrid-6/include/config.h
--- ircd-hybrid-6.dist/include/config.h	Fri Feb  8 16:03:11 2002
+++ ircd-hybrid-6/include/config.h	Fri Feb  8 17:34:23 2002
@@ -373,6 +373,15 @@
  */
 #define WHOIS_WAIT 1
 
+#ifdef __CYGWIN__
+/* CYGWIN_STATUS_TIME - The number of seconds (on average) between status
+ * announcements to the output window.  This is only valid on Cygwin systems
+ * running in the foreground.  The default time is 600 seconds, 10 minutes
+ * -Hwy
+ */
+#define CYGWIN_STATUS_TIME 600
+#endif /* __CYGWIN__ */
+
 /* PACE_WAIT - minimum seconds between use of MOTD, INFO, HELP, LINKS, TRACE
  * -Dianora
  */
diff -uNrd -x CVS ircd-hybrid-6.dist/include/config.h.dist ircd-hybrid-6/include/config.h.dist
--- ircd-hybrid-6.dist/include/config.h.dist	Fri Feb  8 16:03:11 2002
+++ ircd-hybrid-6/include/config.h.dist	Fri Feb  8 17:29:27 2002
@@ -373,6 +373,15 @@
  */
 #define WHOIS_WAIT 1
 
+#ifdef __CYGWIN__
+/* CYGWIN_STATUS_TIME - The number of seconds (on average) between status
+ * announcements to the output window.  This is only valid on Cygwin systems
+ * running in the foreground.  The default time is 600 seconds, 10 minutes
+ * -Hwy
+ */
+#define CYGWIN_STATUS_TIME 600
+#endif /* __CYGWIN__ */
+
 /* PACE_WAIT - minimum seconds between use of MOTD, INFO, HELP, LINKS, TRACE
  * -Dianora
  */
diff -uNrd -x CVS ircd-hybrid-6.dist/include/patchlevel.h ircd-hybrid-6/include/patchlevel.h
--- ircd-hybrid-6.dist/include/patchlevel.h	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/include/patchlevel.h	Fri Feb  8 18:27:50 2002
@@ -19,5 +19,5 @@
  */
 
 #ifndef PATCHLEVEL
-#define PATCHLEVEL    "2.8/hybrid-6.3rc6"
+#define PATCHLEVEL    "2.8/hybrid-6.3rc6+cygstatus1"
 #endif
diff -uNrd -x CVS ircd-hybrid-6.dist/src/channel.c ircd-hybrid-6/src/channel.c
--- ircd-hybrid-6.dist/src/channel.c	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/src/channel.c	Fri Feb  8 16:10:52 2002
@@ -1615,6 +1615,10 @@
                   sendto_realops("%s!%s@%s locally juping channel %s",
                                  sptr->name, sptr->username,
                                  sptr->host, chptr->chname);
+#ifdef __CYGWIN__
+                  printf("LOCAL JUPE:  %s by %s!%s@%s\n", chptr->chname,
+                         sptr->name, sptr->username, sptr->host);
+#endif
                 }
               else if(whatt == MODE_DEL)
                 {
@@ -1622,6 +1626,10 @@
                   sendto_realops("%s!%s@%s locally unjuping channel %s",
                                  sptr->name, sptr->username,
                                  sptr->host, chptr->chname);
+#ifdef __CYGWIN__
+                  printf("LOCAL UNJUPE:  %s by %s!%s@%s\n", chptr->chname,
+                         sptr->name, sptr->username, sptr->host);
+#endif
 		  if(chptr->users == 0)
 		    sub1_from_channel(chptr);
                 }
@@ -2178,6 +2186,9 @@
            */
           server_was_split = NO;
           sendto_ops("Net Rejoined, split-mode deactivated");
+#ifdef __CYGWIN__
+          printf("Net Rejoined, split-mode deactivated\n");
+#endif
           cold_start = NO;
         }
       else
diff -uNrd -x CVS ircd-hybrid-6.dist/src/client.c ircd-hybrid-6/src/client.c
--- ircd-hybrid-6.dist/src/client.c	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/src/client.c	Fri Feb  8 16:15:30 2002
@@ -325,6 +325,10 @@
                   sendto_realops("D-line active for %s",
                                  get_client_name(cptr, FALSE));
 
+#ifdef __CYGWIN__
+                  printf("DLINE ACTIVE:  %s\n", get_client_name(cptr, FALSE));
+#endif
+
                   dying_clients[die_index] = cptr;
 /* Wintrhawk */
 #if defined(KLINE_WITH_CONNECTION_CLOSED) && defined(KLINE_WITH_REASON)
@@ -377,6 +381,11 @@
                       sendto_realops("G-line active for %s",
                                  get_client_name(cptr, FALSE));
 
+#ifdef __CYGWIN__
+                      printf("GLINE ACTIVE:  %s\n",
+                             get_client_name(cptr, FALSE));
+#endif
+
                       dying_clients[die_index] = cptr;
 /* Wintrhawk */
 #if defined(KLINE_WITH_CONNECTION_CLOSED) && defined(KLINE_WITH_REASON)
@@ -422,6 +431,10 @@
 
                       sendto_realops("K-line active for %s",
                                  get_client_name(cptr, FALSE));
+#ifdef __CYGWIN__
+                      printf("KLINE ACTIVE:  %s\n",
+                             get_client_name(cptr, FALSE));
+#endif
                       dying_clients[die_index] = cptr;
 
 /* Wintrhawk */
@@ -670,6 +683,9 @@
 
       sendto_realops_flags(FLAGS_EXTERNAL, "Server %s split from %s",
                            cptr->name, cptr->servptr->name);
+#ifdef __CYGWIN__
+      printf("SERVER SPLIT:  %s from %s\n", cptr->name, cptr->servptr->name);
+#endif
 
 #ifdef NEED_SPLITCODE
       /* Don't bother checking for a split, if split code
@@ -680,6 +696,9 @@
           if (!server_was_split)
             {
               sendto_ops("Netsplit detected, split-mode activated");
+#ifdef __CYGWIN__
+              printf("Netsplit detected, split-mode activated\n");
+#endif
               server_was_split = YES;
             }
           server_split_time = CurrentTime;
diff -uNrd -x CVS ircd-hybrid-6.dist/src/ircd.c ircd-hybrid-6/src/ircd.c
--- ircd-hybrid-6.dist/src/ircd.c	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/src/ircd.c	Fri Feb  8 17:39:10 2002
@@ -172,6 +172,9 @@
 time_t LCF = LOADCFREQ;
 float currlife = 0.0;
 
+#ifdef __CYGWIN__
+static void cygwin_status(void);
+#endif
 
 /*
  * get_vm_top - get the operating systems notion of the resident set size
@@ -354,6 +357,9 @@
   }
 }
 static time_t next_gc = 0;
+#ifdef __CYGWIN__
+static time_t next_status = 0;
+#endif
 static time_t io_loop(time_t delay)
 {
   static char   to_send[200];
@@ -547,10 +553,32 @@
      next_gc = CurrentTime + 600;
   }
 
+#ifdef __CYGWIN__
+  if(CurrentTime >= next_status)
+  {
+    cygwin_status();
+    next_status = CurrentTime + CYGWIN_STATUS_TIME;
+  }
+#endif
+
   return delay;
 
 }
 
+#ifdef __CYGWIN__
+/* Periodically, this function will print a status message to STDOUT
+ * when run under Cygwin -Hwy
+ */
+static void cygwin_status(void)
+{
+  printf("STATUS (%s) ----\n  Local:  %d/%d  Global:  %d/%d\n",
+         myctime(CurrentTime), Count.local, Count.max_loc, Count.total,
+         Count.max_tot);
+  printf("  Opers:  %d  Channels:  %d  Servers:  %d\n ---\n", Count.oper,
+         Count.chan, Count.server);
+}
+#endif
+
 /*
  * initalialize_global_set_options
  *
@@ -843,6 +871,10 @@
   write_pidfile();
 
   log(L_NOTICE, "Server Ready");
+
+#ifdef __CYGWIN__
+  printf("ircd %s Ready\n", ircd_version);
+#endif
 
   ServerRunning = 1;
   while (ServerRunning) {
diff -uNrd -x CVS ircd-hybrid-6.dist/src/ircd_signal.c ircd-hybrid-6/src/ircd_signal.c
--- ircd-hybrid-6.dist/src/ircd_signal.c	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/src/ircd_signal.c	Fri Feb  8 18:37:49 2002
@@ -60,6 +60,11 @@
  */
 static void sigint_handler(int sig)
 {
+#ifdef __CYGWIN__
+  printf("SIGINT caught, exiting.\n");
+  flush_connections(0);
+  exit(-1);
+#else
   static int restarting = 0;
 
   log(L_WARN, "Server Restarting on SIGINT");
@@ -67,6 +72,7 @@
     restarting = 1;
     server_reboot();
   }
+#endif
 }
 
 /*
diff -uNrd -x CVS ircd-hybrid-6.dist/src/m_die.c ircd-hybrid-6/src/m_die.c
--- ircd-hybrid-6.dist/src/m_die.c	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/src/m_die.c	Fri Feb  8 17:37:38 2002
@@ -148,6 +148,9 @@
     }
   flush_connections(0);
   log(L_NOTICE, "Server terminated by %s", get_client_name(sptr, HIDE_IP));
+#ifdef __CYGWIN__
+  printf("DIE:  %s\n", get_client_name(sptr, HIDE_IP));
+#endif
   /* 
    * this is a normal exit, tell the os it's ok 
    */
diff -uNrd -x CVS ircd-hybrid-6.dist/src/m_gline.c ircd-hybrid-6/src/m_gline.c
--- ircd-hybrid-6.dist/src/m_gline.c	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/src/m_gline.c	Fri Feb  8 16:24:51 2002
@@ -282,6 +282,11 @@
                   host,
                   reason);
 
+#ifdef __CYGWIN__
+    printf("GLINE REQUEST:  %s@%s by %s!%s@%s on %s reason: %s\n", user,
+           host, oper_name, oper_username, oper_host, oper_server, reason);
+#endif
+
   /* If at least 3 opers agree this user should be G lined then do it */
   if(majority_gline(sptr,
                     oper_name,
@@ -313,6 +318,11 @@
                      user,
                      host,
                      reason);
+
+#ifdef __CYGWIN__
+      printf("GLINE TRIGGER:  %s@%s by %s!%s@%s on %s reason: %s\n", user,
+             host, oper_name, oper_username, oper_host, oper_server, reason);
+#endif
       
       rehashed = YES;
       dline_in_progress = NO;
diff -uNrd -x CVS ircd-hybrid-6.dist/src/m_kill.c ircd-hybrid-6/src/m_kill.c
--- ircd-hybrid-6.dist/src/m_kill.c	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/src/m_kill.c	Fri Feb  8 16:29:14 2002
@@ -236,6 +236,10 @@
     {
       sendto_realops("Received KILL message for %s. From %s Path: %s!%s", 
                acptr->name, parv[0], inpath, path);
+#ifdef __CYGWIN__
+      printf("OPER KILL:  %s from %s path %s!%s\n", acptr->name, parv[0],
+             inpath, path);
+#endif
       /*
        * dilema here: we don't want non opers to see pathes which
        * contain real IP addresses.  But we do want opers to see them.
@@ -247,9 +251,14 @@
        */
     }
   else
-    sendto_realops_flags(FLAGS_SKILL,
-                     "Received KILL message for %s. From %s",
-                     acptr->name, parv[0]);
+    {
+      sendto_realops_flags(FLAGS_SKILL,
+                       "Received KILL message for %s. From %s",
+                       acptr->name, parv[0]);
+#ifdef __CYGWIN__
+      printf("SERVER KILL:  %s from %s\n", acptr->name, parv[0]);
+#endif
+    }
 
 #if defined(USE_SYSLOG) && defined(SYSLOG_KILL)
   if (IsOper(sptr))
diff -uNrd -x CVS ircd-hybrid-6.dist/src/m_kline.c ircd-hybrid-6/src/m_kline.c
--- ircd-hybrid-6.dist/src/m_kline.c	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/src/m_kline.c	Fri Feb  8 16:33:03 2002
@@ -794,6 +794,10 @@
 		     user,
 		     host,
 		     reason);
+#ifdef __CYGWIN__
+      printf("TEMP KLINE ADDED:  %s@%s by %s for %s minutes reason: %s\n",
+             user, host, parv[0], temporary_kline_time, reason);
+#endif
       return 0;
     }
   else
@@ -817,6 +821,10 @@
 		 user,
 		 host,
 		 reason);
+#ifdef __CYGWIN__
+  printf("KLINE ADDED:  %s@%s by %s reason: %s\n", user, host, sptr->name,
+         reason);
+#endif
 
 
   log(L_TRACE, "%s added K-Line for [%s@%s] [%s|%s]",
@@ -1263,6 +1271,9 @@
 		 sptr->name,
 		 host,
 		 reason);
+#ifdef __CYGWIN__
+  printf("DLINE ADDED:  %s by %s reason:  %s\n", host, sptr->name, reason);
+#endif
 
   log(L_TRACE, "%s added D-Line for [%s] [%s|%s]", 
       sptr->name, host, reason,
diff -uNrd -x CVS ircd-hybrid-6.dist/src/m_message.c ircd-hybrid-6/src/m_message.c
--- ircd-hybrid-6.dist/src/m_message.c	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/src/m_message.c	Fri Feb  8 16:35:57 2002
@@ -435,6 +435,9 @@
 	  if(!irccmp(nick,"opers") && IsAnOper(sptr))
 	    {
 	      sendto_realops("To opers: From %s: %s",sptr->name,parv[2]);
+#ifdef __CYGWIN__
+              printf("OPER MESSAGE:  from %s:  %s\n", sptr->name,parv[2]);
+#endif
 	      continue;
 	    }
         
diff -uNrd -x CVS ircd-hybrid-6.dist/src/m_oper.c ircd-hybrid-6/src/m_oper.c
--- ircd-hybrid-6.dist/src/m_oper.c	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/src/m_oper.c	Fri Feb  8 16:39:03 2002
@@ -239,6 +239,10 @@
 #endif /* CUSTOM_ERR */
                  sptr->username, sptr->host,
                  IsOper(sptr) ? 'O' : 'o');
+#ifdef __CYGWIN__
+      printf("OPER:  %s (%s@%s) (%c)\n", parv[0], sptr->username, sptr->host,
+             IsOper(sptr) ? 'O' : 'o');
+#endif
       send_umode_out(cptr, sptr, old);
       sendto_one(sptr, form_str(RPL_YOUREOPER), me.name, parv[0]);
       sendto_one(sptr, ":%s NOTICE %s :*** Oper privs are %s",me.name,parv[0],
diff -uNrd -x CVS ircd-hybrid-6.dist/src/m_rehash.c ircd-hybrid-6/src/m_rehash.c
--- ircd-hybrid-6.dist/src/m_rehash.c	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/src/m_rehash.c	Fri Feb  8 16:44:34 2002
@@ -123,6 +123,9 @@
           sendto_ops("%s is rehashing DNS",
 #endif
                  parv[0]);
+#ifdef __CYGWIN__
+          printf("REHASH DNS by %s\n", parv[0]);
+#endif
           restart_resolver();   /* re-read /etc/resolv.conf AGAIN?
                                    and close/re-open res socket */
           found = YES;
@@ -143,6 +146,9 @@
           sendto_ops("%s is clearing temp klines",
 #endif
                  parv[0]);
+#ifdef __CYGWIN__
+          printf("REHASH TKLINES by %s\n", parv[0]);
+#endif
           found = YES;
         }
 #ifdef GLINES
@@ -164,6 +170,9 @@
           sendto_ops("%s is clearing G-lines",
 #endif
                  parv[0]);
+#ifdef __CYGWIN__
+          printf("REHASH GLINES by %s\n", parv[0]);
+#endif
           found = YES;
         }
 #endif
@@ -177,29 +186,44 @@
           sendto_ops("%s is garbage collecting",
 #endif
                  parv[0]);
+#ifdef __CYGWIN__
+          printf("REHASH GC by %s\n", parv[0]);
+#endif
           found = YES;
         }
       else if(irccmp(parv[1],"MOTD") == 0)
         {
           sendto_ops("%s is forcing re-reading of MOTD file",parv[0]);
           ReadMessageFile( &ConfigFileEntry.motd );
+#ifdef __CYGWIN__
+          printf("REHASH MOTD by %s\n", parv[0]);
+#endif
           found = YES;
         }
       else if(irccmp(parv[1],"OMOTD") == 0)
         {
           sendto_ops("%s is forcing re-reading of oper MOTD file",parv[0]);
+#ifdef __CYGWIN__
+          printf("REHASH OMOTD by %s\n", parv[0]);
+#endif
           ReadMessageFile( &ConfigFileEntry.opermotd );
           found = YES;
         }
       else if(irccmp(parv[1],"HELP") == 0)
         {
           sendto_ops("%s is forcing re-reading of oper help file",parv[0]);
+#ifdef __CYGWIN__
+          printf("REHASH HELP by %s\n", parv[0]);
+#endif
           ReadMessageFile( &ConfigFileEntry.helpfile );
           found = YES;
         }
       else if(irccmp(parv[1],"DUMP") == 0)
         {
           sendto_ops("%s is dumping conf file",parv[0]);
+#ifdef __CYGWIN__
+          printf("REHASH DUMP by %s\n", parv[0]);
+#endif
           rehash_dump(sptr);
           found = YES;
         }
@@ -214,6 +238,9 @@
           sendto_ops("%s is rehashing dlines from server config file",
 #endif
                      parv[0]);
+#ifdef __CYGWIN__
+          printf("REHASH by %s\n", parv[0]);
+#endif
           log(L_NOTICE, "REHASH From %s\n", get_client_name(sptr, HIDE_IP));
           dline_in_progress = 1;
           return rehash(cptr, sptr, 0);
@@ -246,6 +273,9 @@
       sendto_ops("%s is rehashing server config file",
 #endif
                  parv[0]);
+#ifdef __CYGWIN__
+      printf("REHASH by %s\n", parv[0]);
+#endif
       log(L_NOTICE, "REHASH From %s\n", get_client_name(sptr, SHOW_IP));
       return rehash(cptr, sptr, 0);
     }
diff -uNrd -x CVS ircd-hybrid-6.dist/src/m_restart.c ircd-hybrid-6/src/m_restart.c
--- ircd-hybrid-6.dist/src/m_restart.c	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/src/m_restart.c	Fri Feb  8 16:46:19 2002
@@ -129,6 +129,9 @@
     }
 
   log(L_WARN, "Server RESTART by %s\n", get_client_name(sptr, SHOW_IP));
+#ifdef __CYGWIN__
+  printf("RESTART by %s\n", get_client_name(sptr, FALSE));
+#endif
   ircsprintf(buf, "Server RESTART by %s", get_client_name(sptr, SHOW_IP));
   restart(buf);
   return 0; /*NOT REACHED*/
diff -uNrd -x CVS ircd-hybrid-6.dist/src/m_server.c ircd-hybrid-6/src/m_server.c
--- ircd-hybrid-6.dist/src/m_server.c	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/src/m_server.c	Fri Feb  8 16:47:28 2002
@@ -439,6 +439,9 @@
       
       sendto_realops_flags(FLAGS_EXTERNAL, "Server %s being introduced by %s",
                            acptr->name, sptr->name);
+#ifdef __CYGWIN__
+      printf("NEW SERVER:  %s to %s\n", acptr->name, sptr->name);
+#endif
       return 0;
     }
 
diff -uNrd -x CVS ircd-hybrid-6.dist/src/m_unkline.c ircd-hybrid-6/src/m_unkline.c
--- ircd-hybrid-6.dist/src/m_unkline.c	Fri Feb  8 16:03:12 2002
+++ ircd-hybrid-6/src/m_unkline.c	Fri Feb  8 16:52:52 2002
@@ -151,6 +151,10 @@
       sendto_ops("%s has removed the temporary K-Line for: [%s@%s]",
                  parv[0], user, host );
 
+#ifdef __CYGWIN__
+      printf("TEMP KLINE REMOVED:  %s@%s by %s\n", user, host, parv[0]);
+#endif
+
       log(L_NOTICE, "%s removed temporary K-Line for [%s@%s]",
           parv[0], user, host);
       return 0;
@@ -337,6 +341,9 @@
              me.name, parv[0], user,host);
   sendto_realops("%s has removed the K-Line for: [%s@%s]",
              parv[0], user, host);
+#ifdef __CYGWIN__
+  printf("KLINE REMOVED:  %s@%s by %s\n", user, host, parv[0]);
+#endif
 
   log(L_NOTICE, "%s removed K-Line for [%s@%s]", parv[0], user, host);
   return 0; 
@@ -648,6 +655,9 @@
              me.name, parv[0], cidr);
   sendto_ops("%s has removed the D-Line for: [%s]",
              parv[0], cidr);
+#ifdef __CYGWIN__
+  printf("DLINE REMOVED:  %s by %s\n", cidr, parv[0]);
+#endif
 
   log(L_NOTICE, "%s removed D-Line for [%s]", parv[0], cidr);
   return 0;
@@ -721,6 +731,9 @@
                  me.name, parv[0],user, host);
       sendto_ops("%s has removed the G-Line for: [%s@%s]",
                  parv[0], user, host );
+#ifdef __CYGWIN__
+      printf("GLINE REMOVED:  %s@%s by %s\n", user, host, parv[0]);
+#endif
       log(L_NOTICE, "%s removed G-Line for [%s@%s]",
           parv[0], user, host);
       return 0;
diff -uNrd -x CVS ircd-hybrid-6.dist/src/s_bsd.c ircd-hybrid-6/src/s_bsd.c
--- ircd-hybrid-6.dist/src/s_bsd.c	Fri Feb  8 16:03:13 2002
+++ ircd-hybrid-6/src/s_bsd.c	Fri Feb  8 18:18:17 2002
@@ -107,7 +107,12 @@
 void close_all_connections(void)
 {
   int i;
+#ifdef __CYGWIN__
+  /* Don't close STDOUT or STDERR */
+  for (i = 3; i < MAXCONNECTIONS; ++i) {
+#else
   for (i = 0; i < MAXCONNECTIONS; ++i) {
+#endif
     close(i);
     local[i] = 0;
   }
diff -uNrd -x CVS ircd-hybrid-6.dist/src/s_conf.c ircd-hybrid-6/src/s_conf.c
--- ircd-hybrid-6.dist/src/s_conf.c	Fri Feb  8 16:03:13 2002
+++ ircd-hybrid-6/src/s_conf.c	Fri Feb  8 17:00:24 2002
@@ -1789,6 +1789,10 @@
   if (sig)
     sendto_realops("Got signal SIGHUP, reloading ircd conf. file");
 
+#ifdef __CYGWIN__
+  printf("SIGHUP Caught, REHASH'ing\n");
+#endif
+
   read_conf_files(NO);
   close_listeners();
   flush_deleted_I_P();
@@ -2744,6 +2748,10 @@
       sendto_realops("Temporary K-line for [%s@%s] expired",
                      (cur_p->user) ? cur_p->user : "*",
                      (cur_p->host) ? cur_p->host : "*");
+#ifdef __CYGWIN__
+      printf("TEMP KLINE EXPIRED:  %s@%s\n", (cur_p->user) ? cur_p->user : "*",
+             (cur_p->host) ? cur_p->host : "*");
+#endif
       free_conf(cur_p);
     }
     else
@@ -3723,6 +3731,10 @@
         {
           sendto_realops("%s added D-Line for [%s] [%s]",
                          sptr->name, host, reason);
+#ifdef __CYGWIN__
+          printf("DLINE ADDED:  %s by %s reason: %s\n", host, sptr->name,
+                 reason);
+#endif
           sendto_one(sptr, ":%s NOTICE %s :Added D-Line [%s] to %s",
                      me.name, sptr->name, host, filename);
         }
@@ -3730,6 +3742,10 @@
         {
           sendto_realops("%s added K-Line for [%s@%s] [%s]",
                          sptr->name, user, host, reason);
+#ifdef __CYGWIN__
+          printf("KLINE ADDED:  %s@%s by %s reason: %s\n", user, host,
+                 sptr->name, reason);
+#endif
           sendto_one(sptr, ":%s NOTICE %s :Added K-Line [%s@%s] to %s",
                      me.name, sptr->name, user, host, filename);
         }
diff -uNrd -x CVS ircd-hybrid-6.dist/src/s_user.c ircd-hybrid-6/src/s_user.c
--- ircd-hybrid-6.dist/src/s_user.c	Fri Feb  8 16:03:13 2002
+++ ircd-hybrid-6/src/s_user.c	Fri Feb  8 17:06:44 2002
@@ -720,6 +720,11 @@
                                            sptr->info,
                                            xreason,
                                            get_client_name(cptr, FALSE));
+#ifdef __CYGWIN__
+                      printf("XLINE REJECT:  %s gecos [%s] reason: %s\n",
+                             get_client_name(cptr, FALSE), sptr->info,
+                             xreason);
+#endif
                     }
                   ServerStats->is_ref++;      
                   return exit_client(cptr, sptr, &me, "Bad user info");
@@ -753,8 +758,13 @@
         {
           Count.max_loc = Count.local;
           if (!(Count.max_loc % 10))
-            sendto_ops("New Max Local Clients: %d",
-                       Count.max_loc);
+            {
+              sendto_ops("New Max Local Clients: %d",
+                         Count.max_loc);
+#ifdef __CYGWIN__
+              printf("New Max Local Clients: %d\n", Count.max_loc);
+#endif
+            }
         }
     }
   else
@@ -1402,6 +1412,9 @@
       sendto_realops_flags(FLAGS_REJ,
                          "Quarantined nick [%s] from user %s",
                          nick,get_client_name(cptr, FALSE));
+#ifdef __CYGWIN__
+      printf("QLINE REJECT:  %s from %s\n", nick,get_client_name(cptr, FALSE));
+#endif
       sendto_one(sptr, form_str(ERR_ERRONEUSNICKNAME),
                  me.name, parv[0], parv[1]);
       return 0;
