summaryrefslogtreecommitdiff
path: root/src/inspsocket.cpp
Commit message (Expand)AuthorAgeFilesLines
* Remove a ton of inspsocket debug•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6360 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2007-01-171-47/+2
* Add stuff so that the core catches CoreException properly•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6017 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-161-11/+10
* Jesus, look who's the commit whore today. More header updates, and removal of...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5996 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2006-12-151-6/+3
* Fix EOF conditions on inspsockets which are having their write() handled by m...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5947 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-111-0/+9
* Debug stuff, and some minor fixes•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5927 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-111-1/+1
* Make it all work properly. Have it wait for handshake to complete before send...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5898 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-091-1/+0
* It works! WOO AND YAY! (this isnt finished yet, only an idiot would use this ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5897 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-091-7/+31
* Add OnRawSocketConnect, we've not had it till now because we've not needed it :)•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5887 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-091-0/+11
* Not yet tested -- allow iohooking of inspsockets•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5886 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-12-091-33/+111
* Close an inspsocket on getting error state•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5608 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-311-0/+4
* Socket error state stuff•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5607 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-311-1/+3
* Start of stuff to handle socket error state•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5606 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-311-0/+1
* Whack unused var warning•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5596 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-311-1/+0
* Set flags correctly when receiving a module-requested write event•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5595 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-311-12/+3
* Tidy up WaitingForWriteEvent stuff•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5594 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-311-6/+17
* Make this properly obey the write/read states. This ZOOMS now.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5588 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-301-22/+34
* WARNING: This commit breaks kqueue and select -- work in progress!•••epoll now allows both a write and a read event on a socket at the same time. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5580 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-301-9/+1
* More sensible way to flush sockets•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5517 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-221-1/+13
* Tweaks to drain socket on write•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5513 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-221-1/+2
* Fix (we hope!) for the 'internal error processing connection' bug. Thanks to ...•••Its complicated, bug one of us for more info if youre really interested. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5446 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-10-071-2/+6
* 1) Make earlier fix to inspsocket actually compile without error•••2) Make sure that query string is sent back in the reply git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5155 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-09-071-2/+2
* Delete the file descriptor upon write error to an inspsocket, preventing it e...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5154 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-09-071-0/+2
* Wahhhhhhhhhhhh bwahahaha. Mass commit to tidy up tons of messy include lists•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5080 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-301-6/+0
* Connect timeouts now work again, using InspSocket•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5041 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-281-19/+19
* Note: connect() cant time out for inspsockets in this commit. They'll sit in ...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5040 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-281-33/+10
* EventHandler class, an abstraction for raw i/o•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4941 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-181-21/+35
* Just to mess with om's head, remove helperfuncs.h from everywhere•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4900 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-111-1/+1
* Change to using Instance->Log (InspIRCd::Log) rather than log() macro•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4880 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-111-24/+24
* Now two types of log macro, log() and ilog(). log() assumes an InspIRCd objec...•••TODO: Run a regexp over these, using perl, to translate them into InspIRCd::Log calls and then eliminate the macro :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4879 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-111-24/+24
* 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-2/+0
* ConfigReader and FileReader now take InspIRCd* to their constructors•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4865 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-111-1/+1
* Committing this as a rollback point - does not compile•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4860 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-101-1/+0
* So much stuff changed in this one, i forgot most of it.•••Oh yeah, main thing is ModeHandler and ModeWatcher classes now take an InspIRCd* to their constructor git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4858 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-101-2/+1
* Move IsNick, IsIdent into class InspIRCd, update modules that use it.•••Change message.h to just a #warning saying its deprecated, and remove all use of it from the core :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4847 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-101-1/+0
* Move the socket functions like insp_ntoa into their own namespace. They arent...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4828 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-101-0/+4
* Move socket_ref and module_sockets vectors/arrays into InspIRCd*. These are p...•••(eventually, this will be marshalled safely through some accessors). When constructing an InspSocket you must now provide an InspIRCd* instance to 'attach' the socket to. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4812 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-091-23/+22
* ServerConfig extern moved into class InspIRCd•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4808 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-091-1/+0
* Extra checking that the fd's we pass to SocketEngine::AddFd were added (a lot...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4780 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-081-6/+30
* Fixes for ::0 ip's, disable autobind when using ::ffff: etc•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4703 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-041-3/+6
* (1) remove CleanAndResolve.•••(2) remove feature of being able to bind hostnames in <bind> tags (it used CleanAndResolve) :p (3) Fix the stuff in SpanningTree that used CleanAndResolve to validate connecting ip addresses - it now builds an 'allowed ip cache' on rehash/startup instead git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4637 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-021-16/+4
* InspSocket no longer resolves hosts.•••InspSocket::DoResolve() and the stuff that calls it is gone, if you pass InspSocket an invalid ip, it will bail during its connect. You must now use Resolver classes to resolve hostnames into IP addresses, if you wish to do this. Currently, only one non-extra module does this, see class ServernameResolver within m_spanningtree git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4634 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-021-22/+10
* Removed threaded dns (it might make a comeback some day, but as it stands its...•••Migrated to new OO resolver, removed as much firedns craq as is safe to do so, operates over one file descriptor now and keyed against request id. The only way to use the system is via class Resolver (so i'll need to migrate the rest of the ircd to use it) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4622 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-011-24/+4
* Fix broken inet_pton call•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4616 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-011-3/+3
* Fixes for inspsocket in ipv6 environment•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4615 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-011-3/+3
* The IPV6 stuff compiles now, with compile-correct ipv6 code. I dont know if t...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4611 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-011-5/+20
* AF_INET -> define to AF_FAMILY, will be either AF_INET or AF_INET6•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4610 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-08-011-3/+3
* Tidyup message.cpp, remove some really old craq.•••Improve tidiness of new common_channels function Add timeout value to blocking CleanAndResolve function git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4572 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-281-1/+1
* Typo #2•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4359 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-121-1/+1
* Make it work:•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4357 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-121-1/+1
* Move logging further up in inspsocket so we get the right error for bind failure•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4309 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar brain2006-07-101-1/+1