summaryrefslogtreecommitdiff
path: root/src/modules/extra
AgeCommit message (Collapse)Author
2009-09-22Describe module purpose in /MODULES outputdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11757 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-21Create StreamSocket for IO hooking implementationdanieldg
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
2009-09-13GnuTLS: Send SSL client certificate when requesteddanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11708 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-13Change Extensible to use strongly typed entriesdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11696 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02Add initial query support to m_mysql [patch by Athenon]danieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11642 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02ModResult conversion: Change return type of all module functionsdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11634 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02Add Module* creator to Command and ModeHandlerdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11631 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-02Misc removal of pointless Extend stringsdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11618 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02MetaData reworkdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11607 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02Cast rework: use C++ style static_cast<> instead of C-style castsdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11595 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02Replace std::deque with std::vector in spanningtree and related modulesdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11593 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02Change allocation of commands/modesdanieldg
API change: Commands passed to AddCommand are no longer deleted automatically This removes lots of needless heap allocation and fixes a few memory leaks by allocating commands and modes as part of the Module rather than creating them separately in the module constructor. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11592 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02Read multiple GnuTLS records in one RawSocketRead operationdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11589 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-01Rename User::GetPort to GetServerPort to clarify its purposedanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11577 e03df62e-2008-0410-955e-edbf42e46eb7
2009-08-10Fix thread join not working for subclasses of Thread because of C++ ↵danieldg
destructor ordering git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11500 e03df62e-2008-0410-955e-edbf42e46eb7
2009-08-02Fix a few typos in here so it compiles again.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11464 e03df62e-2008-0410-955e-edbf42e46eb7
2009-08-02Change all non-fatal GNUTLS initialisation notices to debug level, to avoid ↵w00t
unnecessary questions. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11462 e03df62e-2008-0410-955e-edbf42e46eb7
2009-08-01Reconnect to LDAP server if connection goes away, fixes bug #818.w00t
NOTE: I don't have an LDAP setup, so I'm totally in the blind on these commits. Sorry, but it seems nobody else can be arsed to do it, so I will. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11448 e03df62e-2008-0410-955e-edbf42e46eb7
2009-07-27Send a failure numeric instead of QuitUser when STARTTLS is used after ↵special
registration, because it could be used accidentally by users. Suggested by dKingston git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11445 e03df62e-2008-0410-955e-edbf42e46eb7
2009-07-03Fix double-send of SSL metadata in openssl, possible segfault in gnutlsdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11433 e03df62e-2008-0410-955e-edbf42e46eb7
2009-07-02Merge m_ssl_oper_cert into m_sslinfo to reduce the number of SSL modulesdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11431 e03df62e-2008-0410-955e-edbf42e46eb7
2009-07-02Send ssl_cert metadata on signondanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11429 e03df62e-2008-0410-955e-edbf42e46eb7
2009-07-02Remove memory-wasting map in ssl_certdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11428 e03df62e-2008-0410-955e-edbf42e46eb7
2009-07-02Migrate SSL metadata and visible information (/whois line) to single moduledanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11427 e03df62e-2008-0410-955e-edbf42e46eb7
2009-07-02Fix backport compile error: m_ssl_* uses ServerInstance->Config->ports which ↵danieldg
is now ServerInstance->ports git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11426 e03df62e-2008-0410-955e-edbf42e46eb7
2009-06-27m_sslinfo does not depend on external libraries, it should not be in extradanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11418 e03df62e-2008-0410-955e-edbf42e46eb7
2009-06-07Allow SSL fingerprint-based server authenticationdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11404 e03df62e-2008-0410-955e-edbf42e46eb7
2009-06-06Don't display locally bound SSL ports in SSL= (for hidden services and such)w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11403 e03df62e-2008-0410-955e-edbf42e46eb7
2009-06-03Use pkg-config to search for gnutls rather than the now-removed libgnutls-configdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11400 e03df62e-2008-0410-955e-edbf42e46eb7
2009-05-24OnRehash changes: split to multiple hooks to clarify use and prevent ↵danieldg
explosion of rehashes on a /REHASH * git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11388 e03df62e-2008-0410-955e-edbf42e46eb7
2009-05-07Compile fix: openssl does not have an ISSL_CLOSING state, unlike gnutlsdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11368 e03df62e-2008-0410-955e-edbf42e46eb7
2009-05-06Fix two compile errors found by Shawnspecial
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11366 e03df62e-2008-0410-955e-edbf42e46eb7
2009-05-06Set errno in openssl when handshake failsdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11365 e03df62e-2008-0410-955e-edbf42e46eb7
2009-05-06Remove FindDescriptor wrapper for GetRef, it doesn't do anything useful and ↵w00t
in fact is a bit harmful in some ways as we've seen.. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11364 e03df62e-2008-0410-955e-edbf42e46eb7
2009-05-06Set errno properly on GnuTLS sessions that die during the SSL handshakedanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11363 e03df62e-2008-0410-955e-edbf42e46eb7
2009-05-02Globally route "a" snotices for more modules. Patch from Milliways.danieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11352 e03df62e-2008-0410-955e-edbf42e46eb7
2009-04-29How about we make this compile?danieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11338 e03df62e-2008-0410-955e-edbf42e46eb7
2009-04-29Normalize IPv6 addresses when producing SSL port list, fixes bug #853danieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11337 e03df62e-2008-0410-955e-edbf42e46eb7
2009-04-26Correct 005 output of m_ssl_gnutls when used for STARTTLS with no client SSL ↵danieldg
ports configured git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11332 e03df62e-2008-0410-955e-edbf42e46eb7
2009-04-16Convert snomask 'A' into snomask 'a' for local announcements, add snomask ↵w00t
'A' for remote announcements. Make SAMODE send a snotice to 'a' and remote to 'A' - fixes bug #822, reported by Taros We really need a wrapper to use these, but, for now it's usable. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11304 e03df62e-2008-0410-955e-edbf42e46eb7
2009-04-03Use 'c' snomask instead of 'A' snomask for ldap auth failures, reported by ↵w00t
drich. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11283 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-27Give pgsql some needed love. Dont use DNS, remove some unused hooks and its ↵peavey
not possible to work over unix socket, simply dont define host, or start with a slash to define the socket yourself. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11268 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-27Fix potential crash on uninitialised varpeavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11267 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-23Make this compile.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11255 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-23Fix compile error due to mismergedanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11254 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-23ThreadEngine: Allow interthread signaling without needing as many hacksdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11251 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-23ThreadEngine: remove MutexFactory, mutexes should be constructed using their ↵danieldg
constructor git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11250 e03df62e-2008-0410-955e-edbf42e46eb7