Changeset c998255 for protocols


Ignore:
Timestamp:
2005-11-15T14:57:38Z (19 years ago)
Author:
Jelmer Vernooij <jelmer@…>
Branches:
master
Children:
2cdd8ce, cc9079e
Parents:
b135438 (diff), 9cb9868 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge from Jelmer

Location:
protocols
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • protocols/jabber/jabber.c

    rb135438 rc998255  
    24362436        ret->alias_buddy = jabber_roster_update;
    24372437        ret->group_buddy = jabber_group_change;
     2438        ret->cmp_buddynames = g_strcasecmp;
    24382439
    24392440        register_protocol (ret);
  • protocols/msn/msn.c

    rb135438 rc998255  
    397397        ret->rem_deny = msn_rem_deny;
    398398        ret->send_typing = msn_send_typing;
     399        ret->cmp_buddynames = g_strcasecmp;
    399400
    400401        register_protocol(ret);
  • protocols/nogaim.c

    rb135438 rc998255  
    224224        return( NULL );
    225225}
    226 
    227 /* Compare two handles for a specific protocol. For most protocols,
    228    g_strcasecmp is okay, but for AIM, for example, it's not. This really
    229    should be a compare function inside the PRPL module, but I do it this
    230    way for now because I don't want to touch the Gaim code too much since
    231    it's not going to be here for too long anymore. */
    232 int handle_cmp( char *a, char *b, struct prpl *protocol )
    233 {
    234         if( !strcmp(protocol->name, "oscar") )
    235         {
    236                 /* AIM, being teh evil, thinks it's cool that users can put
    237                    random spaces in screennames. But "A B" and "AB" are
    238                    equal. Hrmm, okay. */
    239                 while( 1 )
    240                 {
    241                         while( *a == ' ' ) a ++;
    242                         while( *b == ' ' ) b ++;
    243                        
    244                         if( *a && *b )
    245                         {
    246                                 if( tolower( *a ) != tolower( *b ) )
    247                                         return( 1 );
    248                         }
    249                         else if( *a || *b )
    250                                 return( 1 );
    251                         else
    252                                 return( 0 );
    253                        
    254                         a ++;
    255                         b ++;
    256                 }
    257         }
    258         else
    259         {
    260                 return( g_strcasecmp( a, b ) );
    261         }
    262 }
    263 
    264226
    265227/* multi.c */
     
    897859       
    898860        /* It might be yourself! */
    899         if( handle_cmp ( handle, b->gc->user->username, b->gc->prpl ) == 0 )
     861        if( b->gc->prpl->cmp_buddynames( handle, b->gc->user->username ) == 0 )
    900862        {
    901863                u = user_find( b->gc->irc, b->gc->irc->nick );
  • protocols/nogaim.h

    rb135438 rc998255  
    242242
    243243        char *(* get_status_string) (struct gaim_connection *gc, int stat);
     244
     245        int (* cmp_buddynames) (const char *who1, const char *who2);
    244246};
    245247
     
    266268int proto_away( struct gaim_connection *gc, char *away );
    267269char *set_eval_away_devoice( irc_t *irc, set_t *set, char *value );
    268 int handle_cmp( char *a, char *b, struct prpl *protocol );
    269270
    270271gboolean auto_reconnect( gpointer data );
  • protocols/oscar/auth.c

    rb135438 rc998255  
    352352{
    353353        guint8 encoding_table[] = {
    354 #if 0 /* old v1 table */
    355                 0xf3, 0xb3, 0x6c, 0x99,
    356                 0x95, 0x3f, 0xac, 0xb6,
    357                 0xc5, 0xfa, 0x6b, 0x63,
    358                 0x69, 0x6c, 0xc3, 0x9f
    359 #else /* v2.1 table, also works for ICQ */
     354        /* v2.1 table, also works for ICQ */
    360355                0xf3, 0x26, 0x81, 0xc4,
    361356                0x39, 0x86, 0xdb, 0x92,
    362357                0x71, 0xa3, 0xb9, 0xe6,
    363358                0x53, 0x7a, 0x95, 0x7c
    364 #endif
    365359        };
    366360        int i;
  • protocols/oscar/oscar.c

    rb135438 rc998255  
    12081208        return 1;
    12091209}
    1210 /*
    1211 int handle_cmp_aim(const char * a, const char * b) {
    1212         return handle_cmp(a, b, PROTO_TOC);
    1213 }
    1214 */
     1210
    12151211static int gaim_parse_incoming_im(aim_session_t *sess, aim_frame_t *fr, ...) {
    12161212        int channel, ret = 0;
     
    24842480        ret->set_permit_deny = oscar_set_permit_deny;
    24852481        ret->keepalive = oscar_keepalive;
     2482        ret->cmp_buddynames = aim_sncmp;
    24862483        ret->get_status_string = oscar_get_status_string;
    24872484
  • protocols/oscar/oscar_util.c

    rb135438 rc998255  
    1 /*
    2  *
    3  *
    4  *
    5  */
    6 
    71#include <aim.h>
    82#include <ctype.h>
  • protocols/oscar/tlv.c

    rb135438 rc998255  
    11#include <aim.h>
    22
    3 static aim_tlv_t *createtlv(void)
    4 {
    5         return g_new0(aim_tlv_t, 1);
    6 }
    7 
    83static void freetlv(aim_tlv_t **oldtlv)
    94{
    10 
    115        if (!oldtlv || !*oldtlv)
    126                return;
     
    159        g_free(*oldtlv);
    1610        *oldtlv = NULL;
    17 
    18         return;
    1911}
    2012
     
    4638                length = aimbs_get16(bs);
    4739
    48 #if 0 /* temporarily disabled until I know if they're still doing it or not */
    49                 /*
    50                  * Okay, so now AOL has decided that any TLV of
    51                  * type 0x0013 can only be two bytes, despite
    52                  * what the actual given length is.  So here
    53                  * we dump any invalid TLVs of that sort.  Hopefully
    54                  * theres no special cases to this special case.
    55                  *   - mid (30jun2000)
    56                  */
    57                 if ((type == 0x0013) && (length != 0x0002))
    58                         length = 0x0002;
    59 #else
    60                 if (0)
    61                         ;
    62 #endif
    63                 else {
    64 
    65                         cur = g_new0(aim_tlvlist_t, 1);
    66 
    67                         cur->tlv = createtlv();
    68                         cur->tlv->type = type;
    69                         if ((cur->tlv->length = length))
    70                                cur->tlv->value = aimbs_getraw(bs, length);     
    71 
    72                         cur->next = list;
    73                         list = cur;
    74                 }
     40                cur = g_new0(aim_tlvlist_t, 1);
     41
     42                cur->tlv = g_new0(aim_tlv_t, 1);
     43                cur->tlv->type = type;
     44                if ((cur->tlv->length = length))
     45                        cur->tlv->value = aimbs_getraw(bs, length);     
     46
     47                cur->next = list;
     48                list = cur;
    7549        }
    7650
     
    173147                return 0;
    174148
    175         if (!(newtlv->tlv = createtlv())) {
     149        if (!(newtlv->tlv = g_new0(aim_tlv_t, 1))) {
    176150                g_free(newtlv);
    177151                return 0;
  • protocols/yahoo/yahoo.c

    rb135438 rc998255  
    411411        ret->chat_leave = byahoo_chat_leave;
    412412        ret->chat_open = byahoo_chat_open;
     413        ret->cmp_buddynames = g_strcasecmp;
    413414       
    414415        register_protocol(ret);
Note: See TracChangeset for help on using the changeset viewer.