215 Commits

Author SHA1 Message Date
brain
a5da688e2b Make sure that the hostname isnt set after the timeout period
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4912 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-12 20:27:30 +00:00
brain
6050df73f4 Just to mess with om's head, remove helperfuncs.h from everywhere
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4900 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11 23:31:13 +00:00
brain
cfb2c2fff4 CamelCaseRocksSoMuchICamelCasedAllTheMethodsOfClassInspIRCdSoThatItAllLooksNeat.
NowSomebodyHasToSpendHoursDocumentingAllOfThisIWonderWhoThatWillEndUpBeing...


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4889 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11 16:14:44 +00:00
brain
e84bf9f3ec Change to using Instance->Log (InspIRCd::Log) rather than log() macro
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4880 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11 12:26:07 +00:00
brain
d174657167 Now two types of log macro, log() and ilog(). log() assumes an InspIRCd object called ServerInstance, ilog() takes an InspIRCd object as first param.
TODO: Run a regexp over these, using perl, to translate them into InspIRCd::Log calls and then eliminate the macro :)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4879 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11 12:15:03 +00:00
brain
312d49abb0 Move all of the xline stuff into class XLineManager, make an instance of it in class InspIRCd and use it
(eliminates another extern)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4878 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11 11:06:40 +00:00
brain
76ebc88ccd extern time_t TIME -> InspIRCd::Time()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4873 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11 09:23:46 +00:00
brain
55e2180b4a Committing this as a rollback point - does not compile
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4860 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10 23:36:53 +00:00
brain
24b1fbeec8 Move all_opers into class InspIRCd
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4857 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10 21:39:57 +00:00
brain
d02a5866d4 Mass-tidyup of module global vars, theyre no longer global vars.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4856 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10 21:19:19 +00:00
brain
23a4885701 Move tons more stuff into class InspIRCd*, make signal handler functions static members
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4855 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10 20:27:51 +00:00
brain
fd2eb26472 Move IsNick, IsIdent into class InspIRCd, update modules that use it.
Change message.h to just a #warning saying its deprecated, and remove all use of it from the core :)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4847 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10 18:04:19 +00:00
brain
dafc021be4 cmode(), cflags(), cstatus() -> chanrec::GetStatusChar(), chanrec::GetStatusFlags(), chanrec::GetStatus()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4837 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10 15:44:03 +00:00
brain
396c9ef9f7 FindNick, FindChan, ChanModes, UserList, CountInvisible, PurgeEmptyChannels, GetClass, WriteOpers, GetServerDescription -> into classes
ServerConfig takes InspIRCd pointer in its constructor


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4832 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10 14:43:29 +00:00
brain
eb28eaea35 Passing invalid instance to dns isnt a good idea
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4825 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 21:50:16 +00:00
brain
e2b1ad588d Move more stuff into userrec
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4823 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 19:56:08 +00:00
brain
48262da087 Change some resolver stuff.
OM, THIS STILL WONT COMPILE! Error on the same line


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4821 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 19:25:31 +00:00
brain
9bc04a3025 userrec and chanrec now have their own independent pointer back to their 'creator' InspIRCd* object, extern now longer required in channels.cpp or users.cpp
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4820 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 18:55:52 +00:00
brain
2591562ada Move tons more stuff into class InspIRCd
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4819 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 17:52:10 +00:00
brain
1cbf29e3cd Move clientlist and chanlist into InspIRCd*
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4818 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 16:35:24 +00:00
brain
89749a7440 Move fd_ref_table into class InspIRCd*
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4817 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 15:36:51 +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
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
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
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
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
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
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
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
f4a4901fee Support CIDR, CIDR zline, /oper and CIDR <connect> tags. NOTE: With CIDR oper, ident field is not supported (yet)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4732 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-06 16:09:29 +00:00
brain
f8ca9e22cc Fix global session checks
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4715 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04 19:32:11 +00:00
brain
0641430401 Better detection for hosts starting with :
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4711 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04 15:59:11 +00:00
brain
2820565ea3 Fixes for ::0 ip's, disable autobind when using ::ffff: etc
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4703 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04 15:16:37 +00:00
brain
425e2a6490 More changes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4702 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04 12:59:04 +00:00
brain
32ea53d02e Changes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4701 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04 12:57:43 +00:00
brain
7e6cdd6c8b Debug
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4700 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04 12:47:19 +00:00
brain
b886782d50 Extra debug
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4699 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04 12:39:39 +00:00
brain
b8c3c5d25b Safety wrapper defines for ipv6 code on ipv4 ircds
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4697 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04 11:03:21 +00:00
brain
5847843481 IPV6 changes for userrec::ip
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4695 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04 10:30:31 +00:00
brain
f25755bbe7 Change to using userrec::ip as a sockaddr to store port, ip and address family, rather than userrec::ip4 and userrec::port.
This allows us to handle remote ipv6 users on an ipv4 server, and vice versa.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4694 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04 01:59:41 +00:00
brain
9e0fd68e34 Fixed resolver, forward lookup of ipv6 doesnt work right yet
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4674 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 16:00:55 +00:00
brain
c6934754b0 Dynamically generate 004 numeric from the modehandler list
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4665 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 11:17:03 +00:00