aboutsummaryrefslogtreecommitdiffstats
path: root/include/configreader.h
Commit message (Collapse)AuthorAgeFilesLines
...
* Begin rethink on this. Warning, this WILL break your ircd if youre using trunk!Gravatar brain2007-11-111-1/+7
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8566 e03df62e-2008-0410-955e-edbf42e46eb7
* In prep for remote includes, configuration reading is now two-pass.Gravatar brain2007-11-111-4/+4
| | | | | | | | | Note that theres an important part missing from here, there can be a NON-BLOCKING delay between the start of pass 2 and the files being available for download. At this point, ServerConfig::Read() should probably return an ENOTREADY or such at which point it gets monitored for ready state. The socket engine is ready at this point so we can poll the socket engine for it. In the case of startup, the socket engine blocks in a private loop, its no good booting the ircd till we have a complete config! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8565 e03df62e-2008-0410-955e-edbf42e46eb7
* Get rid of global_implementation[] and implement_lists[] from hereGravatar brain2007-11-041-8/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8532 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove our vectors of Module*/ircd_module*, replace with a map of ↵Gravatar brain2007-11-041-5/+0
| | | | | | std::pair<ircd_module*, Module*> git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8513 e03df62e-2008-0410-955e-edbf42e46eb7
* More anal config parsing, validates channel fields, ip address fields ↵Gravatar brain2007-11-031-1/+12
| | | | | | (with/without wildcard) hostname fields, fields which may not contain spaces git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8474 e03df62e-2008-0410-955e-edbf42e46eb7
* Clean up XLine conf stuff a little bit, move most of it to configreader. ↵Gravatar w00t2007-10-311-0/+25
| | | | | | Also, check elines and call ApplyLines on both rehash and startup. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8425 e03df62e-2008-0410-955e-edbf42e46eb7
* Visual studio doesnt like throw definitions like thisGravatar brain2007-10-231-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8324 e03df62e-2008-0410-955e-edbf42e46eb7
* Pedantic safeGravatar brain2007-10-231-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8314 e03df62e-2008-0410-955e-edbf42e46eb7
* InspSocket -> BufferedSocket. Paves the way for a SimpleSocket class which ↵Gravatar w00t2007-10-151-10/+10
| | | | | | ident etc will use. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8206 e03df62e-2008-0410-955e-edbf42e46eb7
* In the grand tradition of huge fucking commits:Gravatar w00t2007-10-151-4/+4
| | | | | | | | - chanrec -> Channel - userrec -> User Enjoy. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8204 e03df62e-2008-0410-955e-edbf42e46eb7
* Tidy up duplicate code, provide GetSID() method on ServerConfig which ↵Gravatar brain2007-08-281-0/+4
| | | | | | returns the SID always 3 digits long git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7959 e03df62e-2008-0410-955e-edbf42e46eb7
* Add <server:id> - this is optional, as stated in the example conf,Gravatar brain2007-08-271-0/+7
| | | | | | | and should only be set if you are getting collisions. The comment also points out that ids where either of the last two letters are numeric are reserved for services use (e.g. 0ZZ or 5CQ) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7917 e03df62e-2008-0410-955e-edbf42e46eb7
* Added new announceinvite setting i discussed briefly with w00t and i like ↵Gravatar brain2007-08-261-1/+1
| | | | | | | | | | | | | | | myself: # The value 'dynamic' varies between 'ops' and 'all' # # settings depending on if the channel is +i or not. # # When the channel is +i, messages go only to ops, # # and when the channel is not +i, messages go to # # everyone. In short, the messages will go to every # # user who has power of INVITE on the channel. This # # is the recommended setting. # git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7841 e03df62e-2008-0410-955e-edbf42e46eb7
* Add option to set invite announcements to nobody, ops only, or all users, ↵Gravatar brain2007-08-261-2/+5
| | | | | | based on options:announceinvites. Part of bug #386, should not be backported. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7837 e03df62e-2008-0410-955e-edbf42e46eb7
* Add <connect:maxchans> as per feature bug #338 - combined with the last ↵Gravatar brain2007-08-191-3/+3
| | | | | | feature, this allows per-oper specific maxchans values, and even the same for non-opers! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7761 e03df62e-2008-0410-955e-edbf42e46eb7
* Add extra stuff to make it work (and compile)Gravatar brain2007-08-191-3/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7757 e03df62e-2008-0410-955e-edbf42e46eb7
* Pick up a few error conditions we didnt before in the config reader, and ↵Gravatar brain2007-08-191-1/+1
| | | | | | also increment line number correctly when 'real' newline is found in a value git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7749 e03df62e-2008-0410-955e-edbf42e46eb7
* Needs testbuilding in windows. I will probably do this in a minute.Gravatar brain2007-07-271-0/+3
| | | | | | | More clever tricks to eliminate ifdefs. With a bit of function pointer and functor magic we may be able to eliminate all ifdefs git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7590 e03df62e-2008-0410-955e-edbf42e46eb7
* OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.Gravatar peavey2007-07-161-1/+790
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7
* 'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are ↵Gravatar peavey2007-07-161-790/+1
| | | | | | auto skipped by svn. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7
* Tons of stuff added since 1.0 is missing documentation commentsGravatar brain2007-06-171-11/+119
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7371 e03df62e-2008-0410-955e-edbf42e46eb7
* Add options:moronbanner. Yes really, thats what its called. See the example ↵Gravatar brain2007-06-041-0/+4
| | | | | | config. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7232 e03df62e-2008-0410-955e-edbf42e46eb7
* Config option for default channel modes -- more to follow, don't use yetGravatar brain2007-05-271-1/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7163 e03df62e-2008-0410-955e-edbf42e46eb7
* Dunno why this method was static, doesnt need to be...Gravatar brain2007-05-261-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7155 e03df62e-2008-0410-955e-edbf42e46eb7
* - Modify ServerConfig::GetFullProgDir to just return cwd, previously it did ↵Gravatar w00t2007-05-201-1/+1
| | | | | | a lot of voodoo that was a little hard to grasp, probably didn't quite accomplish what it should have, and broke on windows. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7063 e03df62e-2008-0410-955e-edbf42e46eb7
* Windows support. Tested and working to compile on freebsd and linux. Next ↵Gravatar w00t2007-05-191-2/+2
| | | | | | 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
* Replace strip/blockcolor tags with <options:exemptchanops>, sexy string of ↵Gravatar w00t2007-05-131-0/+12
| | | | | | modes to exempt chanops from (currently Sc are supported). git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7018 e03df62e-2008-0410-955e-edbf42e46eb7
* Refactor port binding, warning not yet tested fullyGravatar brain2007-05-111-11/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6982 e03df62e-2008-0410-955e-edbf42e46eb7
* Implement bug #282 from owine: kill sender hiding. <options:hidekills> needs ↵Gravatar w00t2007-05-091-0/+4
| | | | | | to be set to a static string to display instead of the killer's nick. QA: *IMPORTANT* please extensivly test local ***AND*** remote killing with this on and off. Thanks :) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6921 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix one issue, add another feature: When sending MODE +beI, weed out ↵Gravatar brain2007-04-301-1/+1
| | | | | | | | | | duplicates with simple O(1) check so that users dont send MODE #chan +bbbbbbbbbbbb. Allow configuration of which listmodes you want to deny to below halfops. For example <options hidemodes="eI">. This is because blocking +b can break mirc, blocking +eI usually wont break it so severely. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6852 e03df62e-2008-0410-955e-edbf42e46eb7
* Add support for hiding listmode lists such as +beI from unprivileged users.Gravatar brain2007-04-271-0/+6
| | | | | | | See bug #258 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6849 e03df62e-2008-0410-955e-edbf42e46eb7
* Feature request outlined in bug #257, allow connect/allow lines by portGravatar brain2007-04-151-3/+3
| | | | | | | Needs QA test git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6798 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix for bug #199 (Feature request) submitted by owine. Ended up adding an ↵Gravatar brain2007-04-051-1/+1
| | | | | | | | | extra parameter to <uline> for this. It turned into a biggie :P git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6742 e03df62e-2008-0410-955e-edbf42e46eb7
* Add <options:fixedquit> and <options:suffixquit> to go along with the ↵Gravatar brain2007-04-011-0/+8
| | | | | | existing <options:prefixquit>. note that fixedquit overrides both suffix and prefix if set git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6722 e03df62e-2008-0410-955e-edbf42e46eb7
* option to allow announce of invites to channel (similar to unreal)Gravatar brain2007-03-081-0/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6635 e03df62e-2008-0410-955e-edbf42e46eb7
* Addition of feature request outlined in bug #195, suggested by BrickerGravatar brain2007-02-191-0/+8
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6602 e03df62e-2008-0410-955e-edbf42e46eb7
* Allow for nick!user@host in TOPIC information.Gravatar brain2007-02-111-0/+5
| | | | | | | Note that this adds another <options> tag value, 'hostintopic'. (defaults to yes) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6572 e03df62e-2008-0410-955e-edbf42e46eb7
* Also add support for default values for ConfValueBool and ConfValueInteger ↵Gravatar peavey2006-12-261-0/+5
| | | | | | in configreader, and for ReadFlag and ReadInteger in modules. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6116 e03df62e-2008-0410-955e-edbf42e46eb7
* Add possibility to define default value for ConfValue in configreader and ↵Gravatar peavey2006-12-261-0/+4
| | | | | | ReadConf in modules. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6113 e03df62e-2008-0410-955e-edbf42e46eb7
* Refactored /RESTART (and added InspIRCd::Restart(reason))Gravatar brain2006-12-231-0/+12
| | | | | | | Fixed bug in m_ziplinks, assigning instead of testing a var (gcc 4.1.1 picked up on this, 3.4 didnt) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6067 e03df62e-2008-0410-955e-edbf42e46eb7
* Config option added for prefixed channel NOTICEs and PRIVMSGs to turn on/off ↵Gravatar peavey2006-12-161-0/+5
| | | | | | IRCU style of adding prefix to outgoing text. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6018 e03df62e-2008-0410-955e-edbf42e46eb7
* Add an optional parameter to ConfigReader::ReadValue which defines if we ↵Gravatar brain2006-12-161-3/+23
| | | | | | | | | | want linefeeds or not. Tidy up some duplicated code in configreader (error reporting) Change ModuleException to inherit from CoreException, have the configreader throw and catch its CoreException on fatal error git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6013 e03df62e-2008-0410-955e-edbf42e46eb7
* And now, just to force you to recompile the *whole* ircd.. updated headers ↵Gravatar w00t2006-12-151-7/+3
| | | | | | on the headers. :p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5998 e03df62e-2008-0410-955e-edbf42e46eb7
* Improve the way 005 ISUPPORT is sent to users when they connect, cache it in ↵Gravatar brain2006-12-131-0/+9
| | | | | | a much more sane format which is much simpler to spool to them git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5978 e03df62e-2008-0410-955e-edbf42e46eb7
* Add the stuff required for the InspSocketHook interfaceGravatar brain2006-12-091-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5890 e03df62e-2008-0410-955e-edbf42e46eb7
* Not yet tested -- allow iohooking of inspsocketsGravatar brain2006-12-091-0/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5886 e03df62e-2008-0410-955e-edbf42e46eb7
* Removed <options:tempdir> - this hasn't been used since modules were updated ↵Gravatar special2006-11-221-4/+0
| | | | | | to not copy before load (quite awhile ago) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5785 e03df62e-2008-0410-955e-edbf42e46eb7
* Tidy up some stuffGravatar brain2006-11-151-57/+11
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5753 e03df62e-2008-0410-955e-edbf42e46eb7
* Comments, woo and yayGravatar brain2006-11-151-4/+36
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5751 e03df62e-2008-0410-955e-edbf42e46eb7
* All of the void* cast stuff gone!!!Gravatar brain2006-11-151-5/+58
| | | | | | | Todo: comment all this stuff... git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5750 e03df62e-2008-0410-955e-edbf42e46eb7