srvx.git
12 years agoadded real message "scanner" to mod-watchdog.c
pk910 [Fri, 22 Jul 2011 00:41:52 +0000 (02:41 +0200)]
added real message "scanner" to mod-watchdog.c

12 years agofixed NULL bug on modcmd.c cmd_stats_services
pk910 [Thu, 21 Jul 2011 23:57:30 +0000 (01:57 +0200)]
fixed NULL bug on modcmd.c cmd_stats_services

12 years agoreset triggered counter when changing mask (Watchdog BadWord)
pk910 [Thu, 21 Jul 2011 23:41:03 +0000 (01:41 +0200)]
reset triggered counter when changing mask (Watchdog BadWord)

12 years agoadded cmd_setbad
pk910 [Thu, 21 Jul 2011 23:31:41 +0000 (01:31 +0200)]
added cmd_setbad

12 years agochanged type of shitlist to dict_t and added cmd_listbad, cmd_addbad & cmd_delbad
pk910 [Thu, 21 Jul 2011 20:58:53 +0000 (22:58 +0200)]
changed type of shitlist to dict_t and added cmd_listbad, cmd_addbad & cmd_delbad

12 years agoconnect Watchdog before loading saved data (channels)
pk910 [Thu, 21 Jul 2011 19:22:01 +0000 (21:22 +0200)]
connect Watchdog before loading saved data (channels)

12 years agoadded cmd_register & cmd_unregister to mod-watchdog.c, fixed trigger & missing ;...
pk910 [Thu, 21 Jul 2011 01:25:14 +0000 (03:25 +0200)]
added cmd_register & cmd_unregister to mod-watchdog.c, fixed trigger & missing ; in example config block

12 years agofixed cmd_users counter (-1)
pk910 [Thu, 21 Jul 2011 01:23:34 +0000 (03:23 +0200)]
fixed cmd_users counter (-1)

