summaryrefslogtreecommitdiff
path: root/src/inspircd.cpp
Commit message (Expand)AuthorAgeFilesLines
* Improve support for NetBSD•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12438 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-02-121-1/+1
* Add random number generation functions to InspIRCd class.•••Default implementation uses libc random(), which can be better than rand(). If gnutls is loaded, gcrypt will be used to provide random numbers. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12404 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-02-091-1/+2
* Clean up some slow iterations•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12300 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-01-191-1/+0
* Remove excessive gettimeofday system calls•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12293 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-01-181-31/+30
* ...because every now and again, i have to do a massive commit.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12248 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2010-01-111-1/+1
* Force heap allocation of refcountbase, create usecountbase for non-allocation...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11978 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-251-1/+3
* Make User::uuid and User::server const•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11962 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-231-2/+1
* Move command-line items to CommandLineConf•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11949 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-211-25/+31
* Change module API to use LocalUser* where correct•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11943 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-211-1/+1
* Split LocalUser and RemoteUser•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11940 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-211-1/+1
* Fix null deref on Cleanup() called before FakeUser creation•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11926 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-191-1/+2
* Clean up some log messages•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11917 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-191-0/+1
* Valgrind now runs completely clean.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11916 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-191-8/+5
* Add more debug logging of object lifetimes•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11900 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-181-5/+3
* Fix module unmapping with culled Module objects•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11875 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-141-17/+4
* 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 Gravatar danieldg2009-10-141-2/+2
* removes unnecessary checks in modules, removes a superfluous else statement, ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11867 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-10-131-5/+3
* 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 Gravatar danieldg2009-10-131-13/+3
* Remove needless chdir() from inspircd executable•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11865 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-131-9/+0
* Fix empty SID validation and generation•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11851 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-121-1/+1
* Fix automatic SID generation when generated value is less than 100•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11850 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-121-3/+4
* Move 2 static extensibles from user class to inspircd class for global access...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11838 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-10-111-3/+4
* 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 Gravatar danieldg2009-10-031-19/+11
* Fix valgrind issues and crashes on exit•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11794 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-021-5/+6
* 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 Gravatar danieldg2009-09-301-3/+1
* Remove InspIRCd* parameters and fields•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11763 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-261-33/+22
* Clean up SocketEngine interface to allow edge-triggered I/O and sockets that ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11760 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-261-0/+1
* Move configuration filename specification to start script, to reduce hardcode...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11759 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-241-6/+6
* 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 Gravatar danieldg2009-09-211-21/+2
* Fix iteration of ServerInstance->Users->local_users now that QuitUser can mod...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11732 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-161-4/+6
* Clean up Command constructor•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11707 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-131-1/+1
* 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 Gravatar danieldg2009-09-131-5/+7
* Membership* changes•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11697 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-131-0/+4
* Change cmd_*.so to use the Module object API•••Create Module* objects for each command, and load them like modules. This unifies the external API for modules. Library directory is now deprecated: all modules are located in a single module directory. Header files for each command are no longer needed; remove. This also fixes two potential segfaults in m_spanningtree. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11668 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-031-5/+0
* Move user quit logic out of cull list•••This changes the cull list from a list of User* that ran special cleanup to a list of classbase* that simply deletes the objects. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11636 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-3/+1
* 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 Gravatar danieldg2009-09-021-6/+3
* Remove calls to strdup() in core, it is not better than std::string•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11623 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-1/+1
* More deallocation-at-exit cleanup•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11621 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-0/+1
* Misc removal of pointless Extend strings•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11618 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-0/+1
* Valgrind cleanup: deallocate RFC modes, clientlist, and uuidlist•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11614 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-1/+1
* Valgrind cleanup: Add RemoveRFCCommands() to dlclose() and delete the core co...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11613 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-1/+1
* Remove now-unused insp_sockaddr and insp_inaddr types•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11579 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-011-3/+0
* Move VERSION/REVISION to their own header to avoid needless rebuilds on update•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11561 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-011-1/+1
* Fix printf format warning•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11508 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-08-121-1/+1
* Fixes for config reader•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11504 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-08-121-24/+2
* Fix thread join not working for subclasses of Thread because of C++ destructo...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11500 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-08-101-0/+1
* Make sure usage lines up neatly.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11465 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-08-021-2/+1
* Fix possible segfault on giving an unknown cmdline argument. index holds the ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11439 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-07-041-1/+1
* Make rehash generate a new ServerInstance->Config object•••This makes it possible to cancel a pending rehash, and fixes possible threading issues with rehash and other events. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11424 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-07-011-12/+10
* Move list of open ports out of Config object•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11423 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-07-011-4/+4