summaryrefslogtreecommitdiff
path: root/src/listensocket.cpp
AgeCommit message (Collapse)Author
2012-04-19Replace copyright headers with headers granting specific authors copyrightRobby-
2011-04-10Fixed Windows build on VS 2010Adam
2010-04-14Add IPV6_V6ONLY supportDaniel De Graaf
2010-03-02Fix m_ident deleting sockets that are still in usedanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12586 e03df62e-2008-0410-955e-edbf42e46eb7
2010-02-23Replace #define IPV6 with <config defaultbind="ipv6">, and autodetect if not ↵danieldg
specified git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12550 e03df62e-2008-0410-955e-edbf42e46eb7
2010-01-22Fall back to copying bind IP if getsockname() fails, as it apparently can on ↵danieldg
Windows git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12314 e03df62e-2008-0410-955e-edbf42e46eb7
2010-01-21Remove unneeded save of errnodanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12309 e03df62e-2008-0410-955e-edbf42e46eb7
2010-01-11...because every now and again, i have to do a massive commit.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12248 e03df62e-2008-0410-955e-edbf42e46eb7
2009-11-13Get rid of socklen_t parameter to Bind, we are using C++ here and can do it ↵danieldg
other ways git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12129 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-24Get rid of OpenTCPSocketdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11969 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-24Get rid of ModePairdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11963 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-23Change to <type:vhost> and <oper:vhost> because <oper:host> is taken.danieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11957 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-22Make irc::sockets::* parameters consistent, add irc::sockets::maskdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11953 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-21Kill ListenSocketBase, use OnAcceptConnection for all new connectionsdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11950 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-09Add server ports to ServerInstance->ports, enable SSL on them using OnHookIOdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11810 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-03Fix crash due to null address in DNSdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11797 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26Remove InspIRCd* parameters and fieldsdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11763 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26Clean up SocketEngine interface to allow edge-triggered I/O and sockets that ↵danieldg
do not force readability. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11760 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02Remove duplicated address conversion from InspIRCd::BindSocket, fix FD leak ↵danieldg
in listensocket git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11632 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02Use a set to mark client SSL ports rather than going by textual IP/port pairsdanieldg
This theoretically speeds up accepting connections. Visible changes are proper IPv6 port text in 005 output and no possibility of incorrect SSL on addresses that mismatch an incoming port (possible with IPv4 wildcard SSL and IPv6 plaintext on the same port, not that anyone would do such a thing). Bind ports also now tell which SSL module they use in /stats p. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11629 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02Change OnHookUserIO to OnHookIO, making it usable for more than User* and ↵danieldg
less picky on string matching git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11628 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-01Remove unneeded paramaters from OnAcceptReadydanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11581 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-01Remove more text<->binary IP conversions, making code more IPv4/IPv6 independentdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11578 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-01Change IP address storage in User to use more IPv4/IPv6 common codedanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11575 e03df62e-2008-0410-955e-edbf42e46eb7
2009-06-12This file *BROKEN AGAIN* in windows builds (VC9) - uint_16t and uint_32t do ↵brain
not exist in windows visual studio 2008! I will fix this at some later date unless someone beats me to it, as i still have no access to a reasonable PC. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11406 e03df62e-2008-0410-955e-edbf42e46eb7
2009-05-07Fix ListenSocketBase::GetPort() returning incorrect value on ports not bound ↵danieldg
to a specific address git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11367 e03df62e-2008-0410-955e-edbf42e46eb7
2009-05-04Canonicalize bind addresses when creating listen socketsdanieldg
This fixes /stats p output for SSL ports not working if a non-canonical address is used in the configuration (IPv6 with :: or mixed hexadecimal case). This also cleans up some now-useless sockaddr[2] allocations. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11361 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-15Update all wiki links to point to the new wiki. This was done automatically ↵psychon
with the following command, only .Makefile.inc got some indent fixups by hand. 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
2009-01-02Update copyrights for 2009.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7
2008-11-01Add comments on Daniel's workw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10780 e03df62e-2008-0410-955e-edbf42e46eb7
2008-11-01Simulate AF_INET addresses for 4in6 connections [danieldg]w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10779 e03df62e-2008-0410-955e-edbf42e46eb7
2008-11-01Merge commit 'ddg/out-12'w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10778 e03df62e-2008-0410-955e-edbf42e46eb7
2008-10-27Merge commit 'danieldg/out-12'w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10732 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-08Remove crappy, unsafe (and now unneeded!) casts.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10476 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-08Make OnAcceptReady pure virtual, rename ListenSocket to ListenSocketBase, ↵w00t
create ClientListenSocket and inherit from ListenSocketBase to create User objects. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10469 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-08Move this to another (yet more appropriate) place, saves some syscalls in an ↵w00t
unlikely condition. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10468 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-08Add incoming IP to OnAcceptReadyw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10467 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-07Move a socket sanity check into the generic listener handler, avoiding the ↵w00t
need to instantiate a user object in insane conditions. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10463 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-07Tidy up some of the internals a bit, making things a bit more extensible and ↵w00t
future proof. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10462 e03df62e-2008-0410-955e-edbf42e46eb7
2008-09-07Move listensocket stuff into a file of it's own.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10446 e03df62e-2008-0410-955e-edbf42e46eb7