mirror of
https://github.com/osmarks/ngircd.git
synced 2025-02-24 05:00:01 +00:00
Implement an Unreal-like user mode "B" ("Bot mode")
This commit is contained in:
parent
360a254be0
commit
c2b39fdede
@ -161,7 +161,7 @@
|
||||
#endif
|
||||
|
||||
/** Supported user modes. */
|
||||
#define USERMODES "acCiorRswx"
|
||||
#define USERMODES "aBcCiorRswx"
|
||||
|
||||
/** Supported channel modes. */
|
||||
#define CHANMODES "beiIklmnoOPrRstvz"
|
||||
|
@ -1111,6 +1111,12 @@ IRC_WHOIS_SendReply(CLIENT *Client, CLIENT *from, CLIENT *c)
|
||||
Client_ID(from), Client_ID(c)))
|
||||
return DISCONNECTED;
|
||||
|
||||
/* IRC-Bot? */
|
||||
if (Client_HasMode(c, 'B') &&
|
||||
!IRC_WriteStrClient(from, RPL_WHOISBOT_MSG,
|
||||
Client_ID(from), Client_ID(c)))
|
||||
return DISCONNECTED;
|
||||
|
||||
/* Connected using SSL? */
|
||||
if (Conn_UsesSSL(Client_Conn(c)) &&
|
||||
!IRC_WriteStrClient(from, RPL_WHOISSSL_MSG, Client_ID(from),
|
||||
|
@ -229,6 +229,14 @@ Client_Mode( CLIENT *Client, REQUEST *Req, CLIENT *Origin, CLIENT *Target )
|
||||
ERR_NOPRIVILEGES_MSG,
|
||||
Client_ID(Origin));
|
||||
break;
|
||||
case 'B': /* Bot */
|
||||
if (Client_HasMode(Client, 'r'))
|
||||
ok = IRC_WriteStrClient(Origin,
|
||||
ERR_RESTRICTED_MSG,
|
||||
Client_ID(Origin));
|
||||
else
|
||||
x[0] = 'B';
|
||||
break;
|
||||
case 'c': /* Receive connect notices
|
||||
* (only settable by IRC operators!) */
|
||||
if (!set || Client_Type(Client) == CLIENT_SERVER
|
||||
|
@ -72,6 +72,7 @@
|
||||
#define RPL_NOTOPIC_MSG "331 %s %s :No topic is set"
|
||||
#define RPL_TOPIC_MSG "332 %s %s :%s"
|
||||
#define RPL_TOPICSETBY_MSG "333 %s %s %s %u"
|
||||
#define RPL_WHOISBOT_MSG "335 %s %s :is a IRC Bot"
|
||||
#define RPL_INVITING_MSG "341 %s %s %s%s"
|
||||
#define RPL_INVITELIST_MSG "346 %s %s %s"
|
||||
#define RPL_ENDOFINVITELIST_MSG "347 %s %s :End of channel invite list"
|
||||
|
Loading…
x
Reference in New Issue
Block a user