w00t
349b6b9193
Rewrite BufferedSocket::BindAddr to actually make sense, and not infinite loop under some conditions, etc. This also splits a lot of it into DoBindMagic(), for readability.
...
Seems to work okay on an invalid bind and nonexistant bind.. Fixes bug #754 , reported by HiroP and Indoril.
Fix FD leak in some circumstances: if bind fails hard (requested address couldn't be bound), Close() the socket. Also fixes a deficiency of the previous commit in that if one address failed to bind, the FD would be invalidated.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11189 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-09 18:51:07 +00:00
danieldg
63bdb9171f
An FJOIN is not bursting unless the source server is bursting
...
Fixes bug #755
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11188 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-09 16:17:57 +00:00
danieldg
3ddb8accad
Correctly fill LastParseParams on servermode. Fixes bug 763, thanks Ankit
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11187 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-09 13:38:45 +00:00
danieldg
a5baaeecf6
m_override: fix messages on multi-mode changes
...
This fixes bug 664
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11186 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-08 22:01:19 +00:00
danieldg
269f12c272
Fix +k for real
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11185 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-07 05:47:09 +00:00
danieldg
2d004034fe
Let's try that +k fix again, this time with more testing
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11184 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-07 04:54:50 +00:00
danieldg
acb72fdf2d
Remove some unneeded debug messages on the common case of FJOIN
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11183 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-07 02:45:10 +00:00
danieldg
1c33356677
Fix r11178 not allowing keys to be unset
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11182 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-07 02:45:02 +00:00
danieldg
96a4a1d41e
Include explicit parameter list in ProtocolInterface::SendMode
...
Also leave the strings split into deque, there's no need to pack it into a
string just to unpack it during the translate.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11181 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-07 01:29:45 +00:00
danieldg
526f5a4a02
Construct explicit parameter type list for MODE parameters
...
Previously, we used TR_SPACENICKLIST on the parameters. This worked only because
usually, if anything in the list parsed as a nick, then it was a nick. However,
some modes like +k and +g allow free-form text, which could also resolve as a
nick. Add extra parameters to allow modes to specify their TranslateType,
defaulting to TR_TEXT.
This fixes bug #757 , found by Taros
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11180 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-06 22:28:57 +00:00
danieldg
eacd707421
Send SVSNICKs during nick collision to prevent servers that do not fully implement collisions from killing users
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11179 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-06 20:39:02 +00:00
w00t
f25f6319d5
Drop channel keys if they are identical to the already-set key (fix for bug #756 , reported by Taros)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11178 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-06 10:04:51 +00:00
w00t
7ce1303cab
Fix number of events in noctcp, so 'C' is shown in EXTBAN= 005 token, fixes bug #758 reported by Taros.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11177 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-06 10:04:50 +00:00
w00t
f9336c57cc
Fix +g notices going to remote users. Fixes bug #749 , reported by Taros.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11176 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-06 10:04:49 +00:00
w00t
63f8e06d41
Convert helpop to use a ModeHandler base rather than a SimpleUserModeHandler, users should not be able to set +h. Fixes #750 , reported by Taros.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11175 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-06 10:04:42 +00:00
danieldg
d17bf9f895
m_sakick needs to be marked VF_COMMON
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11174 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-05 21:45:16 +00:00
danieldg
55865e9b1b
Final configuration comment update [jdhore]
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11173 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-05 05:41:17 +00:00
danieldg
ebab04970b
Fix delayjoin adding an extra @ prefix mode
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11172 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-05 01:51:30 +00:00
danieldg
75f147a25e
Fix crash when services (or a misbehaving remote server) introduces a server with duplicate SID
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11171 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-05 01:27:19 +00:00
danieldg
94ed0a3ed4
Add missing .example to modules.conf <include>
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11170 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-04 05:24:15 +00:00
danieldg
6fc5882d5c
delayjoin: Remove broken check for channel ops, use ModeHandler parameter instead
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11169 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-04 05:12:25 +00:00
danieldg
71cd4678a5
Clean up delayjoin extension behavior
...
There were a number of cases where delayjoin left stale metadata attached
to a user, which wastes memory. Also, the quit message of a users in a +D
channel could not be seen because of the emulated PART.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11168 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-04 04:54:09 +00:00
danieldg
e88f1be133
Grammar/whitespace fixup
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11167 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-04 00:57:52 +00:00
danieldg
08d55d0b30
More documentation to example configs [jdhore]
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11166 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-04 00:46:12 +00:00
danieldg
2089dfce57
Add more documentation to example configs [jdhore]
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11165 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-04 00:07:56 +00:00
danieldg
d66ce94423
Restrict some /WHO options to opers
...
There is no reason to be able to query the umodes of other users or the port
they connected on; this can contain private information.
If HideWhoisServer is on, also restrict local/far query.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11164 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-03 17:45:31 +00:00
danieldg
b2688f6cdf
Revert "Don't apply channel modes received in an non-burst, non-creation FJOIN, because they could be out of date"
...
This keeps the protocol closer to TS6 behavior. The mode sync in the FJOIN is
used to resync channel modes after a desync caused by modes crossing on the
wire. In the future, an alternate join command will be used to prevent MODExJOIN
desync without rejecting modes from an FJOIN.
This reverts commit 4820e6bb9578e53ea1553070108599349d0ffbcb.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11163 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-02 23:38:04 +00:00
danieldg
4820e6bb95
Don't apply channel modes received in an non-burst, non-creation FJOIN, because they could be out of date
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11162 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-02 22:08:56 +00:00
danieldg
f0552b8d76
Fix +P channels being deleted when the final user /QUITs, thanks SnoFox
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11161 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-02 04:23:22 +00:00
dz
789e43b40d
Fix a crash in m_conn_waitpong, spotted by Obi_Wan.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11159 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-01 13:20:28 +00:00
danieldg
862bdf27b8
Revert r10640, it blocked override notices unless they contained an op/deop/etc
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11158 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-27 21:53:01 +00:00
danieldg
a940fbddee
Add more information to /CHECK output
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11157 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-27 16:02:21 +00:00
danieldg
00fa6d592e
[Taros] Add m_sakick.so
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11156 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-27 02:44:36 +00:00
danieldg
d3c32dc048
Fix SID-sourced KILL being displayed to killee as from SID not from server name
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11155 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-27 01:05:05 +00:00
danieldg
e75c523e59
Fix previous module mismatch message; "remote" is misleading when sent as an ERROR
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11154 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-27 01:04:57 +00:00
danieldg
b6de960d97
Add VF_COMMON to all modules that provide an extban
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11153 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-25 19:03:13 +00:00
danieldg
2c8dd5f19a
Remove VF_COMMON from m_banredirect, it only adds an extban
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11152 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-25 18:33:19 +00:00
danieldg
a01d6ade99
Clarify CMD_LOCALONLY return values for /WATCH
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11151 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-25 17:26:17 +00:00
danieldg
c2623e318f
m_customtitle: Don't route TITLE command, route metadata only
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11150 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-25 17:26:09 +00:00
danieldg
d56e1a1d58
Allow accountname to be changed without an explicit unset
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11149 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-25 02:54:04 +00:00
danieldg
37671dc1cc
Clarify module mismatch message
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11148 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-24 23:50:04 +00:00
danieldg
4d42d54458
Allow non-opers to use /MKPASSWD
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11147 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-24 18:14:38 +00:00
danieldg
e8a6dfa763
Fix svn:keywords on m_nationalchars.cpp
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11146 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-24 03:19:19 +00:00
special
ecc55199cf
m_uninvite and m_ssl_oper_cert should be marked as VF_COMMON and returning CMD_LOCALONLY respectively
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11144 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-23 13:30:38 +00:00
special
410e7b9e2f
Forward port r11142: Commands that only give a response locally should not be propagated globally, especially if not flagged as VF_COMMON (specifically, m_sslinfo). Found by satmd.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11143 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-23 13:18:59 +00:00
w00t
4efdfce66a
In retrospect, not allowing *any* XLines to be set was pretty fucking stupid.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11141 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-22 14:37:38 +00:00
w00t
590dd9292f
Don't remove an expired xline on add, simply drop duplicates (1.1 behaviour). This can lead to bouncing between servers.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11140 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-22 10:54:09 +00:00
w00t
2497f6da2f
Don't allow expired XLines to be added.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11139 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-22 10:54:08 +00:00
peavey
ce19cce8cb
Forward port r11137 from stable:
...
================================
Use extended open method instead of the basic. Because basic always does SQLITE_OPEN_READWRITE|SQLITE_OPEN_CREATE and we just want SQLITE_OPEN_READWRITE so we can warn if the db does not exist, rather than create an empty db.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11138 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-22 02:56:43 +00:00
danieldg
d6501677e1
Remove unneeded "fd" member of issl_session
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11135 e03df62e-2008-0410-955e-edbf42e46eb7
2009-02-19 22:32:17 +00:00