X-Git-Url: https://jfr.im/git/irc/rqf/shadowircd.git/blobdiff_plain/83251205659e33e5a21fc504db0e8495fabeed28..0d3fb5c99c432e752a363960ff14ebe727519065:/src/s_user.c?ds=sidebyside diff --git a/src/s_user.c b/src/s_user.c index 774fdb3..f8d5e0c 100644 --- a/src/s_user.c +++ b/src/s_user.c @@ -94,7 +94,7 @@ int user_modes[256] = { 0, /* W */ 0, /* X */ 0, /* Y */ - 0, /* Z */ + UMODE_SSLCLIENT, /* Z */ /* 0x5B */ 0, 0, 0, 0, 0, 0, /* 0x60 */ UMODE_ADMIN, /* a */ 0, /* b */ @@ -522,6 +522,9 @@ register_local_user(struct Client *client_p, struct Client *source_p, const char add_to_id_hash(source_p->id, source_p); } + if (IsSSL(source_p)) + source_p->umodes |= UMODE_SSLCLIENT; + if (source_p->umodes & UMODE_INVISIBLE) Count.invisi++; @@ -1007,6 +1010,7 @@ user_mode(struct Client *client_p, struct Client *source_p, int parc, const char /* can only be set on burst */ case 'S': + case 'Z': case ' ': case '\n': case '\r': @@ -1369,7 +1373,7 @@ construct_umodebuf(void) void change_nick_user_host(struct Client *target_p, const char *nick, const char *user, - const char *host, int newts, char *format, ...) + const char *host, int newts, const char *format, ...) { rb_dlink_node *ptr; struct Channel *chptr;