Changes in / [3f44e43:537d9b9]


Ignore:
Files:
12 added
7 edited

Legend:

Unmodified
Added
Removed
  • configure

    r3f44e43 r537d9b9  
    3636jabber="default-on"
    3737oscar="default-on"
     38yahoo="default-on"
    3839
    3940twitter=1
     
    132133--jabber=0/1    Disable/enable Jabber part              $jabber
    133134--oscar=0/1     Disable/enable Oscar part (ICQ, AIM)    $oscar
     135--yahoo=0/1     Disable/enable Yahoo part               $yahoo
    134136--twitter=0/1   Disable/enable Twitter part             $twitter
    135137
     
    835837        [ "$jabber" = "default-on" ] && jabber=0
    836838        [ "$oscar" = "default-on" ] && oscar=0
     839        [ "$yahoo" = "default-on" ] && yahoo=0
    837840
    838841        echo '#undef PACKAGE' >> config.h
     
    877880        protocols=$protocols'oscar '
    878881        protoobjs=$protoobjs'oscar_mod.o '
     882fi
     883
     884if [ "$yahoo" = 0 ]; then
     885        echo '#undef WITH_YAHOO' >> config.h
     886else
     887        echo '#define WITH_YAHOO' >> config.h
     888        protocols=$protocols'yahoo '
     889        protoobjs=$protoobjs'yahoo_mod.o '
    879890fi
    880891
  • doc/user-guide/commands.xml

    r3f44e43 r537d9b9  
    104104                        </bitlbee-command>
    105105
     106                        <bitlbee-command name="yahoo">
     107                                <syntax>account add yahoo &lt;handle&gt; [&lt;password&gt;]</syntax>
     108
     109                                <description>
     110                                        <para>
     111                                                For Yahoo! connections there are no special arguments.
     112                                        </para>
     113                                </description>
     114                        </bitlbee-command>
     115
    106116                </bitlbee-command>
    107117
  • irc_im.c

    r3f44e43 r537d9b9  
    10141014        if (!(acc = account_get(ic->irc->b, value))) {
    10151015                return SET_INVALID;
    1016         } else if (!acc->prpl->chat_join && acc->prpl != &protocol_missing) {
     1016        } else if (!acc->prpl->chat_join) {
    10171017                irc_rootmsg(ic->irc, "Named chatrooms not supported on that account.");
    10181018                return SET_INVALID;
  • protocols/account.c

    r3f44e43 r537d9b9  
    7171        s->flags |= SET_NOSAVE | ACC_SET_OFFLINE_ONLY | ACC_SET_LOCKABLE;
    7272        set_setstr(&a->set, "username", user);
    73 
    74         if (prpl == &protocol_missing) {
    75                 s = set_add(&a->set, "server", NULL, set_eval_account, a);
    76                 s->flags |= SET_NOSAVE | SET_HIDDEN | ACC_SET_OFFLINE_ONLY | ACC_SET_ONLINE_ONLY;
    77         }
    7873
    7974        /* Hardcode some more clever tag guesses. */
  • protocols/nogaim.c

    r3f44e43 r537d9b9  
    196196}
    197197
    198 /* Returns heap allocated string with text attempting to explain why a protocol is missing
    199  * Free the return value with g_free() */
    200 char *explain_unknown_protocol(const char *name)
    201 {
    202         char *extramsg = NULL;
    203 
    204         if (is_protocol_disabled(name)) {
    205                 return g_strdup("Protocol disabled in the global config (bitlbee.conf)");
    206         }
    207 
    208         if (strcmp(name, "yahoo") == 0) {
    209                 return g_strdup("The old yahoo protocol is gone, try the funyahoo++ libpurple plugin instead.");
    210         }
    211 
    212 #ifdef WITH_PURPLE
    213         if ((strcmp(name, "msn") == 0) ||
    214             (strcmp(name, "loubserp-mxit") == 0) ||
    215             (strcmp(name, "myspace") == 0)) {
    216                 return g_strdup("This protocol has been removed from your libpurple version.");
    217         }
    218 
    219         if (strcmp(name, "hipchat") == 0) {
    220                 return g_strdup("This account type isn't supported by libpurple's jabber.");
    221         }
    222 
    223 #else
    224         if (strcmp(name, "aim") == 0 || strcmp(name, "icq") == 0) {
    225                 return g_strdup("This account uses libpurple specific aliases for oscar. "
    226                                 "Re-add the account with `account add oscar ...'");
    227         }
    228 
    229         extramsg = "If this is a libpurple plugin, you might need to install bitlbee-libpurple instead.";
    230 #endif
    231         return g_strconcat("The protocol plugin is not installed or could not be loaded. "
    232                            "Use the `plugins' command to list available protocols. ",
    233                            extramsg, NULL);
    234 }
    235 
    236198void nogaim_init()
    237199{
    238200        extern void msn_initmodule();
    239201        extern void oscar_initmodule();
     202        extern void byahoo_initmodule();
    240203        extern void jabber_initmodule();
    241204        extern void twitter_initmodule();
     
    249212#ifdef WITH_OSCAR
    250213        oscar_initmodule();
     214#endif
     215
     216#ifdef WITH_YAHOO
     217        byahoo_initmodule();
    251218#endif
    252219
  • protocols/nogaim.h

    r3f44e43 r537d9b9  
    327327G_MODULE_EXPORT struct prpl *find_protocol(const char *name);
    328328G_MODULE_EXPORT gboolean is_protocol_disabled(const char *name);
    329 G_MODULE_EXPORT char *explain_unknown_protocol(const char *name);
    330329/* When registering a new protocol, you should allocate space for a new prpl
    331330 * struct, initialize it (set the function pointers to point to your
  • root_commands.c

    r3f44e43 r537d9b9  
    439439
    440440                if (prpl == NULL) {
    441                         char *msg = explain_unknown_protocol(cmd[2]);
    442                         irc_rootmsg(irc, "Unknown protocol");
    443                         irc_rootmsg(irc, msg);
    444                         g_free(msg);
     441                        if (is_protocol_disabled(cmd[2])) {
     442                                irc_rootmsg(irc, "Protocol disabled in global config");
     443                        } else {
     444                                irc_rootmsg(irc, "Unknown protocol");
     445                        }
    445446                        return;
    446447                }
     
    591592                                    "first (use /OPER)", a->tag);
    592593                } else if (a->prpl == &protocol_missing) {
    593                         char *proto = set_getstr(&a->set, "_protocol_name");
    594                         char *msg = explain_unknown_protocol(proto);
    595                         irc_rootmsg(irc, "Unknown protocol `%s'", proto);
    596                         irc_rootmsg(irc, msg);
    597                         g_free(msg);
     594                        irc_rootmsg(irc, "Protocol `%s' not recognised (plugin may be missing or not running?)",
     595                                    set_getstr(&a->set, "_protocol_name"));
    598596                } else {
    599597                        account_on(irc->b, a);
Note: See TracChangeset for help on using the changeset viewer.