1
0
mirror of https://github.com/anope/anope.git synced 2026-06-30 14:46:39 +02:00

BUILD : 1.7.5 (340) BUGS : none NOTES : Applied patch 830 provided by Trystan to resolve several issues.

git-svn-id: svn://svn.anope.org/anope/trunk@340 31f1291d-b8d6-0310-a050-a5561fc1590b


git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@216 5417fbe8-f217-4b02-8779-1006273d7864
This commit is contained in:
dane dane@31f1291d-b8d6-0310-a050-a5561fc1590b
2004-09-07 17:29:07 +00:00
parent eb0d83719b
commit b0c19c6702
23 changed files with 398 additions and 136 deletions
+6
View File
@@ -6,8 +6,14 @@ Provided by Anope Dev. <dev@anope.org> - 2004
08/24 F Compile error with gcc2. [ #00]
Provided by Trystan <trystan@nomadirc.net> - 2004
09/07 A Unreal32 channel mode +T support. [ #00]
09/07 A Ircd CHANMODE now trapped and stored. [ #00]
08/23 A New protocol independent design (aka anope-capab). [ #00]
08/28 A New IRCD document for adding new ircd support to new design. [ #00]
09/07 F Handling of most Unknown Message from Server commands. [ #00]
09/07 F Several Hybrid support fixes and improvements. [ #00]
09/07 F Several Unreal support fixes and improvements. [ #00]
09/07 F Several Ultimate support fixes and improvements. [ #00]
08/28 F Channel registration handling for non chanops. [#142]
08/28 F Protection from accessing unavailable struct data. [#152]
08/28 F Rage2 mode +M/+A channel support. [#154]
+1 -1
View File
@@ -248,7 +248,7 @@ while [ $ok -eq 0 ] ; do
ok=1;
;;
4)
IRCTYPE_DEF="IRC_ULTIMATE"
IRCTYPE_DEF="IRC_ULTIMATE2"
ok=1;
;;
5)
Vendored
+2 -2
View File
@@ -8371,10 +8371,10 @@ cat >>confdefs.h <<\_ACEOF
#define IRC_UNREAL31 1
_ACEOF
elif test "$withval" = "IRC_ULTIMATE"; then
elif test "$withval" = "IRC_ULTIMATE2"; then
cat >>confdefs.h <<\_ACEOF
#define IRC_ULTIMATE 1
#define IRC_ULTIMATE2 1
_ACEOF
elif test "$withval" = "IRC_ULTIMATE3"; then
+2 -2
View File
@@ -192,8 +192,8 @@ AC_ARG_WITH(ircd, [ --with-ircd=ircd Specify the first ircd type], [
AC_DEFINE(IRC_BAHAMUT,1,"First IRCD type")
elif test "$withval" = "IRC_UNREAL31"; then
AC_DEFINE(IRC_UNREAL31,1,"First IRCD type")
elif test "$withval" = "IRC_ULTIMATE"; then
AC_DEFINE(IRC_ULTIMATE,1,"First IRCD type")
elif test "$withval" = "IRC_ULTIMATE2"; then
AC_DEFINE(IRC_ULTIMATE2,1,"First IRCD type")
elif test "$withval" = "IRC_ULTIMATE3"; then
AC_DEFINE(IRC_ULTIMATE3,1,"First IRCD type")
elif test "$withval" = "IRC_HYBRID"; then
+11 -9
View File
@@ -493,8 +493,6 @@ E char *DefconMessage;
E char *DefConAkillReason;
E char *DefConOffMessage;
E int Numeric;
/**** converter.c ****/
E int convert_ircservices_44(void);
@@ -644,11 +642,6 @@ E void doCleanBuffer(char *str);
E void EnforceQlinedNick(char *nick, char *killer);
E int nickIsServices(char *nick);
E const char* inttobase64(char* buf, unsigned int v, unsigned int count);
E unsigned int base64toIP(const char* s);
E unsigned int base64toint(const char* s);
/**** modules.c ****/
E void moduleCallBackRun(void);
E void moduleCleanStruct(ModuleData * moduleData[]);
@@ -851,7 +844,6 @@ E void get_user_stats(long *nusers, long *memuse);
E User *finduser(const char *nick);
E User *firstuser(void);
E User *nextuser(void);
E User *finduser_uid(const char *uid);
E void update_host(User * user);
E void change_user_host(User * user, const char *host);
@@ -1003,6 +995,7 @@ extern int anope_event_whois(char *source, int ac, char **av);
extern int anope_event_part(char *source, int ac, char **av);
extern int anope_event_server(char *source, int ac, char **av);
extern int anope_event_nick(char *source, int ac, char **av);
extern int anope_event_gnotice(char *source, int ac, char **av);
extern int anope_event_privmsg(char *source, int ac, char **av);
extern int anope_event_capab(char *source, int ac, char **av);
extern int anope_event_sjoin(char *source, int ac, char **av);
@@ -1021,13 +1014,22 @@ extern int anope_event_chgname(char *source, int ac, char **av);
extern int anope_event_setname(char *source, int ac, char **av);
extern int anope_event_svsinfo(char *source, int ac, char **av);
extern int anope_event_snick(char *source, int ac, char **av);
extern int anope_event_vhost(char *source, int ac, char **av); /* Rage IRCD Only */
extern int anope_event_vhost(char *source, int ac, char **av);
extern int anope_event_tkl(char *source, int ac, char **av);
extern int anope_event_eos(char *source, int ac, char **av);
extern int anope_event_pass(char *source, int ac, char **av);
extern int anope_event_netinfo(char *source, int ac, char **av);
extern int anope_event_error(char *source, int ac, char **av);
extern int anope_event_eb(char *source, int ac, char **av);
extern int anope_event_netctrl(char *source, int ac, char **av);
extern int anope_event_notice(char *source, int ac, char **av);
extern int anope_event_sqline(char *source, int ac, char **av);
extern int anope_event_error(char *source, int ac, char **av);
extern int anope_event_smo(char *source, int ac, char **av);
extern int anope_event_myid(char *source, int ac, char **av);
extern int anope_event_vctrl(char *source, int ac, char **av);
extern int anope_event_netinfo(char *source, int ac, char **av);
extern int anope_event_snetinfo(char *source, int ac, char **av);
extern void anope_set_umode(User * user, int ac, char **av);
extern void anope_cmd_svid_umode(char *nick, time_t ts);
+6 -2
View File
@@ -240,11 +240,13 @@ struct ircdvars_ {
uint32 adminmode; /* Admin Only Channel Mode */
uint32 defmlock; /* Default mlock modes */
uint32 vhostmode; /* Vhost mode */
int fmode; /* +f */
int Lmode; /* +L */
int fmode; /* +f */
int Lmode; /* +L */
uint32 chan_fmode; /* Mode */
uint32 chan_lmode; /* Mode */
int check_nick_id; /* On nick change check if they could be identified */
int knock_needs_i; /* Check if we needed +i when setting NOKNOCK */
char *chanmodes; /* If the ircd sends CHANMODE in CAPAB this is where we store it */
};
struct ircdcapab_ {
@@ -276,6 +278,7 @@ struct ircdcapab_ {
uint32 tlkext;
uint32 dodkey;
uint32 dozip;
uint32 chanmodes;
};
/*************************************************************************/
@@ -1074,6 +1077,7 @@ struct hostcache_ {
#define CAPAB_UMODE2 0x02000000
#define CAPAB_VL 0x04000000
#define CAPAB_TLKEXT 0x08000000
#define CAPAB_CHANMODE 0x10000000
/*************************************************************************/
+3 -2
View File
@@ -39,6 +39,8 @@
#define CMODE_t 0x00000020
#define CMODE_k 0x00000040 /* These two used only by ChanServ */
#define CMODE_l 0x00000080
#define CMODE_R 0x00000100 /* Only identified users can join */
#define CMODE_r 0x00000200 /* Set for all registered channels */
#define CMODE_c 0x00000400
#define CMODE_A 0x00000800
#define CMODE_H 0x00001000
@@ -54,8 +56,7 @@
#define CMODE_u 0x00400000
#define CMODE_z 0x00800000
#define CMODE_N 0x01000000
#define CMODE_R 0x00000100 /* Only identified users can join */
#define CMODE_r 0x00000200 /* Set for all registered channels */
#define CMODE_T 0x02000000
/*************************************************************************/
+30 -6
View File
@@ -89,7 +89,8 @@ IRCDVar ircd[] = {
0, /* Mode */
0, /* Mode */
1,
1, /* No Knock requires +i */
NULL, /* CAPAB Chan Modes */
}
,
{NULL}
@@ -124,8 +125,8 @@ IRCDCAPAB ircdcap[] = {
0, /* VL */
0, /* TLKEXT */
0, /* DODKEY */
CAPAB_DOZIP /* DOZIP */
}
CAPAB_DOZIP, /* DOZIP */
0}
};
@@ -404,7 +405,7 @@ void anope_cmd_mode(char *source, char *dest, const char *fmt, ...)
char buf[BUFSIZE];
*buf = '\0';
if (!fmt) {
if (fmt) {
va_start(args, fmt);
vsnprintf(buf, BUFSIZE - 1, fmt, args);
va_end(args);
@@ -567,7 +568,7 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("MODE", anope_event_mode); addCoreMessage(IRCD,m);
m = createMessage("MOTD", anope_event_motd); addCoreMessage(IRCD,m);
m = createMessage("NICK", anope_event_nick); addCoreMessage(IRCD,m);
m = createMessage("NOTICE", NULL); addCoreMessage(IRCD,m);
m = createMessage("NOTICE", anope_event_notice); addCoreMessage(IRCD,m);
m = createMessage("PART", anope_event_part); addCoreMessage(IRCD,m);
m = createMessage("PASS", NULL); addCoreMessage(IRCD,m);
m = createMessage("PING", anope_event_ping); addCoreMessage(IRCD,m);
@@ -605,6 +606,8 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("SZLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("UNSGLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("UNSZLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("ERROR", anope_event_error); addCoreMessage(IRCD,m);
}
/* *INDENT-ON* */
@@ -662,7 +665,7 @@ void anope_cmd_part(char *nick, char *chan, const char *fmt, ...)
char buf[BUFSIZE];
*buf = '\0';
if (!fmt) {
if (fmt) {
va_start(args, fmt);
vsnprintf(buf, BUFSIZE - 1, fmt, args);
va_end(args);
@@ -1419,4 +1422,25 @@ void anope_cmd_chg_nick(char *oldnick, char *newnick)
send_cmd(oldnick, "NICK %s", newnick);
}
int anope_event_error(char *source, int ac, char **av)
{
if (ac >= 1) {
if (debug) {
alog("ERROR: %s", av[0]);
}
}
return MOD_CONT;
}
int anope_event_notice(char *source, int ac, char **av)
{
return MOD_CONT;
}
int anope_event_sqline(char *source, int ac, char **av)
{
return MOD_CONT;
}
#endif
+3 -2
View File
@@ -143,8 +143,7 @@ int chan_has_user_status(Channel * chan, User * user, int16 status)
for (uc = user->chans; uc; uc = uc->next) {
if (uc->chan == chan) {
if (debug) {
alog("chan_has_user_status wanted %d the user is %d",
status, uc->status);
alog("debug: chan_has_user_status wanted %d the user is %d", status, uc->status);
}
return (uc->status & status);
}
@@ -874,6 +873,8 @@ void chan_adduser2(User * user, Channel * c)
chan_set_user_status(c, user, CUS_OWNER | CUS_OP);
} else if (ircd->protect && check_should_protect(user, chan)) {
chan_set_user_status(c, user, CUS_PROTECT | CUS_OP);
} else if (ircd->admin && check_should_protect(user, chan)) {
chan_set_user_status(c, user, CUS_PROTECT | CUS_OP);
} else if (check_should_op(user, chan)) {
chan_set_user_status(c, user, CUS_OP);
} else if (ircd->halfop && check_should_halfop(user, chan)) {
+8 -2
View File
@@ -2605,9 +2605,14 @@ static int do_register(User * u)
uc->chan = ci;
/* Implement new mode lock */
check_modes(c);
/* On most ircds you do not receive the admin/owner mode till its registered */
if (ircd->admin) {
anope_cmd_mode(s_ChanServ, chan, "+a %s", u->nick);
}
if (ircd->owner && ircd->ownerset) {
anope_cmd_mode(s_ChanServ, chan, "%s %s", ircd->ownerset,
u->nick);
}
}
return MOD_CONT;
}
@@ -3149,8 +3154,9 @@ static int do_set_mlock(User * u, ChannelInfo * ci, char *param)
}
}
/* We can't mlock +K if +i is not mlocked as well. */
if (ircd->noknock) {
/* Some ircd we can't set NOKNOCK without INVITE */
/* So check if we need there is a NOKNOCK MODE and that we need INVITEONLY */
if (ircd->noknock && ircd->knock_needs_i) {
if ((ci->mlock_on & ircd->noknock) && !(ci->mlock_on & CMODE_i)) {
ci->mlock_on &= ~ircd->noknock;
notice_lang(s_ChanServ, u, CHAN_SET_MLOCK_K_REQUIRED);
+5 -5
View File
@@ -398,7 +398,7 @@ Directive directives[] = {
{"CSAutokickMax", {{PARAM_POSINT, PARAM_RELOAD, &CSAutokickMax}}},
{"CSAutokickReason",
{{PARAM_STRING, PARAM_RELOAD, &CSAutokickReason}}},
{"CSDefBantype", {{PARAM_POSINT, PARAM_RELOAD, &CSDefBantype}}},
{"CSDefBantype", {{PARAM_INT, PARAM_RELOAD, &CSDefBantype}}},
{"CSDefNone", {{PARAM_SET, PARAM_RELOAD, &CSDefNone}}},
{"CSDefKeepTopic", {{PARAM_SET, PARAM_RELOAD, &CSDefKeepTopic}}},
{"CSDefOpNotice", {{PARAM_SET, PARAM_RELOAD, &CSDefOpNotice}}},
@@ -462,8 +462,8 @@ Directive directives[] = {
{PARAM_STRING, 0, &desc_HelpServ}}},
{"HelpServAlias", {{PARAM_STRING, 0, &s_HelpServAlias},
{PARAM_STRING, 0, &desc_HelpServAlias}}},
{"KeepBackups", {{PARAM_POSINT, PARAM_RELOAD, &KeepBackups}}},
{"KeepLogs", {{PARAM_POSINT, PARAM_RELOAD, &KeepLogs}}},
{"KeepBackups", {{PARAM_INT, PARAM_RELOAD, &KeepBackups}}},
{"KeepLogs", {{PARAM_INT, PARAM_RELOAD, &KeepLogs}}},
{"KillClones", {{PARAM_SET, PARAM_FULLONLY, &KillClones}}},
{"AddAkiller", {{PARAM_SET, PARAM_RELOAD, &AddAkiller}}},
{"KillClonesAkillExpire",
@@ -477,7 +477,7 @@ Directive directives[] = {
{"SuperAdmin", {{PARAM_SET, PARAM_RELOAD, &SuperAdmin}}},
{"LogMaxUsers", {{PARAM_SET, PARAM_RELOAD, &LogMaxUsers}}},
{"MailDelay", {{PARAM_TIME, PARAM_RELOAD, &MailDelay}}},
{"MaxSessionKill", {{PARAM_POSINT, PARAM_RELOAD, &MaxSessionKill}}},
{"MaxSessionKill", {{PARAM_INT, PARAM_RELOAD, &MaxSessionKill}}},
{"MaxSessionLimit", {{PARAM_POSINT, PARAM_RELOAD, &MaxSessionLimit}}},
{"MemoServName", {{PARAM_STRING, 0, &s_MemoServ},
{PARAM_STRING, 0, &desc_MemoServ}}},
@@ -536,7 +536,7 @@ Directive directives[] = {
{{PARAM_STRING, PARAM_RELOAD, &NSGuestNickPrefix}}},
{"NSListMax", {{PARAM_POSINT, PARAM_RELOAD, &NSListMax}}},
{"NSListOpersOnly", {{PARAM_SET, PARAM_RELOAD, &NSListOpersOnly}}},
{"NSMaxAliases", {{PARAM_POSINT, PARAM_RELOAD, &NSMaxAliases}}},
{"NSMaxAliases", {{PARAM_INT, PARAM_RELOAD, &NSMaxAliases}}},
{"NSNoGroupChange", {{PARAM_SET, PARAM_RELOAD, &NSNoGroupChange}}},
{"NSRegDelay", {{PARAM_TIME, PARAM_RELOAD, &NSRegDelay}}},
{"NSReleaseTimeout", {{PARAM_TIME, PARAM_RELOAD, &NSReleaseTimeout}}},
+4 -3
View File
@@ -87,7 +87,8 @@ IRCDVar ircd[] = {
0, /* Mode */
0, /* Mode */
0,
1, /* No Knock requires +i */
NULL, /* CAPAB Chan Modes */
}
,
{NULL}
@@ -122,8 +123,8 @@ IRCDCAPAB ircdcap[] = {
0, /* VL */
0, /* TLKEXT */
0, /* DODKEY */
0 /* DOZIP */
}
0, /* DOZIP */
0}
};
void anope_set_umode(User * user, int ac, char **av)
+61 -18
View File
@@ -40,7 +40,7 @@ IRCDVar ircd[] = {
"+io", /* Global alias mode */
"+", /* Used by BotServ Bots */
3, /* Chan Max Symbols */
"-iklmnpstR", /* Modes to Remove */
"aiklmnpst", /* Modes to Remove */
"+o", /* Channel Umode used by Botserv bots */
0, /* SVSNICK */
0, /* Vhost */
@@ -77,16 +77,18 @@ IRCDVar ircd[] = {
0, /* O:LINE */
0, /* VHOST ON NICK */
0, /* Change RealName */
0, /* ChanServ extra */
0, /* No Knock */
0, /* Admin Only */
DEFAULT_MLOCK, /* Default MLOCK */
0, /* Vhost Mode */
0, /* +f */
0, /* +L */
0,
0,
0,
0, /* ChanServ extra */
CMODE_p, /* No Knock */
0, /* Admin Only */
DEFAULT_MLOCK, /* Default MLOCK */
0, /* Vhost Mode */
0, /* +f */
0, /* +L */
0, /* +f Mode */
0, /* +L Mode */
0, /* On nick change check if they could be identified */
0, /* No Knock requires +i */
NULL, /* CAPAB Chan Modes */
}
,
{NULL}
@@ -121,8 +123,8 @@ IRCDCAPAB ircdcap[] = {
0, /* VL */
0, /* TLKEXT */
0, /* DODKEY */
0 /* DOZIP */
}
0, /* DOZIP */
0}
};
@@ -545,7 +547,7 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("NICK", anope_event_nick); addCoreMessage(IRCD,m);
m = createMessage("NOTICE", NULL); addCoreMessage(IRCD,m);
m = createMessage("PART", anope_event_part); addCoreMessage(IRCD,m);
m = createMessage("PASS", NULL); addCoreMessage(IRCD,m);
m = createMessage("PASS", anope_event_pass); addCoreMessage(IRCD,m);
m = createMessage("PING", anope_event_ping); addCoreMessage(IRCD,m);
m = createMessage("PRIVMSG", anope_event_privmsg); addCoreMessage(IRCD,m);
m = createMessage("QUIT", anope_event_quit); addCoreMessage(IRCD,m);
@@ -572,7 +574,7 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("CAPAB", anope_event_capab); addCoreMessage(IRCD,m);
m = createMessage("SJOIN", anope_event_sjoin); addCoreMessage(IRCD,m);
m = createMessage("SVINFO", NULL); addCoreMessage(IRCD,m);
m = createMessage("SVINFO", anope_event_svinfo); addCoreMessage(IRCD,m);
}
@@ -639,6 +641,15 @@ void anope_cmd_join(char *user, char *channel, time_t chantime)
send_cmd(NULL, "SJOIN %ld %s + :%s", time(NULL), channel, user);
}
/*
oper: the nick of the oper performing the kline
target.server: the server(s) this kline is destined for
duration: the duration if a tkline, 0 if permanent.
user: the 'user' portion of the kline
host: the 'host' portion of the kline
reason: the reason for the kline.
*/
void anope_cmd_akill(char *user, char *host, char *who, time_t when,
time_t expires, char *reason)
{
@@ -685,13 +696,25 @@ void anope_cmd_connect(int servernum)
anope_cmd_capab();
anope_cmd_server(ServerName, 1, ServerDesc);
anope_cmd_svsinfo();
anope_cmd_svinfo();
}
/* SVSINFO */
void anope_cmd_svsinfo()
{
send_cmd(NULL, "SVSINFO 5 5 0 :%ld", time(NULL));
/* not used */
}
/*
* SVINFO
* parv[0] = sender prefix
* parv[1] = TS_CURRENT for the server
* parv[2] = TS_MIN for the server
* parv[3] = server is standalone or connected to non-TS only
* parv[4] = server's idea of UTC time
*/
void anope_cmd_svinfo()
{
send_cmd(NULL, "SVINFO 5 5 0 :%ld", time(NULL));
}
/* CAPAB */
@@ -1274,4 +1297,24 @@ void anope_cmd_chg_nick(char *oldnick, char *newnick)
send_cmd(oldnick, "NICK %s", newnick);
}
/*
* SVINFO
* parv[0] = sender prefix
* parv[1] = TS_CURRENT for the server
* parv[2] = TS_MIN for the server
* parv[3] = server is standalone or connected to non-TS only
* parv[4] = server's idea of UTC time
*/
int anope_event_svinfo(char *source, int ac, char **av)
{
/* currently not used but removes the message : unknown message from server */
return MOD_CONT;
}
int anope_event_pass(char *source, int ac, char **av)
{
/* currently not used but removes the message : unknown message from server */
return MOD_CONT;
}
#endif
+4 -2
View File
@@ -1326,10 +1326,12 @@ static int is_on_access(User * u, NickCore * nc)
for (i = 0; i < nc->accesscount; i++) {
if (match_wild_nocase(nc->access[i], buf)
|| (u->vhost ? match_wild_nocase(nc->access[i], buf2) : 0)) {
|| (ircd->vhost ? match_wild_nocase(nc->access[i], buf2) : 0)) {
free(buf);
if (ircd->vhost) {
free(buf2);
if (u->vhost) {
free(buf2);
}
}
return 1;
}
+4 -3
View File
@@ -87,7 +87,8 @@ IRCDVar ircd[] = {
CMODE_f,
0,
1,
1, /* No Knock requires +i */
NULL, /* CAPAB Chan Modes */
}
,
{NULL}
@@ -122,8 +123,8 @@ IRCDCAPAB ircdcap[] = {
0, /* VL */
0, /* TLKEXT */
0, /* DODKEY */
0 /* DOZIP */
}
0, /* DOZIP */
0}
};
+62 -13
View File
@@ -87,7 +87,8 @@ IRCDVar ircd[] = {
0,
0,
1,
0, /* No Knock requires +i */
NULL, /* CAPAB Chan Modes */
},
{NULL}
};
@@ -121,8 +122,8 @@ IRCDCAPAB ircdcap[] = {
0, /* VL */
0, /* TLKEXT */
0, /* DODKEY */
0 /* DOZIP */
}
0, /* DOZIP */
0}
};
@@ -441,9 +442,9 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("MODE", anope_event_mode); addCoreMessage(IRCD,m);
m = createMessage("MOTD", anope_event_motd); addCoreMessage(IRCD,m);
m = createMessage("NICK", anope_event_nick); addCoreMessage(IRCD,m);
m = createMessage("NOTICE", NULL); addCoreMessage(IRCD,m);
m = createMessage("NOTICE", anope_event_notice); addCoreMessage(IRCD,m);
m = createMessage("PART", anope_event_part); addCoreMessage(IRCD,m);
m = createMessage("PASS", NULL); addCoreMessage(IRCD,m);
m = createMessage("PASS", anope_event_pass); addCoreMessage(IRCD,m);
m = createMessage("PING", anope_event_ping); addCoreMessage(IRCD,m);
m = createMessage("PRIVMSG", anope_event_privmsg); addCoreMessage(IRCD,m);
m = createMessage("QUIT", anope_event_quit); addCoreMessage(IRCD,m);
@@ -453,11 +454,8 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("USER", NULL); addCoreMessage(IRCD,m);
m = createMessage("WALLOPS", NULL); addCoreMessage(IRCD,m);
m = createMessage("WHOIS", anope_event_whois); addCoreMessage(IRCD,m);
/* DALnet specific messages */
m = createMessage("AKILL", NULL); addCoreMessage(IRCD,m);
m = createMessage("GLOBOPS", NULL); addCoreMessage(IRCD,m);
m = createMessage("GNOTICE", NULL); addCoreMessage(IRCD,m);
m = createMessage("GOPER", NULL); addCoreMessage(IRCD,m);
m = createMessage("RAKILL", NULL); addCoreMessage(IRCD,m);
m = createMessage("SILENCE", NULL); addCoreMessage(IRCD,m);
@@ -465,9 +463,8 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("SVSMODE", NULL); addCoreMessage(IRCD,m);
m = createMessage("SVSNICK", NULL); addCoreMessage(IRCD,m);
m = createMessage("SVSNOOP", NULL); addCoreMessage(IRCD,m);
m = createMessage("SQLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("SQLINE", anope_event_sqline); addCoreMessage(IRCD,m);
m = createMessage("UNSQLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("CAPAB", anope_event_capab); addCoreMessage(IRCD,m);
m = createMessage("CS", anope_event_cs); addCoreMessage(IRCD,m);
m = createMessage("HS", anope_event_hs); addCoreMessage(IRCD,m);
@@ -478,12 +475,14 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("SGLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("SJOIN", anope_event_sjoin); addCoreMessage(IRCD,m);
m = createMessage("SS", NULL); addCoreMessage(IRCD,m);
m = createMessage("SVINFO", NULL); addCoreMessage(IRCD,m);
m = createMessage("SVINFO", anope_event_svinfo); addCoreMessage(IRCD,m);
m = createMessage("SZLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("UNSGLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("UNSZLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("SNICK", anope_event_snick); addCoreMessage(IRCD,m);
m = createMessage("VHOST", anope_event_vhost); addCoreMessage(IRCD,m);
m = createMessage("SNICK", anope_event_snick); addCoreMessage(IRCD,m);
m = createMessage("VHOST", anope_event_vhost); addCoreMessage(IRCD,m);
m = createMessage("MYID", anope_event_myid); addCoreMessage(IRCD,m);
m = createMessage("GNOTICE", anope_event_notice); addCoreMessage(IRCD,m);
}
/* *INDENT-ON* */
@@ -1392,5 +1391,55 @@ void anope_cmd_chg_nick(char *oldnick, char *newnick)
send_cmd(oldnick, "NICK %s", newnick);
}
int anope_event_myid(char *source, int ac, char **av)
{
/* currently not used but removes the message : unknown message from server */
return MOD_CONT;
}
int anope_event_pass(char *source, int ac, char **av)
{
/* currently not used but removes the message : unknown message from server */
return MOD_CONT;
}
/*
* SVINFO
* parv[0] = sender prefix
*
* if (parc == 2)
* parv[1] = ZIP (compression initialisation)
*
* if (parc > 2)
* parv[1] = TS_CURRENT
* parv[2] = TS_MIN
* parv[3] = standalone or connected to non-TS (unused)
* parv[4] = UTC time
* parv[5] = ircd codename
* parv[6] = masking keys
*/
int anope_event_svinfo(char *source, int ac, char **av)
{
/* currently not used but removes the message : unknown message from server */
return MOD_CONT;
}
int anope_event_gnotice(char *source, int ac, char **av)
{
/* currently not used but removes the message : unknown message from server */
return MOD_CONT;
}
int anope_event_notice(char *source, int ac, char **av)
{
/* currently not used but removes the message : unknown message from server */
return MOD_CONT;
}
int anope_event_sqline(char *source, int ac, char **av)
{
/* currently not used but removes the message : unknown message from server */
return MOD_CONT;
}
#endif
+55 -24
View File
@@ -204,8 +204,13 @@ void do_server(const char *source, int ac, char **av)
{
Server *s;
if (debug)
alog("debug: Server introduced (%s) from %s", av[0], source);
if (debug) {
if (!*source) {
alog("debug: Server introduced (%s)", av[0]);
} else {
alog("debug: Server introduced (%s) from %s", av[0], source);
}
}
if (source[0] == '\0')
s = me_server;
@@ -263,77 +268,103 @@ void do_squit(const char *source, int ac, char **av)
void capab_parse(int ac, char **av)
{
int i;
char *s, *tmp;
char *temp;
for (i = 0; i < ac; i++) {
if (!stricmp(av[i], "NOQUIT")) {
temp = av[i];
s = myStrGetToken(temp, '=', 0);
tmp = myStrGetTokenRemainder(temp, '=', 1);
if (!s) {
continue;
}
if (!stricmp(s, "NOQUIT")) {
uplink_capab |= CAPAB_NOQUIT;
}
if (!stricmp(av[i], "TSMODE")) {
if (!stricmp(s, "TSMODE")) {
uplink_capab |= CAPAB_TSMODE;
}
if (!stricmp(av[i], "UNCONNECT")) {
uplink_capab |= CAPAB_UNCONNECT;
}
if (!stricmp(av[i], "NICKIP")) {
if (!stricmp(s, "NICKIP")) {
uplink_capab |= CAPAB_NICKIP;
}
if (!stricmp(av[i], "SSJOIN")) {
if (!stricmp(s, "SSJOIN")) {
uplink_capab |= CAPAB_NSJOIN;
}
if (!stricmp(av[i], "ZIP")) {
if (!stricmp(s, "ZIP")) {
uplink_capab |= CAPAB_ZIP;
}
if (!stricmp(av[i], "BURST")) {
if (!stricmp(s, "BURST")) {
uplink_capab |= CAPAB_BURST;
}
if (!stricmp(av[i], "TS5")) {
if (!stricmp(s, "TS5")) {
uplink_capab |= CAPAB_TS5;
}
if (!stricmp(av[i], "TS3")) {
if (!stricmp(s, "TS3")) {
uplink_capab |= CAPAB_TS3;
}
if (!stricmp(av[i], "DKEY")) {
if (!stricmp(s, "DKEY")) {
uplink_capab |= CAPAB_DKEY;
}
if (!stricmp(av[i], "PT4")) {
if (!stricmp(s, "PT4")) {
uplink_capab |= CAPAB_PT4;
}
if (!stricmp(av[i], "SCS")) {
if (!stricmp(s, "SCS")) {
uplink_capab |= CAPAB_SCS;
}
if (!stricmp(av[i], "QS")) {
if (!stricmp(s, "QS")) {
uplink_capab |= CAPAB_QS;
}
if (!stricmp(av[i], "UID")) {
if (!stricmp(s, "UID")) {
uplink_capab |= CAPAB_UID;
}
if (!stricmp(av[i], "KNOCK")) {
if (!stricmp(s, "KNOCK")) {
uplink_capab |= CAPAB_KNOCK;
}
if (!stricmp(av[i], "CLIENT")) {
if (!stricmp(s, "CLIENT")) {
uplink_capab |= CAPAB_CLIENT;
}
if (!stricmp(av[i], "IPV6")) {
if (!stricmp(s, "IPV6")) {
uplink_capab |= CAPAB_IPV6;
}
if (!stricmp(av[i], "SSJ5")) {
if (!stricmp(s, "SSJ5")) {
uplink_capab |= CAPAB_SSJ5;
}
if (!stricmp(av[i], "SN2")) {
if (!stricmp(s, "SN2")) {
uplink_capab |= CAPAB_SN2;
}
if (!stricmp(av[i], "TOK1")) {
if (!stricmp(s, "TOK1")) {
uplink_capab |= CAPAB_TOKEN;
}
if (!stricmp(av[i], "TOKEN")) {
if (!stricmp(s, "TOKEN")) {
uplink_capab |= CAPAB_TOKEN;
}
if (!stricmp(av[i], "VHOST")) {
if (!stricmp(s, "VHOST")) {
uplink_capab |= CAPAB_VHOST;
}
if (!stricmp(av[i], "SSJ3")) {
if (!stricmp(s, "SSJ3")) {
uplink_capab |= CAPAB_SSJ3;
}
if (!stricmp(s, "CHANMODES")) {
uplink_capab |= CAPAB_CHANMODE;
if (tmp) {
ircd->chanmodes = tmp;
}
}
if (s) {
free(s);
}
if (tmp) {
free(tmp);
}
}
}
+33 -10
View File
@@ -87,7 +87,8 @@ IRCDVar ircd[] = {
CMODE_f,
CMODE_L,
0,
1, /* No Knock requires +i */
NULL, /* CAPAB Chan Modes */
}
,
{NULL}
@@ -110,7 +111,7 @@ IRCDCAPAB ircdcap[] = {
0, /* SCS */
0, /* QS */
0, /* UID */
0, /* KNOCK */
CAPAB_KNOCK, /* KNOCK */
0, /* CLIENT */
0, /* IPV6 */
0, /* SSJ5 */
@@ -123,7 +124,8 @@ IRCDCAPAB ircdcap[] = {
0, /* VL */
0, /* TLKEXT */
0, /* DODKEY */
0 /* DOZIP */
0, /* DOZIP */
CAPAB_CHANMODE /* CHANMODE */
}
};
@@ -569,9 +571,9 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("MODE", anope_event_mode); addCoreMessage(IRCD,m);
m = createMessage("MOTD", anope_event_motd); addCoreMessage(IRCD,m);
m = createMessage("NICK", anope_event_nick); addCoreMessage(IRCD,m);
m = createMessage("NOTICE", NULL); addCoreMessage(IRCD,m);
m = createMessage("NOTICE", anope_event_notice); addCoreMessage(IRCD,m);
m = createMessage("PART", anope_event_part); addCoreMessage(IRCD,m);
m = createMessage("PASS", NULL); addCoreMessage(IRCD,m);
m = createMessage("PASS", anope_event_pass); addCoreMessage(IRCD,m);
m = createMessage("PING", anope_event_ping); addCoreMessage(IRCD,m);
m = createMessage("PRIVMSG", anope_event_privmsg); addCoreMessage(IRCD,m);
m = createMessage("QUIT", anope_event_quit); addCoreMessage(IRCD,m);
@@ -581,8 +583,6 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("USER", NULL); addCoreMessage(IRCD,m);
m = createMessage("WALLOPS", NULL); addCoreMessage(IRCD,m);
m = createMessage("WHOIS", anope_event_whois); addCoreMessage(IRCD,m);
/* DALnet specific messages */
m = createMessage("AKILL", NULL); addCoreMessage(IRCD,m);
m = createMessage("GLOBOPS", NULL); addCoreMessage(IRCD,m);
m = createMessage("GNOTICE", NULL); addCoreMessage(IRCD,m);
@@ -595,16 +595,16 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("SVSNOOP", NULL); addCoreMessage(IRCD,m);
m = createMessage("SQLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("UNSQLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("PROTOCTL", anope_event_capab); addCoreMessage(IRCD,m);
m = createMessage("CHGHOST", anope_event_chghost); addCoreMessage(IRCD,m);
m = createMessage("CHGIDENT", anope_event_chgident); addCoreMessage(IRCD,m);
m = createMessage("CHGNAME", anope_event_chgname); addCoreMessage(IRCD,m);
m = createMessage("NETINFO", NULL); addCoreMessage(IRCD,m);
m = createMessage("NETINFO", anope_event_netinfo); addCoreMessage(IRCD,m);
m = createMessage("SNETINFO", anope_event_snetinfo); addCoreMessage(IRCD,m);
m = createMessage("SETHOST", anope_event_sethost); addCoreMessage(IRCD,m);
m = createMessage("SETIDENT", anope_event_setident); addCoreMessage(IRCD,m);
m = createMessage("SETNAME", anope_event_setname); addCoreMessage(IRCD,m);
m = createMessage("VCTRL", NULL); addCoreMessage(IRCD,m);
m = createMessage("VCTRL", anope_event_vctrl); addCoreMessage(IRCD,m);
}
/* *INDENT-ON* */
@@ -1427,6 +1427,29 @@ void anope_cmd_svid_umode3(User * u, char *ts)
// not used
}
int anope_event_notice(char *source, int ac, char **av)
{
return MOD_CONT;
}
int anope_event_pass(char *source, int ac, char **av)
{
return MOD_CONT;
}
int anope_event_vctrl(char *source, int ac, char **av)
{
return MOD_CONT;
}
int anope_event_netinfo(char *source, int ac, char **av)
{
return MOD_CONT;
}
int anope_event_snetinfo(char *source, int ac, char **av)
{
return MOD_CONT;
}
#endif
+49 -11
View File
@@ -84,9 +84,13 @@ IRCDVar ircd[] = {
UMODE_x, /* Vhost Mode */
0, /* +f */
0, /* +L */
0,
0,
1,
0, /* +f Mode */
0, /* +L Mode */
1, /* On nick change check if they could be identified */
1, /* No Knock requires +i */
NULL, /* CAPAB Chan Modes */
1, /* No Knock requires +i */
NULL, /* CAPAB Chan Modes */
},
{NULL}
};
@@ -120,8 +124,8 @@ IRCDCAPAB ircdcap[] = {
0, /* VL */
0, /* TLKEXT */
CAPAB_DODKEY, /* DODKEY */
CAPAB_DOZIP /* DOZIP */
}
CAPAB_DOZIP, /* DOZIP */
0}
};
void anope_set_umode(User * user, int ac, char **av)
@@ -538,9 +542,9 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("MODE", anope_event_mode); addCoreMessage(IRCD,m);
m = createMessage("MOTD", anope_event_motd); addCoreMessage(IRCD,m);
m = createMessage("NICK", anope_event_nick); addCoreMessage(IRCD,m);
m = createMessage("NOTICE", NULL); addCoreMessage(IRCD,m);
m = createMessage("NOTICE", anope_event_notice); addCoreMessage(IRCD,m);
m = createMessage("PART", anope_event_part); addCoreMessage(IRCD,m);
m = createMessage("PASS", NULL); addCoreMessage(IRCD,m);
m = createMessage("PASS", anope_event_pass); addCoreMessage(IRCD,m);
m = createMessage("PING", anope_event_ping); addCoreMessage(IRCD,m);
m = createMessage("PRIVMSG", anope_event_privmsg); addCoreMessage(IRCD,m);
m = createMessage("QUIT", anope_event_quit); addCoreMessage(IRCD,m);
@@ -552,7 +556,7 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("WHOIS", anope_event_whois); addCoreMessage(IRCD,m);
m = createMessage("AKILL", NULL); addCoreMessage(IRCD,m);
m = createMessage("GLOBOPS", NULL); addCoreMessage(IRCD,m);
m = createMessage("GNOTICE", NULL); addCoreMessage(IRCD,m);
m = createMessage("GNOTICE", anope_event_gnotice); addCoreMessage(IRCD,m);
m = createMessage("GOPER", NULL); addCoreMessage(IRCD,m);
m = createMessage("RAKILL", NULL); addCoreMessage(IRCD,m);
m = createMessage("SILENCE", NULL); addCoreMessage(IRCD,m);
@@ -560,7 +564,7 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("SVSMODE", NULL); addCoreMessage(IRCD,m);
m = createMessage("SVSNICK", NULL); addCoreMessage(IRCD,m);
m = createMessage("SVSNOOP", NULL); addCoreMessage(IRCD,m);
m = createMessage("SQLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("SQLINE", anope_event_sqline); addCoreMessage(IRCD,m);
m = createMessage("UNSQLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("CAPAB", anope_event_capab); addCoreMessage(IRCD,m);
m = createMessage("CS", anope_event_cs); addCoreMessage(IRCD,m);
@@ -572,7 +576,7 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("SGLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("SJOIN", anope_event_sjoin); addCoreMessage(IRCD,m);
m = createMessage("SS", NULL); addCoreMessage(IRCD,m);
m = createMessage("SVINFO", NULL); addCoreMessage(IRCD,m);
m = createMessage("SVINFO", anope_event_svinfo); addCoreMessage(IRCD,m);
m = createMessage("SZLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("UNSGLINE", NULL); addCoreMessage(IRCD,m);
m = createMessage("UNSZLINE", NULL); addCoreMessage(IRCD,m);
@@ -581,7 +585,7 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("GCONNECT", NULL); addCoreMessage(IRCD,m);
m = createMessage("NETGLOBAL", NULL); addCoreMessage(IRCD,m);
m = createMessage("CHATOPS", NULL); addCoreMessage(IRCD,m);
m = createMessage("NETCTRL", NULL); addCoreMessage(IRCD,m);
m = createMessage("NETCTRL", anope_event_netctrl); addCoreMessage(IRCD,m);
m = createMessage("CLIENT", anope_event_client); addCoreMessage(IRCD,m);
m = createMessage("SMODE", NULL); addCoreMessage(IRCD,m);
}
@@ -1539,6 +1543,40 @@ void anope_cmd_svid_umode3(User * u, char *ts)
}
int anope_event_svinfo(char *source, int ac, char **av)
{
/* currently not used but removes the message : unknown message from server */
return MOD_CONT;
}
int anope_event_pass(char *source, int ac, char **av)
{
/* currently not used but removes the message : unknown message from server */
return MOD_CONT;
}
int anope_event_gnotice(char *source, int ac, char **av)
{
/* currently not used but removes the message : unknown message from server */
return MOD_CONT;
}
int anope_event_netctrl(char *source, int ac, char **av)
{
/* currently not used but removes the message : unknown message from server */
return MOD_CONT;
}
int anope_event_notice(char *source, int ac, char **av)
{
/* currently not used but removes the message : unknown message from server */
return MOD_CONT;
}
int anope_event_sqline(char *source, int ac, char **av)
{
/* currently not used but removes the message : unknown message from server */
return MOD_CONT;
}
#endif
+6 -5
View File
@@ -63,7 +63,7 @@ IRCDVar ircd[] = {
1, /* TS Topic Forward */
0, /* TS Topci Backward */
0, /* Protected Umode */
1, /* Has Admin */
0, /* Has Admin */
0, /* Chan SQlines */
0, /* Quit on Kill */
0, /* SVSMODE unban */
@@ -89,7 +89,8 @@ IRCDVar ircd[] = {
CMODE_f,
CMODE_L,
0,
1, /* No Knock requires +i */
NULL, /* CAPAB Chan Modes */
},
{NULL}
};
@@ -124,8 +125,8 @@ IRCDCAPAB ircdcap[] = {
CAPAB_VL, /* VL */
CAPAB_TLKEXT, /* TLKEXT */
0, /* DODKEY */
0 /* DOZIP */
}
0, /* DOZIP */
0}
};
unsigned long umodes[128] = {
@@ -512,7 +513,7 @@ void anope_cmd_svskill(char *source, char *user, const char *fmt, ...)
vsnprintf(buf, sizeof(buf), fmt, args);
va_end(args);
send_cmd(source, "KILL %s :%s", user, buf);
send_cmd(source, "SVSKILL %s :%s", user, buf);
}
void anope_cmd_svsmode(User * u, int ac, char **av)
+34 -10
View File
@@ -63,7 +63,7 @@ IRCDVar ircd[] = {
1, /* TS Topic Forward */
0, /* TS Topci Backward */
0, /* Protected Umode */
1, /* Has Admin */
0, /* Has Admin */
0, /* Chan SQlines */
0, /* Quit on Kill */
0, /* SVSMODE unban */
@@ -86,10 +86,11 @@ IRCDVar ircd[] = {
UMODE_x, /* Vhost Mode */
1, /* +f */
1, /* +L */
CMODE_f,
CMODE_L,
0,
CMODE_f, /* +f Mode */
CMODE_L, /* +L Mode */
0, /* On nick change check if they could be identified */
1, /* No Knock requires +i */
NULL, /* CAPAB Chan Modes */
},
{NULL}
};
@@ -123,7 +124,8 @@ IRCDCAPAB ircdcap[] = {
CAPAB_VL, /* VL */
CAPAB_TLKEXT, /* TLKEXT */
0, /* DODKEY */
0 /* DOZIP */
0, /* DOZIP */
CAPAB_CHANMODE, /* CHANMODE */
}
};
@@ -229,7 +231,7 @@ CBMode cbmodes[128] = {
{CMODE_Q, 0, NULL, NULL},
{CMODE_R, 0, NULL, NULL}, /* R */
{CMODE_S, 0, NULL, NULL},
{0}, /* T */
{CMODE_T, 0, NULL, NULL}, /* T */
{0}, /* U */
{CMODE_V, 0, NULL, NULL},
{0}, /* W */
@@ -291,6 +293,7 @@ CBModeInfo cbmodeinfos[] = {
{'Q', CMODE_Q, 0, NULL, NULL},
{'R', CMODE_R, 0, NULL, NULL},
{'S', CMODE_S, 0, NULL, NULL},
{'T', CMODE_T, 0, NULL, NULL},
{'V', CMODE_V, 0, NULL, NULL},
{0}
};
@@ -415,9 +418,8 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("MODE", anope_event_mode); addCoreMessage(IRCD,m);
m = createMessage("MOTD", anope_event_motd); addCoreMessage(IRCD,m);
m = createMessage("NICK", anope_event_nick); addCoreMessage(IRCD,m);
m = createMessage("NOTICE", NULL); addCoreMessage(IRCD,m);
m = createMessage("NOTICE", anope_event_notice); addCoreMessage(IRCD,m);
m = createMessage("PART", anope_event_part); addCoreMessage(IRCD,m);
m = createMessage("PASS", NULL); addCoreMessage(IRCD,m);
m = createMessage("PING", anope_event_ping); addCoreMessage(IRCD,m);
m = createMessage("PRIVMSG", anope_event_privmsg); addCoreMessage(IRCD,m);
m = createMessage("QUIT", anope_event_quit); addCoreMessage(IRCD,m);
@@ -450,6 +452,8 @@ void moduleAddIRCDMsgs(void) {
m = createMessage("TKL", anope_event_tkl); addCoreMessage(IRCD,m);
m = createMessage("EOS", anope_event_eos); addCoreMessage(IRCD,m);
m = createMessage("PASS", anope_event_pass); addCoreMessage(IRCD,m);
m = createMessage("ERROR", anope_event_error); addCoreMessage(IRCD,m);
m = createMessage("SMO", anope_event_smo); addCoreMessage(IRCD,m);
}
/* *INDENT-ON* */
@@ -509,7 +513,7 @@ void anope_cmd_svskill(char *source, char *user, const char *fmt, ...)
return;
}
send_cmd(source, "KILL %s :%s", user, buf);
send_cmd(source, "SVSKILL %s :%s", user, buf);
}
void anope_cmd_svsmode(User * u, int ac, char **av)
@@ -1544,4 +1548,24 @@ void anope_cmd_svid_umode3(User * u, char *ts)
// not used
}
int anope_event_error(char *source, int ac, char **av)
{
if (av[0]) {
if (debug) {
alog("ERROR: %s", av[0]);
}
}
return MOD_CONT;
}
int anope_event_notice(char *source, int ac, char **av)
{
return MOD_CONT;
}
int anope_event_smo(char *source, int ac, char **av)
{
return MOD_CONT;
}
#endif
+4 -3
View File
@@ -87,7 +87,8 @@ IRCDVar ircd[] = {
0,
0,
1,
1, /* No Knock requires +i */
NULL, /* CAPAB Chan Modes */
}
,
{NULL}
@@ -123,8 +124,8 @@ IRCDCAPAB ircdcap[] = {
0, /* VL */
0, /* TLKEXT */
CAPAB_DODKEY, /* DODKEY */
CAPAB_DOZIP /* DOZIP */
}
CAPAB_DOZIP, /* DOZIP */
0}
};
+5 -1
View File
@@ -8,10 +8,14 @@
VERSION_MAJOR="1"
VERSION_MINOR="7"
VERSION_PATCH="5"
VERSION_BUILD="338"
VERSION_BUILD="340"
# $Log$
#
# BUILD : 1.7.5 (340)
# BUGS : none
# NOTES : Applied patch 830 provided by Trystan to resolve several issues.
#
# BUILD : 1.7.5 (338)
# BUGS : N/A
# NOTES : Ran autoconf, as configure.in was changed in a previous commit