645 Commits

Author SHA1 Message Date
peavey
1060436202 Add a setting to <connect> allowing the threshold for activation of the penalty system to be set in the configuration, or be disabled by setting it to 0. [jackmcbarn]
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11922 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-19 18:32:11 +00:00
danieldg
f3e45bfb0e Valgrind now runs completely clean.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11916 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-19 04:09:38 +00:00
danieldg
e50d016aa2 Cull channels, warn when Extensible objects are not culled as they must be
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11901 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-18 02:57:46 +00:00
danieldg
9db7af579c Make classbase and refcountbase uncopyable; expand comments on their indended uses
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11888 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-17 18:52:39 +00:00
danieldg
c80a20b5a7 Clean up excessive bits in User struct
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11882 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-17 02:43:07 +00:00
danieldg
548eacee47 Hold reference to the associated ConfigTag inside ConnectClass
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11880 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-17 02:40:16 +00:00
danieldg
bf6724c049 Rewrite ConfigReader again
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11879 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-17 02:14:44 +00:00
danieldg
62a1eab668 Clean up static allocations
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11878 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-16 17:01:49 +00:00
peavey
ee6087e2b4 Fix some signedness.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11857 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-12 18:49:42 +00:00
danieldg
ec1df83c87 CoreExport changes, clean up DoHostCycle when users are exempted
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11856 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-12 18:13:01 +00:00
danieldg
7f1d3c8b32 Fix WriteCommon when used on remote nicks
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11852 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-12 13:20:47 +00:00
peavey
e4839dc443 Move 2 static extensibles from user class to inspircd class for global access in an attempt to further fix windows build.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11838 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-11 18:03:17 +00:00
danieldg
7e843c22e1 Update Event and Request APIs
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11808 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-08 23:29:21 +00:00
danieldg
085a8bc660 Add OnBuildNeighborList hook, replaces all uses of OnHostCycle
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11802 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-05 23:27:46 +00:00
danieldg
98b2525070 Fix backwards HideWhoisServer check
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11798 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-05 14:06:03 +00:00
danieldg
8ed74be517 Fix crash due to null address in DNS
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11797 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-03 04:08:20 +00:00
danieldg
de25d94673 Get rid of a bunch of memory-wasting C-style strings
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11796 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-03 01:52:59 +00:00
danieldg
8456cf5ccd Fix valgrind issues and crashes on exit
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11794 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-02 03:15:46 +00:00
danieldg
6e6846b68a Fix some valgrind warnings
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11790 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-01 14:40:17 +00:00
danieldg
3dc81ee133 Add explicit reference-counting base class
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11785 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-30 21:55:21 +00:00
danieldg
4a64082e31 Move destruction logic for User and Spanningtree into cull()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11783 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-30 17:12:08 +00:00
danieldg
934d9a6a18 SendQ bugfixes
Fix DoWrite running on errored sockets
Add testnet module for sendq and shutdown testing
Prevent DoWrite from trying to write when writes are blocking

git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11768 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-27 00:22:29 +00:00
danieldg
7107ec12d8 Flexible SendQ
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11766 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26 16:41:07 +00:00
danieldg
6d03943426 Remove InspIRCd* parameters and fields
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11763 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26 14:13:13 +00:00
danieldg
3400b094ef Allow objects to be added to cull list during apply - fixes user deletion on netsplit
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11754 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-21 18:42:47 +00:00
danieldg
e2af2347fc Create StreamSocket for IO hooking implementation
Fixes the SSL SendQ bug
Removes duplicate code between User and BufferedSocket
Simplify SSL module API
Simplify EventHandler API (Readable/Writeable moved to SE)
Add hook for culled objects to invoke callbacks prior to destructor
 Replace SocketCull with GlobalCull now that sockets can close themselves
Shorten common case of user read/parse/write path:
 User::Write is now zero-copy up to syscall/SSL invocation
 User::Read has only two copy/scan passes from read() to ProcessCommand

git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11752 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-21 13:26:31 +00:00
danieldg
a068c47d71 Separate spy channels [jackmcbarn]
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11747 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-18 17:07:13 +00:00
danieldg
d9e3bb8d43 Remove redundant ServerInstance* fields
It has been impossible to have more than one InspIRCd* object in the
same address space for some time now, and this feature was never used.
This formalizes class InspIRCd as a singleton object.

git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11703 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-13 20:31:54 +00:00
danieldg
91df762e93 Membership* changes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11697 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-13 20:30:47 +00:00
danieldg
6d57bbe05c Change Extensible to use strongly typed entries
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11696 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-13 20:30:25 +00:00
w00t
3f647b9c16 Bump a number of version numbers.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11676 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-05 14:41:36 +00:00
danieldg
17fd32bf74 Remove HandleInternal and HandleServer, they are duplicated by Request* and FakeUser
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11672 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-03 21:06:44 +00:00
danieldg
cdf850dcbb Add OnChangeIdent and FIDENT support
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11652 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02 00:52:12 +00:00
danieldg
94a601fb3b Rip out VisData in preparation for replacing it with more flexible hooks
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11640 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02 00:50:43 +00:00
danieldg
1662f21eed Remove now-unused quitmsg/operquitmsg fields from User
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11637 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02 00:50:21 +00:00
danieldg
86775e2e98 ModResult conversion: Change return type of all module functions
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11634 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02 00:49:36 +00:00
danieldg
2455cd671f Remove strnewdup(), it is a good source of possible memory leaks
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11622 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02 00:47:36 +00:00
danieldg
54ebc7b84d Misc removal of pointless Extend strings
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11618 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02 00:47:05 +00:00
danieldg
6e85701ecb Remove a few unneeded string copies in the PRIVMSG path
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11606 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02 00:45:29 +00:00
danieldg
cfa482e186 Add User::DoHostCycle
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11604 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02 00:45:16 +00:00
danieldg
5d67a5fff1 Remove unneeded ProtocolInterface::Introduce
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11600 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02 00:44:40 +00:00
danieldg
deb6822302 Cast rework: use C++ style static_cast<> instead of C-style casts
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11595 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02 00:43:56 +00:00
danieldg
b47228902d Move IP<->sockaddr conversions into irc::sockets:: namespace
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11580 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-01 15:07:52 +00:00
danieldg
7a672d42e4 Remove more text<->binary IP conversions, making code more IPv4/IPv6 independent
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11578 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-01 15:07:36 +00:00
danieldg
6278262baa Rename User::GetPort to GetServerPort to clarify its purpose
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11577 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-01 15:07:27 +00:00
danieldg
5f4095e595 Change IP address storage in User to use more IPv4/IPv6 common code
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11575 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-01 15:07:11 +00:00
danieldg
819147178d Strip SUPPORT_IP6LINKS #define
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11572 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-01 15:06:47 +00:00
w00t
54e04fe36a Remove some very verbose debug that isn't really needed anymore
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11512 e03df62e-2008-0410-955e-edbf42e46eb7
2009-08-14 15:08:58 +00:00
danieldg
6cfd6ad816 Make rehash work more than once per run, and fix some uninitialized values in connect classes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11505 e03df62e-2008-0410-955e-edbf42e46eb7
2009-08-12 19:38:48 +00:00
danieldg
0036e3a70c Fixes for config reader
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11504 e03df62e-2008-0410-955e-edbf42e46eb7
2009-08-12 18:03:52 +00:00