215 Commits

Author SHA1 Message Date
brain
e65b2c70e4 Add error messages to Resolver::OnError()
Add exception handling to several places that use Resolver (it can throw)
Remove Resolver::ProcessResult(), its now handled within the bowels of dns.cpp


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4646 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 18:44:13 +00:00
brain
b53b47ca75 Fixes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4632 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 00:38:59 +00:00
brain
e00b5b82db Comments, add more detail, remove dnsqueue.h include from tons of places
Remove THREADED_DNS defines from all over the place


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4629 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 23:26:11 +00:00
brain
f44d25e8c3 Fixes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4628 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 23:09:07 +00:00
brain
be1e2e4ee5 Fixes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4627 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 23:07:26 +00:00
brain
e74bb16a4f Stuff to make user host resolving use class Resolver - not tested yet
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4626 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 22:59:59 +00:00
brain
145862efc7 Add support for comparing ipv6 for clone counting
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4620 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 19:15:27 +00:00
brain
4488e47713 The IPV6 stuff compiles now, with compile-correct ipv6 code. I dont know if this works yet.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4611 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 11:46:19 +00:00
brain
c80508b28b Move to entirely using insp_sockaddr and insp_inaddr for socket stuff, first step on the road to ipv6 support
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4609 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 10:37:16 +00:00
brain
95840640cb Change all references to voodoo numbers (7, 3 etc) to the new bitwise constants for user->registered
Change a lot of user->fd > -1 to use the IS_LOCAL() macro


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4569 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-28 12:00:25 +00:00
brain
da404eb415 Fix crashbug when exiting a remote client with threaded dns on (oops)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4552 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-27 11:41:20 +00:00
brain
dcd533e8e6 Move a confusing debug message within its conditional
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4461 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-20 16:52:08 +00:00
brain
57bba0c632 Make threaded dns stable by placing some mutexes around some stl stuff (this really needs lots of testing now)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4460 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-20 16:48:44 +00:00
brain
983f18f834 Tried to implement sprintf that returns std::string of any size, realized it would scale like unreal scales to ircnet (e.g. it wouldnt!) so took it back out.
Moved chop() functionality into userrec::AddWriteBuf and make it nicer (no strlen)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4433 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-18 21:43:37 +00:00
brain
93a796af16 Improved connect time by not referencing the hash for each user value, store a temp pointer
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4431 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16 21:23:27 +00:00
brain
51fb508494 Ignore empty lines, don't try and process them as commands
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4430 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16 20:13:40 +00:00
brain
09dbf0f948 Remove some casts
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4427 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16 19:58:25 +00:00
brain
d8fbbeafdf Craq removal service, at your service
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4426 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16 19:54:17 +00:00
brain
1e232ef237 i'm doing this in increments, because if i try and change too much at once, it breaks
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4425 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16 19:45:24 +00:00
brain
dcad2fe327 Fixing sendq crask
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4424 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16 19:43:38 +00:00
brain
f8956e4b45 *Changed user input/output buffering to incur less copies
*Fix warnings in command_parse


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4418 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16 15:45:13 +00:00
brain
d787576389 Fix socket leak properly this time
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4405 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16 13:52:10 +00:00
brain
0757a4a495 mass tidyup, change A LOT of stuff to const char** which was char** (such as parameters to commands in handlers)
which makes the new lineparser work neater with no casts. This also removes tons of casts from other locations
(all in all, ive added 2 casts and removed almost a hundred)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4403 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16 12:18:29 +00:00
brain
174169ac35 Rollback dns change
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4384 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-14 12:14:42 +00:00
brain
ccb1837a14 Fix dns socket leak found in stable
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4383 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-14 11:43:17 +00:00
w00t
91436d31a4 - userrec::ProcessNoticeMasks - provide a way to set or unset masks.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4276 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10 16:04:06 +00:00
w00t
d2381df1f7 -Clone mode methods into notice mask methods for userrec.
- Modify userrec to add char [] of notice masks, works in the same function as modes.

