summaryrefslogtreecommitdiff
path: root/protocols/AimOscar/src/proto.h
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/AimOscar/src/proto.h')
-rwxr-xr-xprotocols/AimOscar/src/proto.h432
1 files changed, 0 insertions, 432 deletions
diff --git a/protocols/AimOscar/src/proto.h b/protocols/AimOscar/src/proto.h
deleted file mode 100755
index 3d6eb53414..0000000000
--- a/protocols/AimOscar/src/proto.h
+++ /dev/null
@@ -1,432 +0,0 @@
-/*
-Plugin of Miranda IM for communicating with users of the AIM protocol.
-Copyright (c) 2008-2012 Boris Krasnovskiy
-
-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, see <http://www.gnu.org/licenses/>.
-*/
-
-#ifndef _AIM_PROTO_H_
-#define _AIM_PROTO_H_
-
-struct CAimProto : public PROTO<CAimProto>
-{
- CAimProto(const char*, const wchar_t*);
- ~CAimProto();
-
- //====================================================================================
- // PROTO_INTERFACE
- //====================================================================================
-
- virtual MCONTACT __cdecl AddToList( int flags, PROTOSEARCHRESULT* psr );
-
- virtual int __cdecl AuthRequest(MCONTACT hContact, const wchar_t* szMessage );
-
- virtual HANDLE __cdecl FileAllow(MCONTACT hContact, HANDLE hTransfer, const wchar_t* szPath );
- virtual int __cdecl FileCancel(MCONTACT hContact, HANDLE hTransfer );
- virtual int __cdecl FileDeny(MCONTACT hContact, HANDLE hTransfer, const wchar_t* szReason );
- virtual int __cdecl FileResume( HANDLE hTransfer, int* action, const wchar_t** szFilename );
-
- virtual DWORD_PTR __cdecl GetCaps( int type, MCONTACT hContact = NULL );
-
- virtual HANDLE __cdecl SearchBasic( const wchar_t* id );
- virtual HANDLE __cdecl SearchByEmail( const wchar_t* email );
-
- virtual int __cdecl RecvMsg(MCONTACT hContact, PROTORECVEVENT* );
-
- virtual HANDLE __cdecl SendFile(MCONTACT hContact, const wchar_t* szDescription, wchar_t** ppszFiles);
- virtual int __cdecl SendMsg(MCONTACT hContact, int flags, const char* msg );
-
- virtual int __cdecl SetStatus( int iNewStatus );
-
- virtual HANDLE __cdecl GetAwayMsg(MCONTACT hContact );
- virtual int __cdecl RecvAwayMsg(MCONTACT hContact, int mode, PROTORECVEVENT* evt );
- virtual int __cdecl SetAwayMsg( int m_iStatus, const wchar_t* msg );
-
- virtual int __cdecl UserIsTyping(MCONTACT hContact, int type );
-
- virtual int __cdecl OnEvent( PROTOEVENTTYPE eventType, WPARAM wParam, LPARAM lParam );
-
- //====| Services |====================================================================
- INT_PTR __cdecl SvcCreateAccMgrUI(WPARAM wParam, LPARAM lParam);
-
- INT_PTR __cdecl GetAvatarInfo(WPARAM wParam, LPARAM lParam);
- INT_PTR __cdecl GetMyAwayMsg(WPARAM wParam,LPARAM lParam);
-
- INT_PTR __cdecl GetAvatar(WPARAM wParam, LPARAM lParam);
- INT_PTR __cdecl SetAvatar(WPARAM wParam, LPARAM lParam);
- INT_PTR __cdecl GetAvatarCaps(WPARAM wParam, LPARAM lParam);
-
- INT_PTR __cdecl ManageAccount(WPARAM wParam, LPARAM lParam);
- INT_PTR __cdecl InstantIdle(WPARAM wParam, LPARAM lParam);
- INT_PTR __cdecl JoinChatUI(WPARAM wParam, LPARAM lParam);
- INT_PTR __cdecl GetHTMLAwayMsg(WPARAM wParam, LPARAM lParam);
- INT_PTR __cdecl GetProfile(WPARAM wParam, LPARAM lParam);
- INT_PTR __cdecl EditProfile(WPARAM wParam, LPARAM lParam);
- INT_PTR __cdecl AddToServerList(WPARAM wParam, LPARAM lParam);
- INT_PTR __cdecl BlockBuddy(WPARAM wParam, LPARAM lParam);
-
- INT_PTR __cdecl OnJoinChat(WPARAM wParam, LPARAM lParam);
- INT_PTR __cdecl OnLeaveChat(WPARAM wParam, LPARAM lParam);
-
- //====| Events |======================================================================
- int __cdecl OnContactDeleted(WPARAM wParam,LPARAM lParam);
- int __cdecl OnGroupChange(WPARAM wParam,LPARAM lParam);
- int __cdecl OnIdleChanged(WPARAM wParam, LPARAM lParam);
- int __cdecl OnWindowEvent(WPARAM wParam, LPARAM lParam);
- int __cdecl OnModulesLoaded( WPARAM wParam, LPARAM lParam );
- int __cdecl OnOptionsInit(WPARAM wParam,LPARAM lParam);
- int __cdecl OnPreBuildContactMenu(WPARAM wParam,LPARAM lParam);
-// int __cdecl OnPreShutdown(WPARAM wParam,LPARAM lParam);
- int __cdecl OnDbSettingChanged(WPARAM wParam,LPARAM lParam);
- int __cdecl OnUserInfoInit(WPARAM wParam,LPARAM lParam);
- int __cdecl OnGCEvent(WPARAM wParam,LPARAM lParam);
- int __cdecl OnGCMenuHook(WPARAM wParam,LPARAM lParam);
-
- //====| Data |========================================================================
- mir_cs SendingMutex;
- mir_cs connMutex;
-
- char* COOKIE;
- size_t COOKIE_LENGTH;
- char* MAIL_COOKIE;
- int MAIL_COOKIE_LENGTH;
- char* AVATAR_COOKIE;
- int AVATAR_COOKIE_LENGTH;
- char* CHATNAV_COOKIE;
- int CHATNAV_COOKIE_LENGTH;
- char* ADMIN_COOKIE;
- int ADMIN_COOKIE_LENGTH;
-
- char *m_username;
- unsigned short m_seqno;//main connection sequence number
- int m_state;//m_iStatus of the connection; e.g. whether connected or not
- unsigned short m_port;
-
- //Some bools to keep track of different things
- bool m_request_HTML_profile;
- bool m_request_away_message;
- bool m_extra_icons_loaded;
- bool m_idle;
- bool m_instantidle;
- bool m_list_received;
-
- //Some main connection stuff
- HNETLIBCONN m_hServerConn; // handle to the main connection
-
- unsigned long m_internal_ip; // our ip
- unsigned long m_detected_ip; // our ip
- unsigned short m_local_port; // our port
-
- //Peer connection stuff
- HNETLIBUSER m_hNetlibPeer;//handle to the peer netlib
- HANDLE m_hDirectBoundPort;//direct connection listening port
-
- //Handles for the context menu items
- HGENMENU m_hHTMLAwayContextMenuItem;
- HGENMENU m_hAddToServerListContextMenuItem;
- HGENMENU m_hBlockContextMenuItem;
- HGENMENU m_hMainMenu[3];
-
- //Some mail connection stuff
- HNETLIBCONN m_hMailConn;
- unsigned short m_mail_seqno;
-
- //avatar connection stuff
- unsigned short m_avatar_seqno;
- unsigned short m_avatar_id_sm;
- unsigned short m_avatar_id_lg;
- HNETLIBCONN m_hAvatarConn;
- HANDLE m_hAvatarEvent;
-
- ft_list_type m_ft_list;
-
- //chatnav connection stuff
- unsigned short m_chatnav_seqno;
- HNETLIBCONN m_hChatNavConn;
- HANDLE m_hChatNavEvent;
- char MAX_ROOMS;
-
- OBJLIST<chat_list_item> m_chat_rooms;
-
- //admin connection stuff
- unsigned short m_admin_seqno;
- HNETLIBCONN m_hAdminConn;
- HANDLE m_hAdminEvent;
-
- // privacy settings
- unsigned long m_pd_flags;
- unsigned short m_pd_info_id;
- char m_pd_mode;
-
- // prefernces
- unsigned short m_pref1_id;
- unsigned long m_pref1_flags;
- unsigned long m_pref1_set_flags;
- unsigned long m_pref2_len;
- unsigned long m_pref2_set_len;
- char *m_pref2_flags;
- char *m_pref2_set_flags;
-
- BdList m_allow_list;
- BdList m_block_list;
- BdList m_group_list;
-
- //away message retrieval stuff
- char *m_modeMsgs[9];
- char *m_last_status_msg;
-
- //////////////////////////////////////////////////////////////////////////////////////
- // avatars.cpp
-
- char *m_hash_sm, *m_hash_lg;
-
- void __cdecl avatar_request_thread( void* param );
- void __cdecl avatar_upload_thread( void* param );
-
- void avatar_request_handler(MCONTACT hContact, char* hash, unsigned char type);
- void avatar_retrieval_handler(const char* sn, const char* hash, const char* data, int data_len);
- int get_avatar_filename(MCONTACT hContact, wchar_t* pszDest, size_t cbLen, const wchar_t *ext);
-
- //////////////////////////////////////////////////////////////////////////////////////
- // away.cpp
-
- void __cdecl get_online_msg_thread( void* arg );
-
- int aim_set_away(HNETLIBCONN hServerConn, unsigned short &seqno, const char *msg, bool set);//user info
- int aim_set_statusmsg(HNETLIBCONN hServerConn,unsigned short &seqno,const char *msg);//user info
- int aim_set_status(HNETLIBCONN hServerConn,unsigned short &seqno,unsigned long status_type);
- int aim_query_away_message(HNETLIBCONN hServerConn,unsigned short &seqno,const char* sn);
-
- char** get_status_msg_loc(int status);
-
- //////////////////////////////////////////////////////////////////////////////////////
- // chat.cpp
-
- void __cdecl chatnav_request_thread( void* param );
-
- void chat_register(void);
- void chat_start(const char* id, unsigned short exchange);
- void chat_event(const char* id, const char* sn, int evt, const wchar_t* msg = NULL);
- void chat_leave(const char* id);
-
- chat_list_item* find_chat_by_cid(unsigned short cid);
- chat_list_item* find_chat_by_id(char* id);
- chat_list_item* find_chat_by_conn(HANDLE conn);
- void remove_chat_by_ptr(chat_list_item* item);
- void shutdown_chat_conn(void);
- void close_chat_conn(void);
-
- //////////////////////////////////////////////////////////////////////////////////////
- // client.cpp
-
- int aim_send_connection_packet(HNETLIBCONN hServerConn, unsigned short &seqno, char *buf);
- int aim_authkey_request(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_auth_request(HNETLIBCONN hServerConn, unsigned short &seqno, const char* key, const char* language, const char* country, const char* username, const char* password);
- int aim_send_cookie(HNETLIBCONN hServerConn, unsigned short &seqno, int cookie_size, char * cookie);
- int aim_send_service_request(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_new_service_request(HNETLIBCONN hServerConn, unsigned short &seqno, unsigned short service);
- int aim_request_rates(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_request_icbm(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_request_offline_msgs(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_set_icbm(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_set_profile(HNETLIBCONN hServerConn, unsigned short &seqno, char* amsg);//user info
- int aim_request_list(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_activate_list(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_accept_rates(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_set_caps(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_client_ready(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_mail_ready(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_avatar_ready(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_chatnav_ready(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_chat_ready(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_send_message(HNETLIBCONN hServerConn, unsigned short &seqno, const char* sn, char* amsg, bool auto_response, bool blast);
- int aim_query_profile(HNETLIBCONN hServerConn, unsigned short &seqno, char* sn);
- int aim_delete_contact(HNETLIBCONN hServerConn, unsigned short &seqno, char* sn, unsigned short item_id, unsigned short group_id, unsigned short list, bool nil);
- int aim_add_contact(HNETLIBCONN hServerConn, unsigned short &seqno, const char* sn, unsigned short item_id, unsigned short group_id, unsigned short list, char* nick = NULL, char* note = NULL);
- int aim_mod_group(HNETLIBCONN hServerConn, unsigned short &seqno, const char* name, unsigned short group_id, char* members, unsigned short members_length);
- int aim_mod_buddy(HNETLIBCONN hServerConn, unsigned short &seqno, const char* sn, unsigned short buddy_id, unsigned short group_id, char* nick, char* note);
- int aim_ssi_update(HNETLIBCONN hServerConn, unsigned short &seqno, bool start);
- int aim_ssi_update_preferences(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_keepalive(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_send_file(HNETLIBCONN hServerConn, unsigned short &seqno, unsigned long ip, unsigned short port, bool force_proxy, file_transfer *ft);//used when requesting a regular file transfer
- int aim_file_ad(HNETLIBCONN hServerConn, unsigned short &seqno, char* sn, char* icbm_cookie, bool deny, unsigned short max_ver);
- int aim_typing_notification(HNETLIBCONN hServerConn, unsigned short &seqno, char* sn, unsigned short type);
- int aim_set_idle(HNETLIBCONN hServerConn, unsigned short &seqno, unsigned long seconds);
- int aim_request_mail(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_activate_mail(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_request_avatar(HNETLIBCONN hServerConn, unsigned short &seqno, const char* sn, unsigned short bart_type, const char* hash, unsigned short hash_size);//family 0x0010
- int aim_set_avatar_hash(HNETLIBCONN hServerConn, unsigned short &seqno, char flags, unsigned short bart_type, unsigned short &id, char size, const char* hash);
- int aim_delete_avatar_hash(HNETLIBCONN hServerConn, unsigned short &seqno, char flags, unsigned short bart_type, unsigned short &id);
- int aim_upload_avatar(HNETLIBCONN hServerConn, unsigned short &seqno, unsigned short bart_type, const char* avatar, unsigned short avatar_size);
- int aim_search_by_email(HNETLIBCONN hServerConn, unsigned short &seqno, const char* email);
- int aim_set_pd_info(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_block_buddy(HNETLIBCONN hServerConn, unsigned short &seqno, bool remove, const char* sn, unsigned short item_id);
- int aim_chatnav_request_limits(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_chatnav_create(HNETLIBCONN hServerConn, unsigned short &seqno, char* room, unsigned short exchage);
- int aim_chatnav_room_info(HNETLIBCONN hServerConn, unsigned short &seqno, char* chat_cookie, unsigned short exchange, unsigned short instance);
- int aim_chat_join_room(HNETLIBCONN hServerConn, unsigned short &seqno, char* chat_cookie, unsigned short exchange, unsigned short instance, unsigned short id);
- int aim_chat_send_message(HNETLIBCONN hServerConn, unsigned short &seqno, char *amsg);
- int aim_chat_invite(HNETLIBCONN hServerConn, unsigned short &seqno, char* chat_cookie, unsigned short exchange, unsigned short instance, char* sn, char* msg);
- int aim_chat_deny(HNETLIBCONN hServerConn, unsigned short &seqno, char* sn, char* icbm_cookie);
- int aim_admin_ready(HNETLIBCONN hServerConn, unsigned short &seqno);
- int aim_admin_format_name(HNETLIBCONN hServerConn, unsigned short &seqno, const char* sn);
- int aim_admin_change_password(HNETLIBCONN hServerConn, unsigned short &seqno, const char* cur_pw, const char* new_pw);
- int aim_admin_change_email(HNETLIBCONN hServerConn, unsigned short &seqno, const char* email);
- int aim_admin_request_info(HNETLIBCONN hServerConn, unsigned short &seqno, const unsigned short &type);
- int aim_admin_account_confirm(HNETLIBCONN hServerConn, unsigned short &seqno);
-
- //////////////////////////////////////////////////////////////////////////////////////
- // connection.cpp
-
- void aim_connection_authorization(void);
- void aim_connection_clientlogin(void);
-
- void __cdecl aim_protocol_negotiation(void*);
- void __cdecl aim_mail_negotiation(void*);
- void __cdecl aim_avatar_negotiation(void*);
- void __cdecl aim_chatnav_negotiation(void*);
- void __cdecl aim_chat_negotiation(void*);
- void __cdecl aim_admin_negotiation(void*);
-
- HNETLIBCONN aim_connect(const char* server, unsigned short port, bool use_ssl, const char* host = NULL);
- HNETLIBCONN aim_peer_connect(const char* ip, unsigned short port);
- HNETLIBCONN aim_peer_connect(unsigned long ip, unsigned short port);
-
- //////////////////////////////////////////////////////////////////////////////////////
- // direct_connect.cpp
-
- void __cdecl aim_dc_helper( void* );
-
- //////////////////////////////////////////////////////////////////////////////////////
- // error.cpp
-
- void login_error(unsigned short error);
- void get_error(unsigned short error);
- void admin_error(unsigned short error);
-
- //////////////////////////////////////////////////////////////////////////////////////
- // file.cpp
-
- int sending_file(file_transfer *ft, HANDLE hServerPacketRecver, NETLIBPACKETRECVER &packetRecv);
- int receiving_file(file_transfer *ft, HANDLE hServerPacketRecver, NETLIBPACKETRECVER &packetRecv);
- void report_file_error(wchar_t* fname);
- void shutdown_file_transfers(void);
-
- //////////////////////////////////////////////////////////////////////////////////////
- // packets.cpp
-
- int aim_sendflap(HNETLIBCONN conn, char type, unsigned short length, const char *buf, unsigned short &seqno);
-
- //////////////////////////////////////////////////////////////////////////////////////
- // proto.cpp
-
- void __cdecl basic_search_ack_success( void* p );
- void __cdecl email_search_ack_success( void* p );
-
- //////////////////////////////////////////////////////////////////////////////////////
- // proxy.cpp
-
- void __cdecl aim_proxy_helper( void* );
-
- //////////////////////////////////////////////////////////////////////////////////////
- // server.cpp
-
- void snac_md5_authkey(SNAC &snac,HNETLIBCONN hServerConn,unsigned short &seqno, const char* username, const char* password);
- int snac_authorization_reply(SNAC &snac);
- void snac_supported_families(SNAC &snac, HNETLIBCONN hServerConn,unsigned short &seqno);
- void snac_supported_family_versions(SNAC &snac,HNETLIBCONN hServerConn,unsigned short &seqno);//family 0x0001
- void snac_rate_limitations(SNAC &snac,HNETLIBCONN hServerConn,unsigned short &seqno);//family 0x0001
- void snac_mail_rate_limitations(SNAC &snac,HNETLIBCONN hServerConn,unsigned short &seqno);// family 0x0001
- void snac_avatar_rate_limitations(SNAC &snac,HNETLIBCONN hServerConn,unsigned short &seqno);// family 0x0001
- void snac_chatnav_rate_limitations(SNAC &snac,HNETLIBCONN hServerConn,unsigned short &seqno);// family 0x0001
- void snac_chat_rate_limitations(SNAC &snac,HNETLIBCONN hServerConn,unsigned short &seqno);// family 0x0001
- void snac_admin_rate_limitations(SNAC &snac,HNETLIBCONN hServerConn,unsigned short &seqno);// family 0x0001
- void snac_service_redirect(SNAC &snac);// family 0x0001
- void snac_self_info(SNAC &snac);//family 0x0001
- void snac_icbm_limitations(SNAC &snac,HNETLIBCONN hServerConn,unsigned short &seqno);//family 0x0004
- void snac_user_online(SNAC &snac);
- void snac_user_offline(SNAC &snac);
- void snac_error(SNAC &snac);//family 0x0003 or x0004
- void snac_contact_list(SNAC &snac,HNETLIBCONN hServerConn,unsigned short &seqno);
- void snac_message_accepted(SNAC &snac);//family 0x004
- void snac_received_message(SNAC &snac,HNETLIBCONN hServerConn,unsigned short &seqno);//family 0x0004
- void snac_file_decline(SNAC &snac);//family 0x0004
- void snac_received_info(SNAC &snac);//family 0x0002
- void snac_typing_notification(SNAC &snac);//family 0x004
- void snac_list_modification_ack(SNAC &snac);//family 0x0013
- void snac_mail_response(SNAC &snac);//family 0x0018
- void snac_retrieve_avatar(SNAC &snac);//family 0x0010
- void snac_upload_reply_avatar(SNAC &snac);//family 0x0010
- void snac_email_search_results(SNAC &snac);//family 0x000A
- void snac_chatnav_info_response(SNAC &snac,HNETLIBCONN hServerConn,unsigned short &seqno);//family 0x000D
- void snac_chat_joined_left_users(SNAC &snac,chat_list_item* item);//family 0x000E
- void snac_chat_received_message(SNAC &snac,chat_list_item* item);//family 0x000E
- void snac_admin_account_infomod(SNAC &snac);//family 0x0007
- void snac_admin_account_confirm(SNAC &snac);//family 0x0007
-
- void process_ssi_list(SNAC &snac, int &offset);
- void modify_ssi_list(SNAC &snac, int &offset);
- void delete_ssi_list(SNAC &snac, int &offset);
-
- //////////////////////////////////////////////////////////////////////////////////////
- // themes.cpp
-
- void InitMainMenus(void);
- void InitContactMenus(void);
-
- //////////////////////////////////////////////////////////////////////////////////////
- // thread.cpp
-
- void __cdecl accept_file_thread( void* );
-
- //////////////////////////////////////////////////////////////////////////////////////
- // utilities.cpp
-
- struct msg_ack_param { MCONTACT hContact; const char *msg; int id; bool success; };
-
- void __cdecl msg_ack_success(void*);
- void __cdecl start_connection(void*);
-
- MCONTACT find_chat_contact(const char * room);
- MCONTACT contact_from_sn(const char* sn, bool addIfNeeded = false, bool temporary = false);
-
- void broadcast_status(int status);
- bool wait_conn(HNETLIBCONN& hConn, HANDLE& hEvent, unsigned short service);
- bool is_my_contact(MCONTACT hContact);
- void add_contact_to_group(MCONTACT hContact, const char* group);
- void set_local_nick(MCONTACT hContact, char* nick, char* note);
- void upload_nicks(void);
- void update_server_group(const char* group, unsigned short group_id);
- void offline_contacts(void);
- void offline_contact(MCONTACT hContact, bool remove_settings);
- unsigned short get_default_port(void);
-
- int open_contact_file(const char* sn, const wchar_t* file, const char* mode, wchar_t* &path, bool contact_dir);
- void write_away_message(const char* sn, const char* msg, bool utf);
- void write_profile(const char* sn, const char* msg, bool utf);
-
- unsigned short getBuddyId(MCONTACT hContact, int i);
- unsigned short getGroupId(MCONTACT hContact, int i);
- void setBuddyId(MCONTACT hContact, int i, unsigned short id);
- void setGroupId(MCONTACT hContact, int i, unsigned short id);
- int deleteBuddyId(MCONTACT hContact, int i);
- int deleteGroupId(MCONTACT hContact, int i);
-
- unsigned short search_for_free_item_id(MCONTACT hbuddy);
- unsigned short* get_members_of_group(unsigned short group_id, unsigned short& size);
-
- void ShowPopup( const char* msg, int flags, char* url = 0 );
-};
-
-#endif