danieldg
8a13e4ebf7
Add ModeHandler::cull() for auto-deletion, fixes call of virtual method on partially-destructed object
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11883 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-17 02:43:14 +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
danieldg
dbf4d59543
Fix module unmapping with culled Module objects
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11875 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-14 22:12:55 +00:00
danieldg
e80a1296a0
Move static map of extensions into ServerInstance, add const-correctness
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11873 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-14 18:39:38 +00:00
danieldg
37fd031da0
Remove Command and ModeHandler objects in their destructors; fixes possible pointer leak if a module was not careful when triggering exceptions in its constructor
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11872 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-13 21:34:29 +00:00
danieldg
d1ddbd62f9
Change to new execution directory structure
...
Don't change CWD into bin/
Remove path-resolution hacks from configuration
Store pidfile and xline DBs in data, logs in logs.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11866 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-13 01:44:22 +00:00
danieldg
2602f4efbd
Encode module API version in the init_module symbol; fixes conflic with glibc-exported init_module
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11863 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-12 23:41:43 +00:00
danieldg
060f403430
DLLFactory--
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11861 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-12 22:56:41 +00:00
peavey
c8863dabcc
Don't CoreExport reference.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11859 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-12 20:50:23 +00:00
danieldg
4ab15e8655
Make OnChannelRestrictionApply take a User* instead of a Membership* [jackmcbarn]
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11858 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-12 20:23:26 +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
579e707f01
m_exemptchanops by jackmcbarn - channel mode +X to allow per-channel setting
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11855 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-12 18:12:48 +00:00
peavey
e4a590c792
Less CoreExport.. Too much of a good thing..
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11847 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-11 23:25:31 +00:00
peavey
80c0979239
More CoreExport, brought the errors down, but some still persist.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11846 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-11 22:32:06 +00:00
peavey
228c2b2e58
More CoreExport.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11843 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-11 21:49:18 +00:00
peavey
4fa4afe580
CoreExport Membership since windows needs this.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11839 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-11 19:12:23 +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
peavey
c049a4a0f5
Use CoreExport for the ServerInstance extern. Fixes unresolved symbol error for windows DLLs like modules and commands.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11833 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-11 15:23:33 +00:00
danieldg
26cd5393c9
Update m_cloaking to use free-form keys instead of weakening the hash IV
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11820 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-10 17:06:52 +00:00
danieldg
b6a5e2bd14
Add server ports to ServerInstance->ports, enable SSL on them using OnHookIO
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11810 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-09 19:00:09 +00:00
danieldg
c4d6ce8c5e
Add names for all modes (part 1 of named channel mode list)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11809 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-08 23:34:01 +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
f9717e35ca
Take advantage of link errors to check API_VERSION at module load time
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11805 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-06 16:50:48 +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
9336468f5b
Run DelMode and DelModeWatcher in RemoveModule
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11799 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-05 15:43:28 +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
e57ed15735
Fix routing for normal core commands like QUIT
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11795 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-02 06:13:57 +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
75d9c67804
Add ROUTE_TYPE_MESSAGE and use for PRIVMSG/NOTICE routing
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11791 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-01 21:41:52 +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
7aa5e059a8
Remove include/inspircd_se_config.h and socketengine-specific headers
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11784 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-30 18:31:05 +00:00
danieldg
5fd6471070
Detect, complain, and don't crash when objects are inserted into cull list twice
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11782 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-30 16:28:43 +00:00
danieldg
e279597c0b
Fix compilation of SQL modules, use GlobalCulls to clean up deleted modules
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11780 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-30 03:22:25 +00:00
danieldg
d811ffeda2
Fix linking errors on BSD
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11774 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-28 02:21:43 +00:00
danieldg
7c1509e0a7
Fix compile errors on BSD
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11773 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-28 01:59:21 +00:00
danieldg
d5e36aa2b2
Fix warnings from BSD build and work around the failures of BSD make
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11771 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-28 00:55:42 +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
ee913368d7
Change IS_FAKE and CheckTimeStamp to IS_SERVER and ResolveModeConflict to clarify their use
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11765 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26 16:40:58 +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
810c662c9b
Add FD_WANT_SINGLE_WRITE to efficiently replace FD_WANT_POLL_WRITE
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11762 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26 14:12:45 +00:00
danieldg
939cb0ba98
Clean up SocketEngine interface to allow edge-triggered I/O and sockets that do not force readability.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11760 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26 01:43:09 +00:00
danieldg
c8026bc2d7
Move configuration filename specification to start script, to reduce hardcoded paths in executable
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11759 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-24 01:44:29 +00:00
danieldg
7d93921aab
Describe module purpose in /MODULES output
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11757 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-22 01:05:35 +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
01c23b31f7
Remove Extensible items from user, channel, and Membership on module unload
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11730 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-15 21:25:30 +00:00