git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4273 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10 15:07:39 +00:00
brain
f6fc729c72 Did some renaming so that the methods for modes in chanrec and userrec are identical.
bool IsModeSet(const unsigned char c);
void SetMode(const unsigned char c, bool value);
Fixed m_botmode for new api


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4194 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08 21:37:16 +00:00
brain
fc9e00f492 Add userrec::HasMode, fix some typos.
TODO: Make more use of userrec::HasUmode('c') rather than user->modes['c'-65] *oogly*
Next - get umode +o working!


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4178 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08 18:03:30 +00:00
brain
3f389a4bd9 Convert new +isw modes to new mode format
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4176 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08 17:53:03 +00:00
brain
33ed72a1df Refactored user modes to work like the channel modes - core and module data now the same storage format without ::modebits
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4175 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08 17:44:16 +00:00
brain
820a8b8f9a More debug tracking
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3966 e03df62e-2008-0410-955e-edbf42e46eb7
2006-05-24 10:54:12 +00:00
brain
b7a9d06fb6 Broken kline matching in connect code (reported by LeaChim)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3959 e03df62e-2008-0410-955e-edbf42e46eb7
2006-05-14 16:56:56 +00:00
brain
2b3be48832 Ignore EAGAIN when write()ing
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3931 e03df62e-2008-0410-955e-edbf42e46eb7
2006-05-06 15:31:52 +00:00
brain
14004479dc Checks for negative fd's when adding them to the socketengine so we can generate less debug output
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3929 e03df62e-2008-0410-955e-edbf42e46eb7
2006-05-03 09:28:01 +00:00
brain
5d407fb44c delete operator tracking in debug mode (using a macro -- live with it.)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3904 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-24 13:28:07 +00:00
om
d54fbc71e2 Split inspircd_io.* insp inspsocket.* and configreader.* with a few odd bits going into inspircd.*, doesn't look like I've broken anything... :P
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3847 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-08 17:05:48 +00:00
om
39d2c7c6df Make WriteServ use WriteServ_NoFormat, code duplication = bad >:/
Change some weirdness using a stringstream for a simple append.
Force a flush of all opers' write buffers after they get the oper notice about a /DIE



git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3842 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-07 23:16:45 +00:00
w00t
a7b0c26a4c Holy christ that was a LOT OF SPACES. TABS, USE THEM, LOVE THEM, APPRECIATE THEM - we now have no stupid spaces. This was mostly a mass find/replace, so some indentation may be stuffed. Minor issue, though.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3838 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-06 02:25:20 +00:00
brain
040cd2edde IS_LOCAL check on flushwritebuf
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3756 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-26 13:18:38 +00:00
w00t
272d4011ea Possible fix for a desync condition
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3753 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-25 21:52:45 +00:00
brain
a4e29fc330 kill_link safety checks
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3752 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-25 20:07:25 +00:00
brain
bb5fa08081 Changed to use IS_LOCAL not user->fd > -1
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3699 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-13 01:19:26 +00:00
brain
6e9cea230c Adding to the buffer was clearing it first, reverting the buffering to a pre-alpha-6 kind of way of doing stuff (erk)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3689 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-12 02:27:38 +00:00
brain
4aaf01aafa Tidyup and move ConvToStr to a publically accessible place
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3640 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-10 17:51:26 +00:00
brain
2c5490c4c5 Another typo
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3639 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-10 17:43:01 +00:00
brain
024048d646 Moved more stuff into right places
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3637 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-10 17:39:19 +00:00
om
4fa0251cfb Changing by-value parameters to const references
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3605 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-09 21:11:50 +00:00
brain
0cf08426b2 Speedups
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3602 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-09 20:16:43 +00:00
brain
c330b24501 Added userrec::modebits - fast way of checking if user has +swi rather than an icky strchr
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3588 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-09 13:21:35 +00:00