diff options
Diffstat (limited to 'irc_send.c')
| -rw-r--r-- | irc_send.c | 38 | 
1 files changed, 24 insertions, 14 deletions
| @@ -219,21 +219,31 @@ void irc_send_whois( irc_user_t *iu )  	irc_send_num( irc, 311, "%s %s %s * :%s",  	              iu->nick, iu->user, iu->host, iu->fullname ); -	/* -	if( u->ic ) -		irc_send_num( irc, 312, "%s %s.%s :%s network", u->nick, u->ic->acc->user, -		           u->ic->acc->server && *u->ic->acc->server ? u->ic->acc->server : "", -		           u->ic->acc->prpl->name ); +	if( iu->bu ) +	{ +		bee_user_t *bu = iu->bu; +		 +		irc_send_num( irc, 312, "%s %s.%s :%s network", iu->nick, bu->ic->acc->user, +		           bu->ic->acc->server && *bu->ic->acc->server ? bu->ic->acc->server : "", +		           bu->ic->acc->prpl->name ); +		 +		if( bu->status ) +		{ +			if( bu->status_msg ) +				irc_send_num( irc, 301, "%s :%s (%s)", iu->nick, bu->status, bu->status_msg ); +			else +				irc_send_num( irc, 301, "%s :%s", iu->nick, bu->status ); +		} +		 +		/* +		if( u->status_msg ) +			irc_send_num( irc, 333, "%s :Status: %s", u->nick, u->status_msg ); +		*/ +	}  	else -		irc_send_num( irc, 312, "%s %s :%s", u->nick, irc->myhost, IRCD_INFO ); -	*/ -	 -	/* -	if( u->away ) -		irc_send_num( irc, 301, "%s :%s", u->nick, u->away ); -	if( u->status_msg ) -		irc_send_num( irc, 333, "%s :Status: %s", u->nick, u->status_msg ); -	*/ +	{ +		irc_send_num( irc, 312, "%s %s :%s", iu->nick, irc->root->host, IRCD_INFO " " BITLBEE_VERSION ); +	}  	irc_send_num( irc, 318, "%s :End of /WHOIS list", iu->nick );  } | 
