commit - e92c889580bc22165e62ee42310bec4ce09cde3a
commit + 082a92beef53fd26304c0dd059255d5eaba89f37
blob - 28faac7555bcbb46750b581538eb6d520a49cada
blob + 0b07949bd9e5fb659766c337743789e1fc7b739a
--- ChangeLog
+++ ChangeLog
-- ChangeLog --
ngIRCd 0.11.1
+ - send "G" instead of "H" flag in WHO replies (reported by Dana Dahlstrom).
- Under some circumstances ngIRCd issued
channel MODE message with a trailing space. (Dana Dahlstrom) [from HEAD]
--
-$Id: ChangeLog,v 1.332.2.7 2008/02/16 11:26:11 fw Exp $
+$Id: ChangeLog,v 1.332.2.8 2008/02/26 12:06:57 fw Exp $
blob - a9f698d6669ef8a3f9428d08769a25cfb76a65a3
blob + 7eb5c84fac735f6b7c0d2d438374db765cfd68c4
--- NEWS
+++ NEWS
-- NEWS --
+ngIRCd 0.11.0 (2008-02-27)
+ - send "G" instead of "H" flag in WHO replies (reported by Dana Dahlstrom).
+
ngIRCd 0.11.0 (2008-01-15)
- Add support for /STAT u (server uptime) command.
--
-$Id: NEWS,v 1.83.2.2 2008/01/15 20:45:52 alex Exp $
+$Id: NEWS,v 1.83.2.3 2008/02/26 12:06:57 fw Exp $
blob - 24db75dea109b59a6242b4432310ce501a872e51
blob + 4e51d757aea137d817ea3a0b6118720e76143add
--- src/ngircd/irc-info.c
+++ src/ngircd/irc-info.c
#include "portab.h"
-static char UNUSED id[] = "$Id: irc-info.c,v 1.41 2007/12/11 11:29:44 fw Exp $";
+static char UNUSED id[] = "$Id: irc-info.c,v 1.41.2.1 2008/02/26 12:06:57 fw Exp $";
#include "imp.h"
#include <assert.h>
if( ok && (( ! only_ops ) || ( strchr( Client_Modes( c ), 'o' ))))
{
/* Get flags */
- strcpy( flags, "H" );
+ if (strchr(Client_Modes( c ), 'a'))
+ strcpy(flags, "G"); /* away */
+ else
+ strcpy(flags, "H");
+
if( strchr( Client_Modes( c ), 'o' )) strlcat( flags, "*", sizeof( flags ));
/* Search suitable channel */
if( strchr( Client_Modes( c ), 'i' )) is_visible = false;
else is_visible = true;
- if( is_member || is_visible )
- {
- /* Flags zusammenbasteln */
- strcpy( flags, "H" );
+ if( is_member || is_visible ) {
+ if (strchr(Client_Modes( c ), 'a'))
+ strcpy(flags, "G"); /* away */
+ else
+ strcpy(flags, "H");
+
if( strchr( Client_Modes( c ), 'o' )) strlcat( flags, "*", sizeof( flags ));
if( strchr( Channel_UserModes( Chan, c ), 'o' )) strlcat( flags, "@", sizeof( flags ));
else if( strchr( Channel_UserModes( Chan, c ), 'v' )) strlcat( flags, "+", sizeof( flags ));