3857 Commits

Author SHA1 Message Date
brain
cb45f8e596 This wont build. :(
m_pgsql.cpp:1125: error: cannot convert `char*' to `PGconn*' for argument `1' to `size_t PQescapeStringConn(PGconn*, char*, const char*, size_t, int*)'


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4813 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 14:55:18 +00:00
brain
ab46b96db4 Move socket_ref and module_sockets vectors/arrays into InspIRCd*. These are public members, which InspSocket can modify.
(eventually, this will be marshalled safely through some accessors). When constructing an InspSocket you must now provide
an InspIRCd* instance to 'attach' the socket to.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4812 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 14:53:19 +00:00
brain
f068033883 Tidy up loglevel enum (remove some C-ish defines)
change ServerConfig to pass a pointer to 'this' to Validation etc functions


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4811 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 14:20:04 +00:00
brain
542eca81f4 Remove do_log() prototypes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4810 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 13:55:26 +00:00
brain
54546ce8b8 do_log -> static void InspIRCd::Log() (with vararg and std::string variants)
The #define for this still exists, but maybe should be phased out?


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4809 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 13:19:41 +00:00
brain
09afa50856 ServerConfig extern moved into class InspIRCd
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4808 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 11:33:10 +00:00
brain
6d4128715d Get rid of Server::GetUsers(chanrec) - a throwback to before chanrec could do this itself
Move:
bool ChangeDisplayedHost(const char* host);
bool ChangeName(const char* gecos);
int CountChannels();
Into userrec		


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4807 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 10:37:42 +00:00
brain
0f61489ddb Move Blocking/NonBlocking to socket.cpp and make inline
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4806 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 10:12:34 +00:00
brain
e964e2286d common_channels -> userrec::SharesChannelWith()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4805 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 10:04:58 +00:00
brain
d91d734257 Oops, goofed up
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4804 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 22:01:55 +00:00
brain
be9fbe56f9 Improve Write functions, and change some stuff from char* to const char*
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4803 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 21:58:21 +00:00
brain
21deb54715 WriteWallops() -> userrec::WriteWallops() (originates from a user, so belongs in userrec)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4802 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 20:30:41 +00:00
brain
7de28b5b35 Document new methods
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4801 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 20:12:36 +00:00
brain
a318eee150 WriteCommon() and WriteCommonExcept() -> userrec::WriteCommon(), userrec::WriteCommonExcept()
WriteCommon_NoFormat() and WriteCommonExcept_NoFormat() -> std::string variants


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4800 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 20:08:02 +00:00
brain
d54f233a5e Document Write* methods in userrec
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4799 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 19:05:31 +00:00
brain
fea1a27cb9 WHEEEEE!!!!!
All of: Write(), WriteTo(), WriteFrom(), WriteServ() are now methods of userrec.
Write_NoFormat(), WriteTo_NoFormat(), WriteFrom_NoFormat(), WriteServ_NoFormat() are now std::string-taking overloaded methods of the functions above
All modules updated to use new syntax, my fingers hurt :(


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4798 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 18:59:13 +00:00
brain
a7543c881b Comment all the new stuff
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4797 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 16:47:14 +00:00
brain
861ca7f2fe Tons of comments
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4796 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 16:34:24 +00:00
brain
c18d1040a3 Move whowas stuff into its own namespace, move more stuff into userrec
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4795 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 16:07:25 +00:00
brain
4f1d3a7192 FindMatchingLocal/FindMatchingGlobal -> userrec::LocalCloneCount(), userrec::GlobalCloneCount()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4794 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 15:51:30 +00:00
brain
922d4ebf7a userrec::UpdateNickHash(), userrec::ForceNickChange(), userrec::FullConnect()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4793 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 15:38:59 +00:00
brain
8d99003c22 AddOper() and DeleteOper() -> userrec::Oper() and userrec::UnOper() (these do more, too)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4792 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 15:05:49 +00:00
brain
8c4528880a userrec::AddToWhoWas() fix
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4791 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 14:45:06 +00:00
brain
ce4c050657 AddWhoWas(userrec) -> userrec::AddToWhoWas()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4790 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 14:40:53 +00:00
brain
93876363f8 kill_link() and Server::QuitUser() -> userrec::QuitUser() (static member) - this cant be a normal member as it causes the userrec to be deleted, and "delete this" is bad, mmm'k
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4789 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 14:38:24 +00:00
brain
6ab1d0dffb WriteChannel* functions and ChanExceptSender* functions are now methods of chanrec. They probably should be renamed too eventually.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4788 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 14:17:35 +00:00
brain
903ba4e2eb add_channel -> chanrec::JoinUser()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4787 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 13:22:30 +00:00
brain
6f1b8f50dd Change to chanrec::PartUser. As with KickUser and ServerKickUser, returns the number of users left, if it returns 0, delete the chanrec
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4786 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 12:52:24 +00:00
brain
7a3907f051 Check return values
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4784 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 12:24:41 +00:00
brain
f82cc8dd39 chanrec::KickUser and chanrec::ServerKickUser return number of users left on the channel after the kick. If either returns 0, you should delete the chanrec immediately after return:
if (!c->KickUser(mysrc, mydest, "DIE"))
    /* arse */
    delete c;


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4783 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 12:22:21 +00:00
brain
25f6cb0fe6 kick_channel -> chanrec::KickUser(), server_kick_channel -> chanrec::ServerKickUser()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4782 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 12:20:45 +00:00
brain
3c5d62d3b3 Add checking on AddFd that was missing (it assumed, like everything else)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4781 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 09:35:06 +00:00
brain
2329d59b09 Extra checking that the fd's we pass to SocketEngine::AddFd were added (a lot of assuming was going off, leading to total chaos if we run out of fd's etc)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4780 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-08 09:32:57 +00:00
brain
3794888ebf Only local users can have angry monkeys and packs of wild dogs. These are local monkeys for local people!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4778 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 22:14:34 +00:00
brain
6353036b7c Now with added ANGRY MONKEYS.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4777 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 22:09:17 +00:00
brain
88a34791f0 Change the error message, just for LeaChim <3
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4776 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 21:53:09 +00:00
brain
847830b43e Check earlier on is no longer required
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4775 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 21:29:46 +00:00
brain
358f2064c4 Bail if we couldn't bind any ports (when did this get broken?)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4774 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 21:25:48 +00:00
brain
923586e54c Put casts back :(
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4773 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 20:57:13 +00:00
brain
233402b05c The segfaults on missing init_module symbol are now gone, and hopefully not coming back!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4772 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 20:42:18 +00:00
brain
7548a18e4c Change symbol back
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4771 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 20:14:03 +00:00
brain
1ff199172d Added some hax :( to prevent invalid symbols. It seems that instead of returning NULL, its setting a pointer to -1
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4770 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 20:12:24 +00:00
brain
8a21bfcb21 Tidy up, make a lot of char*'s const
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4769 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 17:17:06 +00:00
brain
6fa35bdb18 Better checks for running out of disk space, inability to write to tmp dir, etc
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4768 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 16:58:27 +00:00
brain
3719db12e6 Extra debug all over the place, which maybe we should keep
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4767 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 13:33:34 +00:00
om
444c76ddcc Untested but compiling updates for Resolver DNS API
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4766 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 12:57:26 +00:00
om
9d6c31ba65 General cleanup of code., add support for +Q channel mode (and config tag <remove:supportnokicks>)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4765 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 12:56:36 +00:00
brain
40d465542f Change prototype of OneOfMatches
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4764 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 12:00:27 +00:00
brain
266ed4236f Add m_tline, tests how many users a gline, zline etc would match. Can use this before adding one if youre not sure, or youre just curious
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4763 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 11:55:40 +00:00
brain
2d871a23fe Remove dependent commands BEFORE deleting the Module*, otherwise things go tits over arse
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4761 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-07 11:53:21 +00:00