summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/modules.h10
-rw-r--r--src/InspIRCd.layout38
-rw-r--r--src/inspircd.cpp6
-rw-r--r--src/modules.cpp6
4 files changed, 38 insertions, 22 deletions
diff --git a/include/modules.h b/include/modules.h
index cf5d87f6f..fd9d1765b 100644
--- a/include/modules.h
+++ b/include/modules.h
@@ -495,6 +495,16 @@ class Server : public classbase
* linked servers.
*/
virtual void ChangeGECOS(userrec* user, std::string gecos);
+
+ /** Returns true if the servername you give is ulined.
+ * ULined servers have extra privilages. They are allowed to change nicknames on remote servers,
+ * change modes of clients which are on remote servers and set modes of channels where there are
+ * no channel operators for that channel on the ulined server, amongst other things. Ulined server
+ * data is also broadcast across the mesh at all times as opposed to selectively messaged in the
+ * case of normal servers, as many ulined server types (such as services) do not support meshed
+ * links and must operate in this manner.
+ */
+ virtual bool IsUlined(std::string server);
};
/** Allows reading of values from configuration files
diff --git a/src/InspIRCd.layout b/src/InspIRCd.layout
index f7d226043..b5fe0474f 100644
--- a/src/InspIRCd.layout
+++ b/src/InspIRCd.layout
@@ -1,5 +1,5 @@
[Editors]
-Focused=43
+Focused=-1
Order=2,4,6,3,7,25,5,24,39,42,43,-1,1
[Editor_0]
@@ -37,9 +37,9 @@ LeftChar=1
[Editor_4]
Open=1
Top=0
-CursorCol=62
-CursorRow=128
-TopLine=77
+CursorCol=2
+CursorRow=183
+TopLine=163
LeftChar=1
[Editor_5]
@@ -139,11 +139,11 @@ TopLine=1
LeftChar=1
[Editor_17]
-Open=0
+Open=1
Top=0
CursorCol=21
CursorRow=38
-TopLine=1
+TopLine=105
LeftChar=1
[Editor_18]
@@ -164,14 +164,14 @@ LeftChar=1
[Editor_20]
Open=1
-Top=0
+Top=1
CursorCol=5
-CursorRow=240
-TopLine=197
+CursorRow=506
+TopLine=470
LeftChar=1
[Editor_21]
-Open=0
+Open=1
Top=0
CursorCol=1
CursorRow=63
@@ -197,9 +197,9 @@ LeftChar=1
[Editor_24]
Open=1
Top=0
-CursorCol=1
-CursorRow=193
-TopLine=162
+CursorCol=5
+CursorRow=351
+TopLine=321
LeftChar=1
[Editor_25]
Open=1
@@ -329,15 +329,15 @@ TopLine=1685
LeftChar=1
[Editor_43]
Open=1
-Top=1
-CursorCol=12
-CursorRow=2128
-TopLine=2096
+Top=0
+CursorCol=6
+CursorRow=1259
+TopLine=1259
LeftChar=1
[Editor_44]
Open=1
Top=0
-CursorCol=4
-CursorRow=92
+CursorCol=34
+CursorRow=93
TopLine=40
LeftChar=1
diff --git a/src/inspircd.cpp b/src/inspircd.cpp
index 18c4c4fb8..62eb28e96 100644
--- a/src/inspircd.cpp
+++ b/src/inspircd.cpp
@@ -2222,9 +2222,9 @@ void ConnectUser(userrec *user)
WriteServ(user->fd,"001 %s :Welcome to the %s IRC Network %s!%s@%s",user->nick,Network,user->nick,user->ident,user->host);
WriteServ(user->fd,"002 %s :Your host is %s, running version %s",user->nick,ServerName,VERSION);
WriteServ(user->fd,"003 %s :This server was created %s %s",user->nick,__TIME__,__DATE__);
- WriteServ(user->fd,"004 %s :%s %s iowghraAsORVSxNCWqBzvdHtGI lvhopsmntikrRcaqOALQbSeKVfHGCuzN",user->nick,ServerName,VERSION);
- WriteServ(user->fd,"005 %s :MAP KNOCK SAFELIST HCN MAXCHANNELS=20 MAXBANS=60 NICKLEN=30 TOPICLEN=307 KICKLEN=307 MAXTARGETS=20 AWAYLEN=307 :are supported by this server",user->nick);
- WriteServ(user->fd,"005 %s :WALLCHOPS WATCH=128 SILENCE=5 MODES=13 CHANTYPES=# PREFIX=(ohv)@%c+ CHANMODES=ohvbeqa,kfL,l,psmntirRcOAQKVHGCuzN NETWORK=%s :are supported by this server",user->nick,'%',Network);
+ WriteServ(user->fd,"004 %s %s %s iowghraAsORVSxNCWqBzvdHtGI lvhopsmntikrRcaqOALQbSeKVfHGCuzN",user->nick,ServerName,VERSION);
+ WriteServ(user->fd,"005 %s MAP KNOCK SAFELIST HCN MAXCHANNELS=20 MAXBANS=60 NICKLEN=30 TOPICLEN=307 KICKLEN=307 MAXTARGETS=20 AWAYLEN=307 :are supported by this server",user->nick);
+ WriteServ(user->fd,"005 %s WALLCHOPS WATCH=128 SILENCE=5 MODES=13 CHANTYPES=# PREFIX=(ohv)@%c+ CHANMODES=ohvbeqa,kfL,l,psmntirRcOAQKVHGCuzN NETWORK=%s :are supported by this server",user->nick,'%',Network);
ShowMOTD(user);
FOREACH_MOD OnUserConnect(user);
WriteOpers("*** Client connecting on port %d: %s!%s@%s",user->port,user->nick,user->ident,user->host);
diff --git a/src/modules.cpp b/src/modules.cpp
index 1c37dd0cb..a052b9302 100644
--- a/src/modules.cpp
+++ b/src/modules.cpp
@@ -14,6 +14,7 @@
#include "wildcard.h"
#include "mode.h"
#include "message.h"
+#include "commands.h"
// class type for holding an extended mode character - internal to core
@@ -178,6 +179,11 @@ void Server::QuitUser(userrec* user, std::string reason)
kill_link(user,reason.c_str());
}
+bool Server::IsUlined(std::string server)
+{
+ return is_uline(server.c_str())
+}
+
void Server::CallCommandHandler(std::string commandname, char** parameters, int pcnt, userrec* user)
{
call_handler(commandname.c_str(),parameters,pcnt,user);