#include "debug.h"#include "internal.h"#include "notify.h"#include "request.h"#include "utils.h"#include "packet_parse.h"#include "buddy_info.h"#include "buddy_list.h"#include "buddy_opt.h"#include "char_conv.h"#include "crypt.h"#include "header_info.h"#include "keep_alive.h"#include "im.h"#include "send_core.h"buddy_opt.c包含/依赖关系图:

数据结构 | |
| struct | _qq_add_buddy_request |
宏定义 | |
| #define | GAIM_GROUP_QQ_FORMAT "QQ (%s)" |
| #define | GAIM_GROUP_QQ_UNKNOWN "QQ Unknown" |
| #define | GAIM_GROUP_QQ_BLOCKED "QQ Blocked" |
| #define | QQ_REMOVE_BUDDY_REPLY_OK 0x00 |
| #define | QQ_REMOVE_SELF_REPLY_OK 0x00 |
| #define | QQ_ADD_BUDDY_AUTH_REPLY_OK 0x30 |
类型定义 | |
| typedef _qq_add_buddy_request | qq_add_buddy_request |
枚举 | |
| enum | { QQ_MY_AUTH_APPROVE = 0x30, QQ_MY_AUTH_REJECT = 0x31, QQ_MY_AUTH_REQUEST = 0x32 } |
函数 | |
| void | _qq_send_packet_remove_buddy (GaimConnection *gc, guint32 uid) |
| void | _qq_send_packet_remove_self_from (GaimConnection *gc, guint32 uid) |
| void | _qq_send_packet_add_buddy (GaimConnection *gc, guint32 uid) |
| void | _qq_send_packet_buddy_auth (GaimConnection *gc, guint32 uid, const gchar response, const gchar *text) |
| void | _qq_send_packet_add_buddy_auth_with_gc_and_uid (gc_and_uid *g, const gchar *text) |
| void | _qq_reject_add_request_real (gc_and_uid *g, const gchar *reason) |
| void | qq_approve_add_request_with_gc_and_uid (gc_and_uid *g) |
| void | qq_do_nothing_with_gc_and_uid (gc_and_uid *g, const gchar *msg) |
| void | qq_reject_add_request_with_gc_and_uid (gc_and_uid *g) |
| void | qq_add_buddy_with_gc_and_uid (gc_and_uid *g) |
| void | qq_block_buddy_with_gc_and_uid (gc_and_uid *g) |
| void | qq_process_add_buddy_auth_reply (guint8 *buf, gint buf_len, GaimConnection *gc) |
| void | qq_process_remove_buddy_reply (guint8 *buf, gint buf_len, GaimConnection *gc) |
| void | qq_process_remove_self_reply (guint8 *buf, gint buf_len, GaimConnection *gc) |
| void | qq_process_add_buddy_reply (guint8 *buf, gint buf_len, guint16 seq, GaimConnection *gc) |
| GaimGroup * | qq_get_gaim_group (const gchar *group_name) |
| GaimBuddy * | qq_add_buddy_by_recv_packet (GaimConnection *gc, guint32 uid, gboolean is_known, gboolean create) |
| void | qq_add_buddy (GaimConnection *gc, GaimBuddy *buddy, GaimGroup *group) |
| void | qq_remove_buddy (GaimConnection *gc, GaimBuddy *buddy, GaimGroup *group) |
| void | qq_add_buddy_request_free (qq_data *qd) |
| void | qq_buddies_list_free (qq_data *qd) |
|
|
在文件buddy_opt.c第44行定义。 |
|
|
The QQ2003C protocol plugin for gaim Copyright (C) 2004 Puzzlebird This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 在文件buddy_opt.c第42行定义。 |
|
|
在文件buddy_opt.c第43行定义。 |
|
|
在文件buddy_opt.c第48行定义。 |
|
|
在文件buddy_opt.c第46行定义。 |
|
|
在文件buddy_opt.c第47行定义。 |
|
|
|
|
|
在文件buddy_opt.c第50行定义。 |
|
||||||||||||
|
在文件buddy_opt.c第160行定义。 参考 _qq_send_packet_buddy_auth()、_gc_and_uid::gc、QQ_MY_AUTH_REJECT及_gc_and_uid::uid. 参考自 qq_reject_add_request_with_gc_and_uid(). 函数调用图: ![]() |
|
||||||||||||
|
||||||||||||
|
在文件buddy_opt.c第145行定义。 参考 _qq_send_packet_buddy_auth()、_gc_and_uid::gc、QQ_MY_AUTH_REQUEST及_gc_and_uid::uid. 参考自 qq_process_add_buddy_reply(). 函数调用图: ![]() |
|
||||||||||||||||||||
|
||||||||||||
|
在文件buddy_opt.c第63行定义。 参考 QQ_CMD_DEL_FRIEND及qq_send_cmd(). 参考自 qq_remove_buddy(). 函数调用图: ![]() |
|
||||||||||||
|
在文件buddy_opt.c第77行定义。 参考 create_packet_dw()、QQ_CMD_REMOVE_SELF及qq_send_cmd(). 参考自 qq_block_buddy_with_gc_and_uid(). 函数调用图: ![]() |
|
||||||||||||||||
|
在文件buddy_opt.c第507行定义。 参考 _qq_send_packet_add_buddy()、gaim_name_to_uid()及_qq_data::logged_in. 函数调用图: ![]() |
|
||||||||||||||||||||
|
|
在文件buddy_opt.c第568行定义。 参考 _qq_data::add_buddy_request. 参考自 _qq_common_clean(). |
|
|
|
|
在文件buddy_opt.c第245行定义。 参考 _qq_send_packet_remove_self_from()、GAIM_GROUP_QQ_BLOCKED、_gc_and_uid::gc、qq_remove_buddy()、_gc_and_uid::uid及uid_to_gaim_name(). 函数调用图: ![]() |
|
|
在文件buddy_opt.c第587行定义。 参考自 _qq_common_clean(). |
|
||||||||||||
|
在文件buddy_opt.c第193行定义。 参考自 _qq_group_join_auth()、_qq_menu_block_buddy()、qq_group_exit()、qq_group_process_create_group_reply()及qq_process_add_buddy_reply(). |
|
|
在文件buddy_opt.c第435行定义。 |
|
||||||||||||||||
|
在文件buddy_opt.c第268行定义。 参考 DECRYPT、QQ_ADD_BUDDY_AUTH_REPLY_OK、QQ_CHARSET_DEFAULT、qq_crypt()、qq_to_utf8()、read_packet_b()、_qq_data::session_key及split_data(). 参考自 _qq_packet_process(). 函数调用图: ![]() |
|
||||||||||||||||||||
|
||||||||||||||||
|
在文件buddy_opt.c第300行定义。 参考 DECRYPT、qq_crypt()、QQ_REMOVE_BUDDY_REPLY_OK、read_packet_b()及_qq_data::session_key. 参考自 _qq_packet_process(). 函数调用图: ![]() |
|
||||||||||||||||
|
在文件buddy_opt.c第330行定义。 参考 DECRYPT、qq_crypt()、QQ_REMOVE_SELF_REPLY_OK、read_packet_b()及_qq_data::session_key. 参考自 _qq_packet_process(). 函数调用图: ![]() |
|
|
在文件buddy_opt.c第200行定义。 参考 _qq_reject_add_request_real()、_gc_and_uid::gc及_gc_and_uid::uid. 参考自 _qq_process_msg_sys_add_contact_request()及_qq_search_before_auth_with_gc_and_uid(). 函数调用图: ![]() |
|
||||||||||||||||
|
在文件buddy_opt.c第533行定义。 参考 _qq_send_packet_remove_buddy()、_qq_data::buddies、GAIM_GROUP_QQ_BLOCKED、gaim_name_to_uid()及_qq_data::logged_in. 参考自 qq_block_buddy_with_gc_and_uid(). 函数调用图: ![]() |
1.4.4