Changeset 1186382


Ignore:
Timestamp:
2007-10-10T22:15:59Z (17 years ago)
Author:
Wilmer van der Gaast <wilmer@…>
Branches:
master
Children:
285b55d
Parents:
8c2008e
Message:

Made the netsplit-like quit messages optional.

Files:
3 edited

Legend:

Unmodified
Added
Removed
  • doc/user-guide/commands.xml

    r8c2008e r1186382  
    596596        </bitlbee-setting>
    597597
     598        <bitlbee-setting name="simulate_netsplit" type="boolean" scope="global">
     599                <default>true</default>
     600
     601                <description>
     602                        <para>
     603                                Some IRC clients parse quit messages sent by the IRC server to see if someone really left or just disappeared because of a netsplit. By default, BitlBee tries to simulate netsplit-like quit messages to keep the control channel window clean. If you don't like this (or if your IRC client doesn't support this) you can disable this setting.
     604                        </para>
     605                </description>
     606        </bitlbee-setting>
     607
    598608        <bitlbee-setting name="ssl" type="boolean" scope="account">
    599609                <default>false</default>
  • irc.c

    r8c2008e r1186382  
    143143        set_add( &irc->set, "query_order", "lifo", NULL, irc );
    144144        set_add( &irc->set, "save_on_quit", "true", set_eval_bool, irc );
     145        set_add( &irc->set, "simulate_netsplit", "true", set_eval_bool, irc );
    145146        set_add( &irc->set, "strip_html", "true", NULL, irc );
    146147        set_add( &irc->set, "to_char", ": ", set_eval_to_char, irc );
     
    910911        char reason[128];
    911912       
    912         if( u->ic && u->ic->flags & OPT_LOGGING_OUT )
     913        if( u->ic && u->ic->flags & OPT_LOGGING_OUT && set_getbool( &irc->set, "simulate_netsplit" ) )
    913914        {
    914915                if( u->ic->acc->server )
  • protocols/nogaim.c

    r8c2008e r1186382  
    586586              ( ( u->online == oo ) && ( oa == !u->away ) ) ) )         /* (De)voice people changing state */
    587587        {
    588                 irc_write( ic->irc, ":%s MODE %s %cv %s", ic->irc->myhost,
    589                                                           ic->irc->channel, u->away?'-':'+', u->nick );
     588                char *from;
     589               
     590                if( set_getbool( &ic->irc->set, "simulate_netsplit" ) )
     591                {
     592                        from = g_strdup( ic->irc->myhost );
     593                }
     594                else
     595                {
     596                        from = g_strdup_printf( "%s!%s@%s", ic->irc->mynick, ic->irc->mynick,
     597                                                            ic->irc->myhost );
     598                }
     599                irc_write( ic->irc, ":%s MODE %s %cv %s", from, ic->irc->channel,
     600                                                          u->away?'-':'+', u->nick );
     601                g_free( from );
    590602        }
    591603}
Note: See TracChangeset for help on using the changeset viewer.