105 lines
3.2 KiB
C
105 lines
3.2 KiB
C
--- icb.c.orig Fri Nov 19 06:14:28 2004
|
|
+++ icb.c Tue Aug 28 05:09:38 2007
|
|
@@ -40,8 +40,8 @@
|
|
|
|
extern int sync_write(int, const char *, int);
|
|
|
|
-static unsigned char icb_args(const char *, unsigned char, char [255][255]);
|
|
-static void icb_cmd(const char *, unsigned char, int, int);
|
|
+static unsigned char icb_args(const unsigned char *, unsigned char, char [255][255]);
|
|
+static void icb_cmd(const unsigned char *, unsigned char, int, int);
|
|
static void icb_ico(int, const char *);
|
|
static void icb_iwl(int, const char *, const char *, long,
|
|
long, const char *, const char *);
|
|
@@ -108,7 +108,7 @@
|
|
*/
|
|
|
|
void
|
|
-scan(const char **s, char *d, size_t siz, const char *skip, const char *term)
|
|
+scan(const unsigned char **s, char *d, size_t siz, const char *skip, const char *term)
|
|
{
|
|
while (**s && strchr(skip, **s) != NULL)
|
|
(*s)++;
|
|
@@ -149,7 +149,7 @@
|
|
}
|
|
|
|
static unsigned char
|
|
-icb_args(const char *data, unsigned char len, char args[255][255])
|
|
+icb_args(const unsigned char *data, unsigned char len, char args[255][255])
|
|
{
|
|
unsigned char i = 0, j = 0, k = 0;
|
|
|
|
@@ -175,10 +175,10 @@
|
|
}
|
|
|
|
static void
|
|
-icb_cmd(const char *cmd, unsigned char len, int fd, int server_fd)
|
|
+icb_cmd(const unsigned char *cmd, unsigned char len, int fd, int server_fd)
|
|
{
|
|
char args[255][255];
|
|
- const char *a = args[1];
|
|
+ const unsigned char *a = (unsigned char *)args[1];
|
|
unsigned char i, j;
|
|
char s[8192];
|
|
|
|
@@ -254,7 +254,7 @@
|
|
char old_nick[256], new_nick[256];
|
|
|
|
scan(&a, old_nick, sizeof(old_nick), " ", " ");
|
|
- if (strncmp(a, " changed nickname to ", 21))
|
|
+ if (strncmp((const char *)a, " changed nickname to ", 21))
|
|
return;
|
|
a += 21;
|
|
scan(&a, new_nick, sizeof(new_nick), " ", " ");
|
|
@@ -268,7 +268,7 @@
|
|
char nick[256], topic[256];
|
|
|
|
scan(&a, nick, sizeof(nick), " ", " ");
|
|
- if (strncmp(a, " changed the topic to \"", 23))
|
|
+ if (strncmp((const char *)a, " changed the topic to \"", 23))
|
|
return;
|
|
a += 23;
|
|
scan(&a, topic, sizeof(topic), "", "\"");
|
|
@@ -279,13 +279,13 @@
|
|
char old_mod[256], new_mod[256];
|
|
|
|
scan(&a, old_mod, sizeof(old_mod), " ", " ");
|
|
- if (!strncmp(a, " has passed moderation to ", 26)) {
|
|
+ if (!strncmp((const char *)a, " has passed moderation to ", 26)) {
|
|
a += 26;
|
|
scan(&a, new_mod, sizeof(new_mod), " ", " ");
|
|
snprintf(s, sizeof(s),
|
|
":%s MODE %s -o+o %s %s\r\n",
|
|
old_mod, irc_channel, old_mod, new_mod);
|
|
- } else if (!strcmp(a, " is now mod.")) {
|
|
+ } else if (!strcmp((const char *)a, " is now mod.")) {
|
|
snprintf(s, sizeof(s),
|
|
":%s MODE %s +o %s\r\n",
|
|
icb_hostid, irc_channel, old_mod);
|
|
@@ -297,7 +297,7 @@
|
|
char nick[256];
|
|
|
|
scan(&a, nick, sizeof(nick), " ", " ");
|
|
- if (strcmp(a, " was booted."))
|
|
+ if (strcmp((const char *)a, " was booted."))
|
|
return;
|
|
snprintf(s, sizeof(s), ":%s KICK %s %s :booted\r\n",
|
|
icb_moderator, irc_channel, nick);
|
|
@@ -508,7 +508,7 @@
|
|
cmd[off++] = 0;
|
|
cmd[0] = off - 1;
|
|
/* cmd[0] <= MAX_MSG_SIZE */
|
|
- sync_write(fd, cmd, off);
|
|
+ sync_write(fd, (const char *)cmd, off);
|
|
}
|
|
}
|
|
|
|
@@ -533,7 +533,7 @@
|
|
cmd[off++] = 0;
|
|
cmd[0] = off - 1;
|
|
/* cmd[0] <= MAX_MSG_SIZE */
|
|
- sync_write(fd, cmd, off);
|
|
+ sync_write(fd, (const char *)cmd, off);
|
|
}
|
|
}
|
|
|