aboutsummaryrefslogtreecommitdiff
path: root/include/base.h
Commit message (Expand)AuthorAgeFilesLines
* Don't CoreExport reference, fixes m_dnsbl on Windows•••The explicit instantiations of reference are now useless; remove Gravatar attilamolnar2013-08-301-1/+1
* Include <list> in base.h to prevent build errors on OpenBSD.Gravatar Peter Powell2012-12-251-0/+1
* Windows: In-depth cleanup (see details)•••-Fix x64 builds for Windows. Now all configurations compile. -Remove the non-working rebase stuff. -Remove the Windows fork hack and instead use FreeConsole() to emulate the behavior. This directly allows us to compile with ASLR, which is turned on now. -Remove the old IPC mechanism for the removed GUI. This is not needed anymore as the GUI wasn't ever supported on anything newer than 1.2 -Remove the WIN32/WINDOWS macros. _WIN32 is supported on all x86-based VC++ targets, so that's what we need. -Enable optimizations for release builds. -De-duplicate printf_c(), it was previously copy-pasted into colors.h for configure -Add the VC++ specific bad files in .gitignore -Disable PID writing on Windows. This is only making sense for *nix builds. -Replace the CPU usage retrieval with an algorithm analogous to the *nix behavior. Also supports separated now/total values. (Tested with a dummy busy loop - seems working) -Removed certain unused functions and variables -Remove stdint defines from the windows wrapper -Remove CRT debug alloc. This is a bad idea as it would define a macro to replace free which breaks builds. -Re-evaluated the warnings list, commented it. -Moved inspircd_config/_version to include/ to match *nix -Removed the creation of inspircd_se_config, as it isn't used at all. -Made non-git builds show as "r0" instead of "r" (thanks to @SaberUK for pointing this out) -Fixed up m_spanningtree's project paths. Now all configurations (debug/release x86/x64) have been tested and build properly. -Moved FindDNS out of the wrapper and matched its log behavior with *nix. (It's pointless having it in the wrapper after the recent slimming down) -Replaced random/srandom wrappers with a mechanism that tries to use Windows' Random API first is no SSL module is loaded. -Removed more old junk from support for compilers older than VC++ 2010 (we don't have project files for these, so compiling them would be hard anyways) -Removed the unused ClearConsole() -Removed unused includes from the wrapper. Also, do not include psapi.h here if we don't link psapi.lib. This should be done where appropriate. -Made inet_aton an inline function for increased performance -C4800, performance warning about bool forcing, resolved at all occurrences. -C4701, uninitialized variable 'cached', resolved at all occurrences. -dlerror() was migrated out of the wrapper for more thread safety (no global buffer being shared) and increased performance. -Removed the wrong CRT debug flags. This drains a lot of performance. -Removed the clock_gettime/gettimeofday wrappers -Replaced all TCHAR/ANSI mix-ups of functions with the correct respective function. -Added a block of C4355 for < VS2012 -Update project files for c870714 Gravatar ChrisTX2012-10-121-2/+2
* Fix bug #291 - fix rehashing bind tags not changing them between servers/clie...Gravatar Adam2012-09-121-0/+15
* Replace copyright headers with headers granting specific authors copyrightGravatar Robby-2012-04-191-8/+17
* Fixes for bug #12Gravatar Justin Crawford2012-04-141-2/+2
* Fixed Windows build on VS 2010Gravatar Adam2011-04-101-1/+4
* Include a placement operator new for classes that hide operator newGravatar Daniel De Graaf2010-08-171-6/+9
* Replace m_halfvoice with m_customprefix•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12503 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-02-201-2/+1
* Change SERVICE_{CMODE,UMODE} to SERVICE_MODE, which makes more sense•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12430 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2010-02-111-4/+2
* ...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
* Use ServiceProvider for inter-module dependencies•••This will stop dependency chains from preventing module reloads when it is not actually needed; however, it removes some failsafes that will need to be reimplemented in order to avoid unmapped vtables. This deprecates Request as an inter-module signaling mechanism, although SQL still uses it. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12140 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-11-161-3/+3
* Add Inspircd::AddServices•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12135 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-11-151-2/+33
* 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-35/+24
* Move forward declarations to typedefs.h•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11967 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-241-2/+0
* Use custom allocater to decide if refcountbase was allocated on the heap and ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11928 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-201-0/+5
* Maintain refcount of Module objects to complain about leaked pointers•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11925 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-191-10/+19
* Fix implementation of reference to const, use reference counting for Extensib...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11924 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-191-6/+11
* Remove VF_SERVICEPROVIDER, prevent heap allocation of ConfigReader•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11904 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-181-0/+14
* Revert "Remove duplicated function calls when using reference"•••If these functions are removed, the C++ compiler generates them - badly. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11896 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-171-4/+5
* Remove duplicated function calls when using reference•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11889 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-171-5/+4
* Make classbase and refcountbase uncopyable; expand comments on their indended...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11888 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-171-10/+32
* 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-2/+2
* Don't CoreExport reference.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11859 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-10-121-1/+1
* Make OnChannelRestrictionApply take a User* instead of a Membership* [jackmcb...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11858 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-121-2/+2
* Add explicit reference-counting base class•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11785 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-301-56/+54
* 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-1/+3
* Change Extensible to use strongly typed entries•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11696 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-131-118/+0
* Remove unneeded Extensible inheritance and remove "age" field from classbase•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11611 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-4/+0
* Update all wiki links to point to the new wiki. This was done automatically w...•••for file in $(find -type f -and -not -path '*/.svn/*' -and -not -name '*.so') ; do sed -e 's#http://www.inspircd.org/wiki#http://wiki.inspircd.org#' -e 's#http://wiki.inspircd.org/index.php/#http://wiki.inspircd.org/#' -i $file ; done git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11223 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar psychon2009-03-151-1/+1
* Nuke trailing spaces•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11105 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-02-141-8/+8
* Update copyrights for 2009.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2009-01-021-1/+1
* Clear up header insanity•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8808 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-02-031-2/+0
* Header update: 2007 -> 2008•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8694 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2008-01-101-1/+1
* Remove an unneeded forward declaration and typedef•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8612 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2007-12-301-6/+0
* In the grand tradition of huge fucking commits:••• - chanrec -> Channel - userrec -> User Enjoy. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8204 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2007-10-151-1/+1
* First step on the road of module loader rewriting. So far this only really re...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7971 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar om2007-08-281-1/+61
* Change to virtual•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7733 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2007-08-171-1/+1
* OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2007-07-161-1/+228
* 'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are au...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2007-07-161-228/+1
* Extra comments•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7368 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-06-171-6/+20
* Windows support. Tested and working to compile on freebsd and linux. Next ste...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7043 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2007-05-191-3/+3
* And now, just to force you to recompile the *whole* ircd.. updated headers on...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5998 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2006-12-151-6/+3
* Removal of an extern•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4875 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-111-2/+2
* extern time_t TIME -> InspIRCd::Time()•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4873 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-111-1/+1
* Extra debug all over the place, which maybe we should keep•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4767 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-071-1/+1
* Add single parameter versions of Extensible::Extend and Extensible::GetExt fo...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4324 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar om2006-07-111-0/+34
* Update docs to indicate new templated GetExt and Extend, remove references to...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4306 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-101-2/+4
* Take out broken id•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4305 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-101-3/+2
* Aaaand, fix the typo•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4304 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-101-1/+1