diff options
author | Wilmer van der Gaast <wilmer@gaast.net> | 2006-08-04 15:56:53 +0200 |
---|---|---|
committer | Wilmer van der Gaast <wilmer@gaast.net> | 2006-08-04 15:56:53 +0200 |
commit | d3a672c0b70eb7b50dcd2908d6cd6928d4f7d874 (patch) | |
tree | 137a47de628bbb7522105727abafa06539fc9ea6 | |
parent | 0aaca60fdc1a6793b438ecc926bd937073d22685 (diff) |
Added a per-account web_aware setting for ICQ connections.
-rw-r--r-- | protocols/oscar/oscar.c | 5 | ||||
-rw-r--r-- | protocols/oscar/service.c | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/protocols/oscar/oscar.c b/protocols/oscar/oscar.c index f65332dc..d30ebbe8 100644 --- a/protocols/oscar/oscar.c +++ b/protocols/oscar/oscar.c @@ -361,6 +361,11 @@ static void oscar_acc_init(account_t *acc) s = set_add( &acc->set, "server", NULL, set_eval_account, acc ); s->flags |= ACC_SET_NOSAVE | ACC_SET_OFFLINE_ONLY; + + if (isdigit(acc->user[0])) { + s = set_add( &acc->set, "web_aware", "false", set_eval_bool, acc ); + s->flags |= ACC_SET_OFFLINE_ONLY; + } } static void oscar_login(account_t *acc) { diff --git a/protocols/oscar/service.c b/protocols/oscar/service.c index 4596974f..d55e0987 100644 --- a/protocols/oscar/service.c +++ b/protocols/oscar/service.c @@ -731,8 +731,12 @@ int aim_setextstatus(aim_session_t *sess, aim_conn_t *conn, guint32 status) aim_tlvlist_t *tl = NULL; guint32 data; int tlvlen; + struct gaim_connection *gc = sess ? sess->aux_data : NULL; data = AIM_ICQ_STATE_HIDEIP | status; /* yay for error checking ;^) */ + + if (gc && set_getbool(&gc->acc->set, "web_aware")) + data |= AIM_ICQ_STATE_WEBAWARE; tlvlen = aim_addtlvtochain32(&tl, 0x0006, data); |