12 years agocommented out AUTOHIDE check on LOC because of a ircu incompatibility (should be...
pk910 [Thu, 21 Jul 2011 01:03:42 +0000 (03:03 +0200)]
commented out AUTOHIDE check on LOC because of a ircu incompatibility (should be fixed, soon)

12 years agoadded total user count to cmd_users
pk910 [Thu, 21 Jul 2011 00:54:24 +0000 (02:54 +0200)]
added total user count to cmd_users

12 years agofixed watchdog config path (modules/watchdog)
pk910 [Wed, 20 Jul 2011 22:13:10 +0000 (00:13 +0200)]
fixed watchdog config path (modules/watchdog)

12 years agoadded chanlist to mod-watchdog.c
pk910 [Wed, 20 Jul 2011 21:44:54 +0000 (23:44 +0200)]
added chanlist to mod-watchdog.c

12 years agofixed mod-watchdog.c basics
pk910 [Wed, 20 Jul 2011 20:38:25 +0000 (22:38 +0200)]
fixed mod-watchdog.c basics

12 years agochanged needed access to set flag +b, added +I to ounregister FORCE list
Zer0n [Wed, 20 Jul 2011 19:56:10 +0000 (21:56 +0200)]
changed needed access to set flag +b, added +I to ounregister FORCE list

12 years agoadded mod-watchdog (without any functions, yet)
pk910 [Wed, 20 Jul 2011 20:23:00 +0000 (22:23 +0200)]
added mod-watchdog (without any functions, yet)

12 years agochanged cmd_myaccess: added ".. is owner of XX channel(s)."
Zer0n [Wed, 20 Jul 2011 18:42:12 +0000 (20:42 +0200)]
changed cmd_myaccess: added ".. is owner of XX channel(s)."

12 years agoadded flag +I (user not shown in staff list)
Lukas [Wed, 20 Jul 2011 13:38:10 +0000 (15:38 +0200)]
added flag +I (user not shown in staff list)

12 years agofixed P10_GLINE protocol violation (expiration has to be the relative time, not a...
pk910 [Tue, 19 Jul 2011 21:22:40 +0000 (23:22 +0200)]
fixed P10_GLINE protocol violation (expiration has to be the relative time, not a timestamp)

12 years agoextended MODE_FORWARD check (check if the user is allowed to use the passed target...
pk910 [Mon, 18 Jul 2011 22:15:43 +0000 (00:15 +0200)]
extended MODE_FORWARD check (check if the user is allowed to use the passed target channel)

12 years agoallow opers with security override enabled using MODE_NOFLOOD with the ! flag on...
pk910 [Sun, 17 Jul 2011 15:49:04 +0000 (17:49 +0200)]
allow opers with security override enabled using MODE_NOFLOOD with the ! flag on ChanServ modelock

12 years agostep over ! if it's allowed on MODE_NOFLOOD
pk910 [Sun, 17 Jul 2011 15:20:11 +0000 (17:20 +0200)]
step over ! if it's allowed on MODE_NOFLOOD

12 years agofully included MODE_AUDITORIUM & fixed a missing break
pk910 [Sun, 17 Jul 2011 14:47:26 +0000 (16:47 +0200)]
fully included MODE_AUDITORIUM & fixed a missing break

12 years agoremoved nickserv.c "comparison between signed and unsigned" compiler warning
pk910 [Sun, 17 Jul 2011 14:45:50 +0000 (16:45 +0200)]
removed nickserv.c "comparison between signed and unsigned" compiler warning

12 years agoremoved some debug output and fixed mode handling
pk910 [Sun, 17 Jul 2011 14:37:14 +0000 (16:37 +0200)]
removed some debug output and fixed mode handling

12 years agoinclude MASK check to LOC Authentication
pk910 [Sun, 17 Jul 2011 14:12:12 +0000 (16:12 +0200)]
include MASK check to LOC Authentication

12 years agocheck AutoHide setting on LOC Authentication
pk910 [Sun, 17 Jul 2011 04:49:22 +0000 (06:49 +0200)]
check AutoHide setting on LOC Authentication

12 years agoadded FAKEHOST2 to support the FAKEIDENT idea coming from srvx DEV
pk910 [Sun, 17 Jul 2011 02:05:29 +0000 (04:05 +0200)]
added FAKEHOST2 to support the FAKEIDENT idea coming from srvx DEV

12 years agoreverted new fakehost change method (causes ident as host on ircu :D)
pk910 [Sun, 17 Jul 2011 01:32:07 +0000 (03:32 +0200)]
reverted new fakehost change method (causes ident as host on ircu :D)

12 years agofix
pk910 [Sun, 17 Jul 2011 01:25:11 +0000 (03:25 +0200)]
fix

12 years agoshow Access on cmd_handleinfo & bypass mask check for clones
pk910 [Sun, 17 Jul 2011 01:17:18 +0000 (03:17 +0200)]
show Access on cmd_handleinfo & bypass mask check for clones

12 years agoadded helpserv public channel
pk910 [Sun, 17 Jul 2011 01:06:36 +0000 (03:06 +0200)]
added helpserv public channel

12 years agoadded CMODE_AUDITORIUM & CMODE_NOFLOOD
pk910 [Sun, 17 Jul 2011 01:04:25 +0000 (03:04 +0200)]
added CMODE_AUDITORIUM & CMODE_NOFLOOD

12 years agoadded unknown command handler (just reply that the command is unknown ^^)
pk910 [Fri, 8 Jul 2011 16:08:59 +0000 (18:08 +0200)]
added unknown command handler (just reply that the command is unknown ^^)

12 years agomake bots being able to see channels of other bots and services
pk910 [Fri, 8 Jul 2011 16:08:28 +0000 (18:08 +0200)]
make bots being able to see channels of other bots and services

12 years agosvsjoin, svsmode, svsnick, relay and simul added
pk910 [Fri, 8 Jul 2011 15:58:58 +0000 (17:58 +0200)]
svsjoin, svsmode, svsnick, relay and simul added

12 years agoadded mode +a access check
pk910 [Fri, 8 Jul 2011 15:42:10 +0000 (17:42 +0200)]
added mode +a access check

12 years agochannel created messages added
pk910 [Fri, 8 Jul 2011 15:26:36 +0000 (17:26 +0200)]
channel created messages added

12 years agoadded option to force opers to be in staff_auth_channel
pk910 [Fri, 8 Jul 2011 14:49:55 +0000 (16:49 +0200)]
added option to force opers to be in staff_auth_channel

12 years agofixed various build errors
pk910 [Fri, 8 Jul 2011 00:07:00 +0000 (02:07 +0200)]
fixed various build errors

12 years agoadded LOC Support with privilege exchange and privilege class interface
pk910 [Thu, 7 Jul 2011 23:54:49 +0000 (01:54 +0200)]
added LOC Support with privilege exchange and privilege class interface

12 years agoadded field called "website" to the handle info (only accessible by bots)
pk910 [Thu, 7 Jul 2011 23:20:19 +0000 (01:20 +0200)]
added field called "website" to the handle info (only accessible by bots)

12 years agoadded $.x.y fakhosts where $ gets replaced with the users auth handle
pk910 [Thu, 7 Jul 2011 21:04:36 +0000 (23:04 +0200)]
added $.x.y fakhosts where $ gets replaced with the users auth handle

12 years agogeneral P10_RELAY, P10_SVSMODE & P10_SVSJOIN support
pk910 [Thu, 7 Jul 2011 20:50:19 +0000 (22:50 +0200)]
general P10_RELAY, P10_SVSMODE & P10_SVSJOIN support

12 years agoincreased TOPICLEN to 500
pk910 [Thu, 7 Jul 2011 20:40:45 +0000 (22:40 +0200)]
increased TOPICLEN to 500

12 years agogeneral support for Channel Mode +NMFa and User Mode +SDXHst
pk910 [Thu, 7 Jul 2011 20:37:06 +0000 (22:37 +0200)]
general support for Channel Mode +NMFa and User Mode +SDXHst

12 years agoadded invite_timeout to the example configuration
pk910 [Thu, 7 Jul 2011 20:12:21 +0000 (22:12 +0200)]
added invite_timeout to the example configuration

12 years agoignore MODE -z but allow MODE +z
pk910 [Thu, 7 Jul 2011 20:07:40 +0000 (22:07 +0200)]
ignore MODE -z but allow MODE +z

12 years agoonly give users +ov if they have UserAutoOp enabled on cmd_resync
pk910 [Thu, 7 Jul 2011 20:01:59 +0000 (22:01 +0200)]
only give users +ov if they have UserAutoOp enabled on cmd_resync

12 years agocmd_invitemeall added
pk910 [Thu, 7 Jul 2011 19:57:24 +0000 (21:57 +0200)]
cmd_invitemeall added

12 years agofixes for the last commits (buildable now)
pk910 [Thu, 7 Jul 2011 19:32:22 +0000 (21:32 +0200)]
fixes for the last commits (buildable now)

12 years agoadded entry counter to cmd_myaccess
pk910 [Thu, 7 Jul 2011 19:28:38 +0000 (21:28 +0200)]
added entry counter to cmd_myaccess

12 years agoadded channel votes
pk910 [Thu, 7 Jul 2011 19:24:53 +0000 (21:24 +0200)]
added channel votes

12 years agoadded channel expire setting
pk910 [Thu, 7 Jul 2011 18:57:00 +0000 (20:57 +0200)]
added channel expire setting

12 years agoadded cmd_info peek time info
pk910 [Thu, 7 Jul 2011 18:42:12 +0000 (20:42 +0200)]
added cmd_info peek time info

12 years agoadded user invite timeout
pk910 [Thu, 7 Jul 2011 11:24:14 +0000 (13:24 +0200)]
added user invite timeout

12 years agoappended pre-install notes to INSTALL
pk910 [Thu, 7 Jul 2011 11:09:49 +0000 (13:09 +0200)]
appended pre-install notes to INSTALL

12 years agofixed a small build problem (RANLIB is undefined)
pk910 [Thu, 7 Jul 2011 11:07:23 +0000 (13:07 +0200)]
fixed a small build problem (RANLIB is undefined)

12 years agoapplied SpamServ patch
pk910 [Thu, 7 Jul 2011 10:46:19 +0000 (12:46 +0200)]
applied SpamServ patch
http://sourceforge.net/tracker/?func=detail&aid=906045&group_id=31654&atid=403003

12 years agoFix typo in #if test for localtime_r().
Michael Poole [Mon, 27 Jun 2011 01:59:22 +0000 (21:59 -0400)]
Fix typo in #if test for localtime_r().

13 years agoFix the name and type of helpserv_bot.persist_types[].
Michael Poole [Tue, 3 May 2011 02:21:19 +0000 (22:21 -0400)]
Fix the name and type of helpserv_bot.persist_types[].

This array really contains persistence lengths.  gcc 4.5.2 complains
about the mismatched comparisons.

src/mod-helpserv.c (struct helpserv_bot): Rename persist_types to
    persist_lengths.  Change its type to enum persistence_length.

13 years agoUpdate IP glob matching to work more accurately with IPv6.
Michael Poole [Mon, 22 Nov 2010 12:33:45 +0000 (07:33 -0500)]
Update IP glob matching to work more accurately with IPv6.

When given an IP like 2001::1234:5678:1:2:3:4, srvx (properly) makes
a glob like 2001:0:4137:*.  However, it wouldn't realize that the
glob actually matches the IP, because it used string glob matching.

src/tools.c (user_matches_glob): Use a parsed glob to match against
  the user's IP address.

13 years agoComplain properly about unterminated comments in config files.
Michael Poole [Mon, 22 Nov 2010 12:31:01 +0000 (07:31 -0500)]
Complain properly about unterminated comments in config files.

sylar noticed that unterminated comments would often cause an
infinite loop in the config parser.

src/recdb.c (fail_codes): Add UNTERMINATED_COMMENT value.
  (parse_skip_ws): Abort with that on EOF inside a comment.
  (failure_reason): Handle UNTERMINATED_COMMENT.

13 years agoFix available byte count returned by ioq_grow().
Michael Poole [Fri, 19 Nov 2010 21:02:01 +0000 (16:02 -0500)]
Fix available byte count returned by ioq_grow().

ioq_grow() needs to use the same -1 that ioq_put_avail() uses when
the "get" pointer is at byte 0.

src/ioset.c (ioq_grow): Reduce the reported available-byte count by 1.

13 years agoFix endianness of IPv6 addresses in generate_hostmask().
Michael Poole [Sun, 4 Jul 2010 21:58:35 +0000 (17:58 -0400)]
Fix endianness of IPv6 addresses in generate_hostmask().

src/proto-common.c (generate_hostmask): The IPv6 address parts are
    network-endian, so convert them before printing them.

14 years agoFix G-line handling and ?gtrace time display.
Michael Poole [Sun, 18 Apr 2010 23:21:41 +0000 (19:21 -0400)]
Fix G-line handling and ?gtrace time display.

src/gline.c (gline_comparator): Use lifetime rather than expiration time to
    sort G-lines.
  (gline_add): Only update expiration time and reason if the new
     modification time is newer than the previous one.  Never update
     issuer (ircu doesn't track it).
src/opserv.c (gtrace_print_func): Display G-lines with no expiration time
  correctly.

14 years agoClean up the implementations of mod_chanmode_format().
Michael Poole [Thu, 18 Mar 2010 03:31:45 +0000 (23:31 -0400)]
Clean up the implementations of mod_chanmode_format().

src/proto-bahamut.c (mod_chanmode_format): Use a second buffer for the
    arguments that get associated with some modes, and append it to
    outbuff at the end.

src/proto-p10.c (mod_chanmode_format): Likewise.

14 years agoSilently ignore +z when users use it from ChanServ. Fixes SF#2970686.
Michael Poole [Thu, 18 Mar 2010 03:00:32 +0000 (23:00 -0400)]
Silently ignore +z when users use it from ChanServ.  Fixes SF#2970686.

src/proto-p10.c (mod_chanmode_parse): Just ignore +z when MCP_REGISTERED
  is set (which only happens from ChanServ).
src/opserv.c (cmd_clearmodes): Do not automatically clear +z.

14 years agoSimplify G-line code somewhat. Generate better output for ?gtrace print.
Michael Poole [Thu, 18 Mar 2010 02:53:30 +0000 (22:53 -0400)]
Simplify G-line code somewhat.  Generate better output for ?gtrace print.

A hub with a negative clock skew will cause adverse results (like the
issued or lastmod times being in the network's future).  That will be
fixed in ircu.

src/gline.c (gline_for_p): Rewrite to just compare the G-line pointer.
  (gline_add): Use that instead.  Move "issued" back in time if the
    lastmod time is earlier than we know the G-line was issued.
src/opserv.c (OSMSG_GTRACE_FOREVER): New format string.
  (OSMSG_GTRACE_EXPIRED): Likewise.
  (gtrace_print_func): Use the appropriate OSMSG_GTRACE_* string.

14 years agoImplement remote /time query functionality.
Michael Poole [Thu, 18 Mar 2010 02:11:27 +0000 (22:11 -0400)]
Implement remote /time query functionality.

src/proto-p10.c (cmd_time): New function.
  (init_parse): Register it.

14 years agoSupport G-line lifetimes.
Michael Poole [Thu, 18 Mar 2010 02:11:00 +0000 (22:11 -0400)]
Support G-line lifetimes.

This involves using the old "expiration" as when the G-line becomes
inactive, and adding a new "lifetime" that is the latest of all the
expiration times that the G-line has ever had.  For convenience,
gline_add() will compare its new "lifetime" argument with its calculated
expiration time -- so callers can safely pass 0 as the lifetime.

src/gline.h (struct gline): Add the lifetime field.  Add Doxygen comments
    for future reference.
  (struct gline_discrim): Add bounds for the lifetime field.
  (gline_add): Add lifetime argument.

src/gline.c (KEY_LIFETIME): New database key.
  (delete_gline_for_p): Delete.
  (gline_expire): Use lifetime to determine whether a G-line expired.
  (gline_remove): Simplify greatly, because we don't actually remove
    G-lines any more (we just mark them immediately expired).
  (gline_add): Add parameter for lifetime, and use it.
  (gline_add_record): Parse lifetime field if it is present.  Simplify
    the parsing of the issued field.
  (gline_write_entry): Write the lifetime.
  (gline_discrim_create): Use ULONG_MAX rather than INT_MAX for
    maximum timestamps.  Parse "lifetime" arguments.
  (gline_discrim_match): Check the lifetime bounds.

src/mod-blacklist.c (dnsbl_hit): Pass 0 lifetime for gline_add().
  (blacklist_check_user): Likewise.

src/mod-sockcheck.c (sockcheck_issue_gline): Likewise.

src/opserv.c (OSMSG_GTRACE_FORMAT): Add lifetime field.
  (opserv_block): Pass 0 lifetime for gline_add().
  (cmd_gline): Likewise.
  (opserv_new_user_check): Likewise.
  (gtrace_print_func): Format the lifetime.

src/proto-p10.c (irc_gline): Include the lifetime in the correct place.
  (irc_ungline): Include the current timestamp (last modified time).
  (cmd_num_gline): When the lifetime argument is given, parse it.
  (cmd_gline): Likewise.  Also implement the normal ircu check for
    expiration as an absolute versus relative time.

14 years agoFix various mode-related bugs (including SF#2964782 and SF#2966959).
Michael Poole [Mon, 15 Mar 2010 01:40:24 +0000 (21:40 -0400)]
Fix various mode-related bugs (including SF#2964782 and SF#2966959).

src/chanserv.c (cmd_mode): Use MCP_NO_APASS, and unparse the mode
    change for display.
  (chan_opt_usergreeting): Use MCP_NO_APASS here too.
  (chanserv_conf_read): Likewise.
  (chanserv_channel_read): Likewise.

src/opserv.c (cmd_kick): Do not let users try to kick services.

src/proto.h (MCP_NO_APASS): New flag.

src/proto-p10.c (irc_user_mode_chars): Allow displaying +x.
  (mod_usermode): Treat +h as setting +x also.
  (mod_chanmode_parse): Reject +A and +U when passed MCP_NO_APASS.

14 years agoFix parsing of (P10) MODE <nickname> +<mode> <parameters>.
Michael Poole [Sun, 14 Mar 2010 22:51:52 +0000 (18:51 -0400)]
Fix parsing of (P10) MODE <nickname> +<mode> <parameters>.

src/proto-p10.c (cmd_mode): Unsplit the mode and any trailing arguments.

14 years agoRemove empty +z channels when the +z is removed.
Michael Poole [Tue, 9 Mar 2010 02:52:46 +0000 (21:52 -0500)]
Remove empty +z channels when the +z is removed.

src/proto-p10.c (dead_channels): New variable.
  (parse_line): Release any dead channels after each command.
  (mod_chanmode_parse): Queue -z'ed channels to be released.

14 years agoDo not send infolines when a normal user joins a +D channel.
Michael Poole [Tue, 9 Mar 2010 02:30:59 +0000 (21:30 -0500)]
Do not send infolines when a normal user joins a +D channel.

src/chanserv.c (handle_join): Suppress infolines for users whose JOIN is
    not going to be broadcast.

14 years agoFix dereference of invalid pointer with ?chaninfo of empty +z channel.
Michael Poole [Tue, 9 Mar 2010 02:29:53 +0000 (21:29 -0500)]
Fix dereference of invalid pointer with ?chaninfo of empty +z channel.

src/opserv.c (cmd_chaninfo): Make sure there is at least one element in
    the members array before reading from the first element.

14 years agoAlso use AUTO for mod-blacklist glines.
ThiefMaster [Tue, 2 Feb 2010 13:42:42 +0000 (14:42 +0100)]
Also use AUTO for mod-blacklist glines.

14 years agoMinor compilation and correctness fixes.
Michael Poole [Mon, 15 Feb 2010 22:14:51 +0000 (17:14 -0500)]
Minor compilation and correctness fixes.

src/heap.c (ulong_comparator): Fix for the case where "a" and "b" are
    different by more than the (signed) range of the "int" type.
src/mod-helpserv.c (cmd_modstats): Fix a signed/unsigned warning.
src/proto-p10.c (reg_notice_func): Fix some cut-and-paste errors.

14 years agoSuppress pointless display of oplevels in ?chaninfo.
Michael Poole [Mon, 15 Feb 2010 22:12:11 +0000 (17:12 -0500)]
Suppress pointless display of oplevels in ?chaninfo.

src/hash.* (modeNode_sort): Create as a "natural" sort order.
src/proto-p10.c (modeNode_sort): Rename to modeNode_sort_p10.
src/opserv.c (cmd_chaninfo): Clone and sort the membership array.  Only
    display oplevels if at least one member has a non-default oplevel.

14 years agoConvert a C++-style comment to C style for -ansi compilation mode.
Michael Poole [Mon, 15 Feb 2010 21:01:56 +0000 (16:01 -0500)]
Convert a C++-style comment to C style for -ansi compilation mode.

src/nickserv.c (opt_fakehost): Convert a // comment to a /* */ comment.

14 years agoAdd email argument to oregister
Michael Poole [Mon, 15 Feb 2010 21:00:28 +0000 (16:00 -0500)]
Add email argument to oregister

Conflicts:

src/nickserv.help

14 years agoAdd MODSTATS command to HelpServ to allow stats modifications.
ThiefMaster [Sat, 9 Jan 2010 16:43:18 +0000 (17:43 +0100)]
Add MODSTATS command to HelpServ to allow stats modifications.

14 years agoSend helpserv notifications only to one helper client; preferably the one in the...
ThiefMaster [Fri, 8 Jan 2010 21:08:50 +0000 (22:08 +0100)]
Send helpserv notifications only to one helper client; preferably the one in the channel.

14 years agoDisplay detailed usercounts in !peek (ops/voices/regulars)
ThiefMaster [Sun, 23 Aug 2009 17:29:25 +0000 (19:29 +0200)]
Display detailed usercounts in !peek (ops/voices/regulars)

14 years agoExclude accounts with the +b flags in visited/expiry and mark them
ThiefMaster [Sun, 23 Aug 2009 12:50:43 +0000 (14:50 +0200)]
Exclude accounts with the +b flags in visited/expiry and mark them
as "Bot" instead of "Normal" in !users.

14 years agoMake titlehost_suffix a global var so it can be accessed from outside of nickserv.c
ThiefMaster [Mon, 18 Jan 2010 15:34:59 +0000 (16:34 +0100)]
Make titlehost_suffix a global var so it can be accessed from outside of nickserv.c
Use *!*@account.*.titlehost_suffix in !ban *account instead of *!*@account.*

14 years agoGet rid of ugly goto in opt_fakehost.
ThiefMaster [Mon, 7 Sep 2009 11:25:49 +0000 (13:25 +0200)]
Get rid of ugly goto in opt_fakehost.

14 years agoCheck for truncated title fakehosts when renaming accounts.
ThiefMaster [Wed, 2 Sep 2009 11:53:27 +0000 (13:53 +0200)]
Check for truncated title fakehosts when renaming accounts.
Properly check for truncated fakehosts/idents when osetting ident@host.

14 years agoReject ident@host fakehost osets if the setter lacks access to fake idents
ThiefMaster [Tue, 1 Sep 2009 21:29:27 +0000 (23:29 +0200)]
Reject ident@host fakehost osets if the setter lacks access to fake idents
instead of setting the full ident@host as a fakehost (real@fake@fake).

14 years ago* Fix sending of empty fakehosts when osetting 'fakehost xxx@'
ThiefMaster [Fri, 8 May 2009 23:18:55 +0000 (01:18 +0200)]
* Fix sending of empty fakehosts when osetting 'fakehost xxx@'
* Improve display of fake ident & host ("Fakehost: ident@host")

14 years agoProperly check for fake idents when checking for user matches.
Michael Poole [Mon, 15 Feb 2010 20:56:42 +0000 (15:56 -0500)]
Properly check for fake idents when checking for user matches.

14 years agoAdd support for snircd-style fakehosts (usermode +h, fake idents)
ThiefMaster [Sat, 28 Mar 2009 13:12:07 +0000 (14:12 +0100)]
Add support for snircd-style fakehosts (usermode +h, fake idents)

14 years agoAdd 'service offchannel' command to enable/disable offchannel reaction of services.
ThiefMaster [Sat, 28 Mar 2009 14:41:15 +0000 (15:41 +0100)]
Add 'service offchannel' command to enable/disable offchannel reaction of services.

Conflicts:
        src/proto-common.c

14 years agoBug fix round-up for SF#2885593, SF#2924219 and SF#2946094.
Michael Poole [Mon, 15 Feb 2010 20:28:59 +0000 (15:28 -0500)]
Bug fix round-up for SF#2885593, SF#2924219 and SF#2946094.

Thanks to ZeRoFiGhter for finding and analyzing these.

src/chanserv.c (cmd_move): Scan all users' presence in the new channel.
  (merge_users): Use the newer "seen" time when merging.  Scan source
    users' presence in the new channel.
  (cmd_mdel_user): "actor" already considers whether the user is helping,
    so use that information.
  (handle_join): Allow queuing dynlimit updates during burst.
src/mod-helpserv.c (handle_join): Fix request list indexing.
src/proto-p10.c (irc_kill): Don't insert self in the kill path; our
    uplink does that (at least for ircu2.10.12.x).

14 years agoFix the time we set of SO_REUSEADDR for listening sockets.
Michael Poole [Fri, 8 Jan 2010 03:01:26 +0000 (22:01 -0500)]
Fix the time we set of SO_REUSEADDR for listening sockets.

src/ioset.c (ioset_listen): Linux -- reasonably -- requires that
    SO_REUSEADDR be set on a socket before binding it to an in-use socket.
    So do that.

14 years agoSend oplevels correctly during a burst.
Michael Poole [Thu, 7 Jan 2010 02:33:21 +0000 (21:33 -0500)]
Send oplevels correctly during a burst.

src/hash.c (AddChannelUser): Initialize oplevel to the maximum, not -1.
src/proto-p10.c (parse_oplevel): Move up for easier inlining.
  (modeNode_sort): New function.
  (irc_burst): Use it to sort the membership list for channels so the
    members' oplevels can be sent correctly.
  (cmd_burst): Simplify the handling of oplevels.
  (mod_chanmode_parse): Only change the member's oplevel when opping or
    deopping -- otherwise +v would set it to MAXOPLEVEL!

14 years agoFix the build with gcc 4.4 and newer versions of libtool.
Michael Poole [Thu, 7 Jan 2010 02:28:45 +0000 (21:28 -0500)]
Fix the build with gcc 4.4 and newer versions of libtool.

configure.in: Update AC_PREREQ to autoconf 2.64.  Use LT_INIT instead
  of AC_PROG_LIBTOOL.  Remove the deprecated AC_TYPE_SIGNAL (which we
  didn't use anyway).  Fix the indentation of the explanatory text for
  --without-kevent and --with-win32.

src/sar.c: Convert "struct sockaddr_storage" to "void *" to comply
  with C99's strict(er) aliasing rules.  Allocate off the stack or
  heap, as appropriate.  Add new function sar_free_nameserver() to
  clean up the heap-allocated data.

14 years agoFix input and output bugs in P10 IPv6 addresses with zero elements.
Michael Poole [Wed, 23 Sep 2009 15:26:33 +0000 (11:26 -0400)]
Fix input and output bugs in P10 IPv6 addresses with zero elements.

src/proto-p10.c (irc_p10_pton): Avoid writing past the end of ip->in6.
  (irc_p10_ntop): Avoid writing past the end of output.

14 years agoFix typo when parsing channel mode changes for +A, from SF bug #2787760.
Michael Poole [Mon, 21 Sep 2009 02:05:56 +0000 (22:05 -0400)]
Fix typo when parsing channel mode changes for +A, from SF bug #2787760.

src/proto-p10.c (mod_chanmode_parse): Use new_apass rather than new_upass
    when parsing mode +A changes.

14 years agoRemove the duplicated message ID reported in SF bug #2686643.
Michael Poole [Mon, 21 Sep 2009 01:58:09 +0000 (21:58 -0400)]
Remove the duplicated message ID reported in SF bug #2686643.

src/chanserv.c (CSMSG_USER_PROTECTED): Rename the second one of these to
    CSMSG_USER_PROTECTED_2.
  (handle_kick): Use that version.

14 years agoFix the account stamp parsing error reported in SF bug #2672922.
Michael Poole [Mon, 21 Sep 2009 01:54:33 +0000 (21:54 -0400)]
Fix the account stamp parsing error reported in SF bug #2672922.

src/proto-p10.c (mod_usermode): Update "word" to skip past account stamps.