summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2006-08-03Check for spoofed DNS replies where the source-port is invalid, or the ip is ↵brain
not that of the nameserver we're configured to use git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4668 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03Improve PRNGbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4666 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03Dynamically generate 004 numeric from the modehandler listbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4665 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02Added comments to class DNS and typedefsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4662 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02Allocate request id's in sequence, which means we wont get a duplicate id ↵brain
until 65536 id's have been given out. Much safer than rand() git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4659 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02Change to a constbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4658 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02Change more names and typesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4657 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02Move more stuff into private members of class DNSbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4654 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02Tidyups, rename some varsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4653 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02Made MasterSocket staticbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4652 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02Move more stuff into class DNSbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4651 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02Change comment at start of the file, rename dns_connectionbrain
to dns_request (they no longer represent connections with unique FD's so the old name was kind of silly) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4649 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02Add error messages to Resolver::OnError()brain
Add exception handling to several places that use Resolver (it can throw) Remove Resolver::ProcessResult(), its now handled within the bowels of dns.cpp git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4646 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02(1) remove CleanAndResolve.brain
(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
2006-08-02InspSocket no longer resolves hosts.brain
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
2006-08-02Change comment which referred to an fd, is now an idbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4633 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Remove dnsqueuebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4631 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Comments, add more detail, remove dnsqueue.h include from tons of placesbrain
Remove THREADED_DNS defines from all over the place git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4629 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Fixesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4628 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Fixesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4627 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Stuff to make user host resolving use class Resolver - not tested yetbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4626 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Remove X_ESTAB_CLASSDNS, X_ESTAB_DNS now does the job of this (i TOLD w00t ↵brain
and om i was removing this eventually, and now i did :p) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4625 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Remove unused vars from class DNSbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4624 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Remove unused temp buffersbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4623 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Removed threaded dns (it might make a comeback some day, but as it stands ↵brain
its incompatible with the new OO resolver) 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
2006-08-01This might well be the last commit to this dns resolver in its current form. ↵brain
With a bit of luck, we can make a better (always-threaded) one git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4612 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01The IPV6 stuff compiles now, with compile-correct ipv6 code. I dont know if ↵brain
this works yet. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4611 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01AF_INET -> define to AF_FAMILY, will be either AF_INET or AF_INET6brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4610 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Move to entirely using insp_sockaddr and insp_inaddr for socket stuff, first ↵brain
step on the road to ipv6 support git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4609 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01Missing include breaks "make clean" on the cmd_* filesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4608 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-31Remove match/wildcmp wrapper which just casts from const char* to char*, do ↵brain
the cast within wildcmp and rename wildcmp to match. Remove other casts by casting directly to unsigned char* first time around git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4607 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-30REMOTE STATS! WOOO AND YAY!brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4596 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-28Finish off /WHO (i think it covers everything). Now has a few extra optionsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4581 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-28Document <options:syntaxhints> and <options:nouserdns>brain
Change syntaxhints to seperate RPL_TEXT (prefix SYNTAX) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4578 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-28Tidyup message.cpp, remove some really old craq.brain
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
2006-07-28Change all references to voodoo numbers (7, 3 etc) to the new bitwise ↵brain
constants for user->registered Change a lot of user->fd > -1 to use the IS_LOCAL() macro git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4569 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-28Add support for syntax of commands in place of the text 'Not enough ↵brain
parameters' in numeric 461, where supported. To support this each derived class of command_t must set the value of command_t::syntax to a non-empty string. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4561 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-27Change std::pair<bool,std::string> to neater typedef "ModePair"brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4557 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-27Mode merging during FJOIN with ourts==theirts. Only +k and +l have ↵brain
CheckTimestamp methods atm, needs to be finished by me and TIDIED. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4556 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-27commit remainder of new mode bouncing stuff for TS based modesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4550 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-26Add extra method to mode handler, ModeHandler::ModeSet().brain
Returns a std::pair<bool,string>. if the bool is true, the mode is set, and the second item in the pair is the parameter set on it, if any If the bool is false, the mode is not set, and the parameter given is returned as the second item of the pair To be used in mode bouncing, to build a safe set of bounced modes (dont ask yet) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4549 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-23Add an ID field to Request and a GetId() method, takes const char* and ↵om
returns it - Added new constructor to use it, all modules using ID should convert to the 'new' way of doing Requests, data is now theoretically depreceiated git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4529 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-19Change stats recv/send to double, so they can hold truly massive numbers of ↵brain
transferred bytes (they would overflow after about 6 weeks on a busy net otherwise) Fix some warnings git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4450 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-19Change counters to unsigned long to prevent overflow to negative countsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4449 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-19Test changebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4444 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-19Add #include <sys/select.h> to select engine, we probably need itbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4443 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-19Fix typo in kqueue enginebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4440 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-19* Seperate out socket engines into derived classes of SocketEngine.brain
* Add a classfactory SocketEngineFactory to create a new socketengine of the configured type * Implement configure hax to compile only the required socketengine and the base class * Eliminates ugly defines, and is more in line with C++ ways git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4439 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-18Tried to implement sprintf that returns std::string of any size, realized it ↵brain
would scale like unreal scales to ircnet (e.g. it wouldnt!) so took it back out. Moved chop() functionality into userrec::AddWriteBuf and make it nicer (no strlen) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4433 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16Document irc::commasepstream and irc::tokenstreambrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4414 e03df62e-2008-0410-955e-edbf42e46eb7