summaryrefslogtreecommitdiff
path: root/src/inspsocket.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* SSL buffering tweaks. NOTE this is not a complete fix till i say so, don't ↵Gravatar brain2007-07-061-22/+5
| | | | | | use this in production yet unless youre a masochist. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7427 e03df62e-2008-0410-955e-edbf42e46eb7
* Change some = "" to clear() and some == "" to .empty()Gravatar brain2007-06-091-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7263 e03df62e-2008-0410-955e-edbf42e46eb7
* Apply ipv6 #ifdef tidyup patch from djGrrr, thanks :)Gravatar brain2007-05-301-45/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7190 e03df62e-2008-0410-955e-edbf42e46eb7
* - Add fix for /stats p support (this->port was not being set for listening ↵Gravatar w00t2007-05-281-0/+1
| | | | | | inspsockets, thanks peavey). git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7171 e03df62e-2008-0410-955e-edbf42e46eb7
* Visual studio's ability to translate tabs to four spaces as default ↵Gravatar brain2007-05-191-3/+3
| | | | | | frustrates and peplexes tabnazi cat. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7047 e03df62e-2008-0410-955e-edbf42e46eb7
* Windows support. Tested and working to compile on freebsd and linux. Next ↵Gravatar w00t2007-05-191-6/+26
| | | | | | step is to make sure it actually works in windows too. ;p. Add Burlex to contributors. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7043 e03df62e-2008-0410-955e-edbf42e46eb7
* Much more detailed logging of lowlevel socket errors to the +l snomaskGravatar brain2007-05-011-2/+19
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6856 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix crashbug in latest svn introduced by inspsocket cull list, which can ↵Gravatar brain2007-05-011-6/+2
| | | | | | cause a crash if the connection times out and an error occurs on the socket before its deleted git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6855 e03df62e-2008-0410-955e-edbf42e46eb7
* Make error reporting work properly, it seemed to loose errors.Gravatar brain2007-04-261-15/+13
| | | | | | | | | First change: Add a culling list of inspsockets waiting to be closed, so the close() is less likely to be called before the buffer is entirely empty. This seems to work well on my LAN. Second change: Add a SendError() method, rather than WriteLine("ERROR : ..."). This can be used to effect by also echoing out "Sent ERROR to %s: ..." onto the +l snomask meaning at least one end will always see the error even if the ERROR command is lost due to latency or design of the transport (e.g. ssl which may be writing during a read event etc) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6844 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix for bug #261 - Needs QA'ing.Gravatar brain2007-04-191-0/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6813 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove unused variableGravatar brain2007-03-241-1/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6704 e03df62e-2008-0410-955e-edbf42e46eb7
* ident over ipv6 fixes, and fixes to inspsocket BindAddr which wasnt doing ↵Gravatar brain2007-03-231-8/+14
| | | | | | ipv6 outbound connects properly. You'll need to restart to apply this one, dmb git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6702 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix high-bandwidth stuff with inspsocket+ssl, and eagainGravatar brain2007-03-221-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6699 e03df62e-2008-0410-955e-edbf42e46eb7
* Fixed <link:bind> which was only working on an ipv6 connection. Fixes bug ↵Gravatar brain2007-02-121-2/+26
| | | | | | #213 reported by owine git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6581 e03df62e-2008-0410-955e-edbf42e46eb7
* Ident fixes,Gravatar brain2007-02-071-2/+0
| | | | | | | | removal of some old craq we dont use. cgiirc optimizations and tidyups git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6541 e03df62e-2008-0410-955e-edbf42e46eb7
* Added support for explicitly binding an outbound connection to an ip. Will ↵Gravatar brain2007-02-071-8/+10
| | | | | | be used by spanningtree. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6534 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove debug output that was only useful to meGravatar brain2007-02-061-5/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6530 e03df62e-2008-0410-955e-edbf42e46eb7
* Lets try this fixGravatar brain2007-02-061-0/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6526 e03df62e-2008-0410-955e-edbf42e46eb7
* When brain adds code into a constructor to fix a destructor crash, make sure ↵Gravatar brain2007-02-061-0/+6
| | | | | | brain adds code to all three constructors, not just one. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6519 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix to stop failed sockets crashing in destructorGravatar brain2007-02-061-0/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6518 e03df62e-2008-0410-955e-edbf42e46eb7
* ipv6 fixesGravatar brain2007-02-061-11/+11
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6517 e03df62e-2008-0410-955e-edbf42e46eb7
* Fixes to allow inspsocket connects to be protocol transparentGravatar brain2007-02-061-41/+157
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6515 e03df62e-2008-0410-955e-edbf42e46eb7
* In InspSocket destructor remove any pending timers since the object is now ↵Gravatar peavey2007-02-061-1/+6
| | | | | | gone. This also fixes bug #202 : m_ident crash. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6514 e03df62e-2008-0410-955e-edbf42e46eb7
* Stuff to make dns work protocol-independentGravatar brain2007-02-051-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6506 e03df62e-2008-0410-955e-edbf42e46eb7
* Smart tricks to allow for ipv4 and ipv6 bindings on client ports. WARNING, ↵Gravatar brain2007-02-051-1/+1
| | | | | | NOT FINISHED YET git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6501 e03df62e-2008-0410-955e-edbf42e46eb7
* Move quitting of clients to a central Cull List, and do quitting outside ↵Gravatar peavey2007-02-051-1/+1
| | | | | | userrec and in main loop. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6497 e03df62e-2008-0410-955e-edbf42e46eb7
* ipv6 connect tweaks, to memcpy() sin6_addr's rather than assigning with =.Gravatar brain2007-01-311-4/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6469 e03df62e-2008-0410-955e-edbf42e46eb7
* Tweaks to backwards memcpy's that dont actually do anything, causing ipv6 ↵Gravatar brain2007-01-301-1/+1
| | | | | | address bindings to potentially be bound to random ips. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6467 e03df62e-2008-0410-955e-edbf42e46eb7
* Whoops, fix inspsocket so that its ok to use errno after a failure of the ↵Gravatar brain2007-01-301-0/+6
| | | | | | | | | Write/Read methods or constructor! the close() in its Close method always changed errno to "Endpoint is not connected" on error, so now we make a copy. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6462 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove a ton of inspsocket debugGravatar brain2007-01-171-47/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6360 e03df62e-2008-0410-955e-edbf42e46eb7
* Add stuff so that the core catches CoreException properlyGravatar brain2006-12-161-11/+10
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6017 e03df62e-2008-0410-955e-edbf42e46eb7
* Jesus, look who's the commit whore today. More header updates, and removal ↵Gravatar w00t2006-12-151-6/+3
| | | | | | of namespacing. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5996 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix EOF conditions on inspsockets which are having their write() handled by ↵Gravatar brain2006-12-111-0/+9
| | | | | | modules git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5947 e03df62e-2008-0410-955e-edbf42e46eb7
* Debug stuff, and some minor fixesGravatar brain2006-12-111-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5927 e03df62e-2008-0410-955e-edbf42e46eb7
* Make it all work properly. Have it wait for handshake to complete before ↵Gravatar brain2006-12-091-1/+0
| | | | | | sending anything down the line git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5898 e03df62e-2008-0410-955e-edbf42e46eb7
* It works! WOO AND YAY! (this isnt finished yet, only an idiot would use this ↵Gravatar brain2006-12-091-7/+31
| | | | | | on a production net atm) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5897 e03df62e-2008-0410-955e-edbf42e46eb7
* Add OnRawSocketConnect, we've not had it till now because we've not needed it :)Gravatar brain2006-12-091-0/+11
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5887 e03df62e-2008-0410-955e-edbf42e46eb7
* Not yet tested -- allow iohooking of inspsocketsGravatar brain2006-12-091-33/+111
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5886 e03df62e-2008-0410-955e-edbf42e46eb7
* Close an inspsocket on getting error stateGravatar brain2006-10-311-0/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5608 e03df62e-2008-0410-955e-edbf42e46eb7
* Socket error state stuffGravatar brain2006-10-311-1/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5607 e03df62e-2008-0410-955e-edbf42e46eb7
* Start of stuff to handle socket error stateGravatar brain2006-10-311-0/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5606 e03df62e-2008-0410-955e-edbf42e46eb7
* Whack unused var warningGravatar brain2006-10-311-1/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5596 e03df62e-2008-0410-955e-edbf42e46eb7
* Set flags correctly when receiving a module-requested write eventGravatar brain2006-10-311-12/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5595 e03df62e-2008-0410-955e-edbf42e46eb7
* Tidy up WaitingForWriteEvent stuffGravatar brain2006-10-311-6/+17
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5594 e03df62e-2008-0410-955e-edbf42e46eb7
* Make this properly obey the write/read states. This ZOOMS now.Gravatar brain2006-10-301-22/+34
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5588 e03df62e-2008-0410-955e-edbf42e46eb7
* WARNING: This commit breaks kqueue and select -- work in progress!Gravatar brain2006-10-301-9/+1
| | | | | | | 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
* More sensible way to flush socketsGravatar brain2006-10-221-1/+13
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5517 e03df62e-2008-0410-955e-edbf42e46eb7
* Tweaks to drain socket on writeGravatar brain2006-10-221-1/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5513 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix (we hope!) for the 'internal error processing connection' bug. Thanks to ↵Gravatar brain2006-10-071-2/+6
| | | | | | | | | jamie and shadow for enduring this one while we hunted it down. 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
* 1) Make earlier fix to inspsocket actually compile without errorGravatar brain2006-09-071-2/+2
| | | | | | | 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