1282 Commits

Author SHA1 Message Date
w00t
de97b98a41 Remove an utterly insane comment .. based on changed by based on originally by changed on the based of .. wtf
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7942 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-28 13:42:03 +00:00
w00t
d5d692037e Oops. This is supposed to be a public member
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7939 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-28 13:23:47 +00:00
w00t
5ee7322040 Add a global fake client to class InspIRCd used instead of instantiating a fake client every time a mode needs to be forced through, etc
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7938 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-28 13:20:11 +00:00
brain
8c3a4a51ff Add <server:id> - this is optional, as stated in the example conf,
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
2007-08-27 19:56:38 +00:00
brain
5e95c0e559 Update documentation to indicate that userrec::userrec() may throw on duplicate uuid
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7915 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27 19:32:07 +00:00
brain
e30482976a Fix for problems with translations
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7896 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27 16:47:30 +00:00
brain
ffbbfa9cd6 Add documentation comments
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7894 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27 16:08:21 +00:00
brain
853f4d66ca Some useful defines for tidy definition of translation lists. See constructor of cmd_cban in m_cban.cpp
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7890 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27 15:35:14 +00:00
brain
cd2406617f More translation stuff
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7888 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27 15:14:27 +00:00
brain
f067a146d1 Add vector<TranslationType> to commands, used to map fields to uid translations
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7886 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27 15:01:14 +00:00
brain
90ee2ee38c Add FindNickOnly, that wont fall through to uid checks if isdigit(*first). We may need this. (i thought we did for this fix, we dont)
Fix cmd_nick to not treat all nicks as invalid and make the client give up.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7883 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27 13:54:15 +00:00
brain
0ba4b96bba Allocate uid in userrec constructor. Optional param added, if its empty, the server allocates one, if its not empty the user gets the one given
(this is used for remote users)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7873 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27 11:24:43 +00:00
brain
eb12142b8d Initialise cmd_nick::allowinvalid in constructor init-list, and document HandleInternal (now two commands that use this, cmd_whowas and this one)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7871 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27 11:03:32 +00:00
brain
d2be3310ba Add a call to the NICK handler that allows toggling of allowing invalid nicks to on or off.
Use it in ForceNickChange to allow forced nickchange of a nick to a uid.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7869 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27 10:57:25 +00:00
w00t
0c9434cde9 Add InspIRCd::FindUUID() methods. Currently, these work off an iteration around the whole client list. This sucks, and will be changed to a map the same as FindNick(). Also update FindNick's docs a little out of anal habit: it returns a user, not a nick. :)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7855 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27 01:01:20 +00:00
w00t
1075956100 Add skeleton functions for UID stuff.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7845 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-26 23:07:06 +00:00
w00t
ca2a909147 Bump ABI version and protocol version. Note that this really means 1.1 and 1.2 are diverged now, and won't link/load modules of each other. This is in preperation for me (possibly) messing with UID in trunk.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7844 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-26 21:59:41 +00:00
brain
9cd8fe39d5 Added new announceinvite setting i discussed briefly with w00t and i like 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
2007-08-26 21:15:47 +00:00
brain
644c5992ca Proper fix for end-of-list numerics on restricted lists in bug #386, rather than a hackish nonmodular one.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7838 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-26 21:01:04 +00:00
brain
d58d9fb495 Add option to set invite announcements to nobody, ops only, or all users, 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
2007-08-26 20:43:15 +00:00
brain
4a91fd0ddf Move the close() wrapper out of the win32wrapper.h, and into its new proper place at SocketEngine::Close()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7812 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-23 22:30:46 +00:00
brain
297f19c005 Document all this shit!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7811 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-23 22:17:20 +00:00
brain
d0d36795e8 Craquity craq De-craq!
This is probably broken on windows, do not attempt to use there yet unless you like broken stuff. Cant say for sure as i havent even tried to build yet and most likely wont tonight.
--- Abstract most of the berkely socket API out into SocketEngine derived classes. SocketEngine base class implements standard berkely sockets that 'real mens systems' like linux
and freebsd have. For socketengine_iocp we implement the windows specific nonesense like the special things needed for udp and accept (ick).
All this to eliminate a bunch of ifdefs.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7810 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-23 22:06:04 +00:00
brain
443b0f9645 Raft of fixes so that inspircd can call Cleanup() and Exit() in less 'stable' circumstances, e.g. when half initialized, and it wont segfault.
Also fix OpenLog to not always exit on error, but to return a bool instead, which is much more friendly on rehash (you don't want /REHASH dieing your server if you cant write the log!)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7804 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-23 19:57:02 +00:00
brain
deb8574079 Add some stuff to change how we process a token sepeperated stream
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7800 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-23 18:06:26 +00:00
brain
cf4439ac5c Add <connect:maxchans> as per feature bug #338 - combined with the last 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
2007-08-19 20:14:05 +00:00
brain
c61fac32bc Allow changing of an oper's host on oper up using <type:class> (give it a connect allow or deny line name) - implements bug #367
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7760 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-19 19:23:53 +00:00
brain
1c18eb24fa Add <connect:inherit> and <connect:name>
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7758 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-19 19:06:35 +00:00
brain
9f1cefca61 Add extra stuff to make it work (and compile)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7757 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-19 17:16:50 +00:00
brain
49006f6330 Add some connect class stuff that is required for bug #367 plus some roadmap stuff (inherit one connect class from another, etc)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7756 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-19 17:04:45 +00:00
brain
df4f0dc888 Allow support for multiple dns results per request. This is a significant change and should probably not be backported to stable.
This will allow for a fix to feature request bug #384


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7753 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-19 16:00:57 +00:00
brain
e24540666c Pick up a few error conditions we didnt before in the config reader, and 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
2007-08-19 14:07:25 +00:00
w00t
b22a79da8d Change to virtual
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7733 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-17 14:57:52 +00:00
brain
dab5de9885 Fixed, i forgot the virtual when implementing this
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7725 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-15 21:26:36 +00:00
burlex
8cebdce093 * include/caller.h will now compile correctly on Windows platforms.
+ Implemented gettimeofday in win32 wrapper, link rtt's will now display in milliseconds.
* SocketEngine::BoundsCheckFd will now handle Windows event handler cases correctly. (fixing writing to sockets not working)
* Fixed VC71 project.

git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7723 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-15 20:41:30 +00:00
brain
9595db021d Allow rehash to attempt to load missing (and new) lib/cmd_*.so files, to allow users to fix an emergency situation you can create by trying to reload a corrupt .so without needing a restart
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7712 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-11 12:05:31 +00:00
brain
8683e1c80d Provide error output on failure to load a core command; to console on startup, and to user on /reload
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7708 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-11 11:29:15 +00:00
w00t
b42e3e0578 Remove an un-needed define while I poke around in here
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7693 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-09 19:49:01 +00:00
w00t
56b89baf23 Fix spelling mistakes on some log messages
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7666 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-05 18:04:52 +00:00
peavey
694e3ba4c7 operators for std::string != irc::string and vice versa.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7604 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-28 18:13:35 +00:00
brain
5adcfa35c2 Windows specific data types in EventHandler are now Extensible items
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7599 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-27 19:26:27 +00:00
brain
17d318c9de Removal of some ifdefs
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7598 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-27 18:16:09 +00:00
brain
f40811fd6e Fix compile errors in windows
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7592 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-27 17:39:51 +00:00
brain
f3624af468 Needs testbuilding in windows. I will probably do this in a minute.
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
2007-07-27 17:02:24 +00:00
brain
ac3af8b61e Some smart tricks to eliminate win32 ifdefs that are creeping into portable files
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7589 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-27 16:50:53 +00:00
brain
27d4ea0d97 Move a bunch of stuff around for tidyness, win32 functions keep creeping into #ifdef'ed chunks in non-win32 files
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7588 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-27 16:45:03 +00:00
brain
e5c4de03a9 More detail on the comment to indicate how to replace a functor in a class
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7587 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-26 19:57:14 +00:00
brain
6344881c9f Move a ton of stuff into caller* functors
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7578 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-26 16:36:37 +00:00
peavey
0bb707c10c Un-static InspIRCd::Exit and use SignalHandler instead.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7572 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25 20:23:18 +00:00
peavey
eadd5cce87 Rehash from console works again due to new signalhandler. TODO: Use this to catch SIGTERM and exit cleanly.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7571 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25 19:46:25 +00:00