]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/ngircd/irc-write.c
Don't #include client.h when conn.h/conn-func.h is already included
[ngircd-alex.git] / src / ngircd / irc-write.c
index dae78e582335fd6ab817b1d7f75da1a773706f72..dd592f0db54d11c297291a9f9462e2d8ad2fcd0b 100644 (file)
@@ -26,7 +26,6 @@
 
 #include "defines.h"
 #include "conn-func.h"
-#include "client.h"
 #include "channel.h"
 
 #include "exp.h"
 #define SEND_TO_SERVER 2
 
 
-static char *Get_Prefix PARAMS((CLIENT *Target, CLIENT *Client));
+static const char *Get_Prefix PARAMS((CLIENT *Target, CLIENT *Client));
 static void cb_writeStrServersPrefixFlag PARAMS((CLIENT *Client,
                                         CLIENT *Prefix, void *Buffer));
 
 
 #ifdef PROTOTYPES
 GLOBAL bool
-IRC_WriteStrClient( CLIENT *Client, char *Format, ... )
+IRC_WriteStrClient( CLIENT *Client, const char *Format, ... )
 #else
 GLOBAL bool
 IRC_WriteStrClient( Client, Format, va_alist )
 CLIENT *Client;
-char *Format;
+const char *Format;
 va_dcl
 #endif
 {
@@ -77,13 +76,13 @@ va_dcl
 
 #ifdef PROTOTYPES
 GLOBAL bool
-IRC_WriteStrClientPrefix( CLIENT *Client, CLIENT *Prefix, char *Format, ... )
+IRC_WriteStrClientPrefix(CLIENT *Client, CLIENT *Prefix, const char *Format, ...)
 #else
 GLOBAL bool
-IRC_WriteStrClientPrefix( Client, Prefix, Format, va_alist )
+IRC_WriteStrClientPrefix(Client, Prefix, Format, va_alist)
 CLIENT *Client;
 CLIENT *Prefix;
-char *Format;
+const char *Format;
 va_dcl
 #endif
 {
@@ -110,14 +109,15 @@ va_dcl
 
 #ifdef PROTOTYPES
 GLOBAL bool
-IRC_WriteStrChannel( CLIENT *Client, CHANNEL *Chan, bool Remote, char *Format, ... )
+IRC_WriteStrChannel(CLIENT *Client, CHANNEL *Chan, bool Remote,
+                   const char *Format, ...)
 #else
 GLOBAL bool
-IRC_WriteStrChannel( Client, Chan, Remote, Format, va_alist )
+IRC_WriteStrChannel(Client, Chan, Remote, Format, va_alist)
 CLIENT *Client;
 CHANNEL *Chan;
 bool Remote;
-char *Format;
+const char *Format;
 va_dcl
 #endif
 {
@@ -146,15 +146,16 @@ va_dcl
  */
 #ifdef PROTOTYPES
 GLOBAL bool
-IRC_WriteStrChannelPrefix( CLIENT *Client, CHANNEL *Chan, CLIENT *Prefix, bool Remote, char *Format, ... )
+IRC_WriteStrChannelPrefix(CLIENT *Client, CHANNEL *Chan, CLIENT *Prefix,
+                         bool Remote, const char *Format, ...)
 #else
 GLOBAL bool
-IRC_WriteStrChannelPrefix( Client, Chan, Prefix, Remote, Format, va_alist )
+IRC_WriteStrChannelPrefix(Client, Chan, Prefix, Remote, Format, va_alist)
 CLIENT *Client;
 CHANNEL *Chan;
 CLIENT *Prefix;
 bool Remote;
-char *Format;
+const char *Format;
 va_dcl
 #endif
 {
@@ -218,12 +219,12 @@ va_dcl
 
 #ifdef PROTOTYPES
 GLOBAL void
-IRC_WriteStrServers( CLIENT *ExceptOf, char *Format, ... )
+IRC_WriteStrServers(CLIENT *ExceptOf, const char *Format, ...)
 #else
 GLOBAL void
-IRC_WriteStrServers( ExceptOf, Format, va_alist )
+IRC_WriteStrServers(ExceptOf, Format, va_alist)
 CLIENT *ExceptOf;
-char *Format;
+const char *Format;
 va_dcl
 #endif
 {
@@ -246,13 +247,14 @@ va_dcl
 
 #ifdef PROTOTYPES
 GLOBAL void
-IRC_WriteStrServersPrefix( CLIENT *ExceptOf, CLIENT *Prefix, char *Format, ... )
+IRC_WriteStrServersPrefix(CLIENT *ExceptOf, CLIENT *Prefix,
+                         const char *Format, ...)
 #else
 GLOBAL void
-IRC_WriteStrServersPrefix( ExceptOf, Prefix, Format, va_alist )
+IRC_WriteStrServersPrefix(ExceptOf, Prefix, Format, va_alist)
 CLIENT *ExceptOf;
 CLIENT *Prefix;
-char *Format;
+const char *Format;
 va_dcl
 #endif
 {
@@ -276,14 +278,15 @@ va_dcl
 
 #ifdef PROTOTYPES
 GLOBAL void
-IRC_WriteStrServersPrefixFlag( CLIENT *ExceptOf, CLIENT *Prefix, char Flag, char *Format, ... )
+IRC_WriteStrServersPrefixFlag(CLIENT *ExceptOf, CLIENT *Prefix, char Flag,
+                             const char *Format, ...)
 #else
 GLOBAL void
-IRC_WriteStrServersPrefixFlag( ExceptOf, Prefix, Flag, Format, va_alist )
+IRC_WriteStrServersPrefixFlag(ExceptOf, Prefix, Flag, Format, va_alist)
 CLIENT *ExceptOf;
 CLIENT *Prefix;
 char Flag;
-char *Format;
+const char *Format;
 va_dcl
 #endif
 {
@@ -331,14 +334,15 @@ IRC_WriteStrServersPrefixFlag_CB(CLIENT *ExceptOf, CLIENT *Prefix, char Flag,
  */
 #ifdef PROTOTYPES
 GLOBAL bool
-IRC_WriteStrRelatedPrefix( CLIENT *Client, CLIENT *Prefix, bool Remote, char *Format, ... )
+IRC_WriteStrRelatedPrefix(CLIENT *Client, CLIENT *Prefix, bool Remote,
+                         const char *Format, ...)
 #else
 GLOBAL bool
-IRC_WriteStrRelatedPrefix( Client, Prefix, Remote, Format, va_alist )
+IRC_WriteStrRelatedPrefix(Client, Prefix, Remote, Format, va_alist)
 CLIENT *Client;
 CLIENT *Prefix;
 bool Remote;
-char *Format;
+const char *Format;
 va_dcl
 #endif
 {
@@ -408,11 +412,30 @@ va_dcl
 /**
  * Send WALLOPS message.
  */
+#ifdef PROTOTYPES
+GLOBAL void
+IRC_SendWallops(CLIENT *Client, CLIENT *From, const char *Format, ...)
+#else
 GLOBAL void
-IRC_SendWallops(CLIENT *Client, CLIENT *From, const char *Message)
+IRC_SendWallops(Client, From, Format, va_alist )
+CLIENT *Client;
+CLIENT *From;
+const char *Format;
+va_dcl
+#endif
 {
+       va_list ap;
+       char msg[1000];
        CLIENT *to;
 
+#ifdef PROTOTYPES
+       va_start(ap, Format);
+#else
+       va_start(ap);
+#endif
+       vsnprintf(msg, 1000, Format, ap);
+       va_end(ap);
+
        for (to=Client_First(); to != NULL; to=Client_Next(to)) {
                if (Client_Conn(to) == NONE) /* no local connection */
                        continue;
@@ -421,12 +444,12 @@ IRC_SendWallops(CLIENT *Client, CLIENT *From, const char *Message)
                case CLIENT_USER:
                        if (Client_HasMode(to, 'w'))
                                IRC_WriteStrClientPrefix(to, From,
-                                                        "WALLOPS :%s", Message);
+                                                        "WALLOPS :%s", msg);
                                break;
                case CLIENT_SERVER:
                        if (to != Client)
                                IRC_WriteStrClientPrefix(to, From,
-                                                        "WALLOPS :%s", Message);
+                                                        "WALLOPS :%s", msg);
                                break;
                }
        }
@@ -449,7 +472,7 @@ IRC_SetPenalty( CLIENT *Client, time_t Seconds )
 } /* IRC_SetPenalty */
 
 
-static char *
+static const char *
 Get_Prefix( CLIENT *Target, CLIENT *Client )
 {
        assert( Target != NULL );