?? common.h
字號:
#ifndef COMMON_H#define COMMON_H#include <stdlib.h>#include <sys/types.h>#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h>#include <glib.h>#include <gnome.h>#include <syslog.h>#ifdef HAVE_CONFIG_H# include <config.h>#endif#include "ipmsg.h"//#define #include "udp.h"#include "message.h"#include "userdb.h"#include "hostinfo.h"#include "msginfo.h"#include "logfile.h"#include "menu.h"#include "fileattach.h"#include "tcp.h"#include "netcommon.h"#include "fuzai.h"#include "copying.h"#include "uicommon.h"#include "sound.h"extern udp_con_t *udp_con;#define IPMSG_COMMON_MAX_RETRY (20)#define MSG_WATCH_INTERVAL (500)#define IPMG_LOCK_FILE "/tmp/g2ipmsg.lock"#define IPMSG_KEY_BTN_CHATTER_MS (300)//#define DEBUG 1#if defined(DEBUG)#define dbg_out(fmt,arg...) do{ \ fprintf(stderr, "[file:%s function: %s line:%d ] " fmt,__FILE__,__FUNCTION__,__LINE__,##arg); \ syslog(LOG_INFO|LOG_USER, "[file:%s function: %s line:%d ] " fmt,__FILE__,__FUNCTION__,__LINE__,##arg); \ fflush(stderr); \ }while(0)#else#define dbg_out(fmt,arg...) do{ \ if (hostinfo_refer_debug_state()){ \ fprintf(stderr, "[file:%s function: %s line:%d ] " fmt,__FILE__,__FUNCTION__,__LINE__,##arg); \ syslog(LOG_INFO|LOG_USER, "[file:%s function: %s line:%d ] " fmt,__FILE__,__FUNCTION__,__LINE__,##arg); \ fflush(stderr); \ } \ }while(0) #endif#define war_out(fmt,arg...) do{ \ fprintf(stderr, "Warning : [file:%s line:%d ] " fmt,__FILE__,__LINE__,##arg); \ fflush(stderr); \ syslog(LOG_WARNING|LOG_USER, "[file:%s function: %s line:%d ] " fmt,__FILE__,__FUNCTION__,__LINE__,##arg); \ }while(0)#define err_out(fmt,arg...) do{ \ fprintf(stderr, "Error : [file:%s line:%d ] " fmt,__FILE__,__LINE__,##arg); \ fflush(stderr); \ syslog(LOG_ERR|LOG_USER, "[file:%s function: %s line:%d ] " fmt,__FILE__,__FUNCTION__,__LINE__,##arg); \ }while(0)#define _assert(cond) do{ \ if (!(cond)) { \ fprintf(stderr, "Assertion : [file:%s line:%d ]\n",__FILE__,__LINE__); \ fflush(stderr); \ abort(); \ } \ }while(0)#define IPMSG_BUFSIZ 0x1000#define _MSG_BUF_SIZE 65536#define _MSG_BUF_MIN_SIZE ((_MSG_BUF_SIZE)/2)#define G2IPMSG_DEFAULT_ENTRY_FLAGS (IPMSG_FILEATTACHOPT)#define G2IPMSG_DEFAULT_HOST_LIST_LEN 1#define IPMSG_PRIVATE_DATA_MAGIC 0x19731219#define IPMSG_PRIVATE_NO_TYPE 0#define IPMSG_PRIVATE_RECVMSG 1#define IPMSG_PRIVATE_AFCB 2typedef struct _ipmsg_private_data{ int magic; int type; void *data;}ipmsg_private_data_t;typedef struct _ipmsg_recvmsg_private{ char *ipaddr; int pktno; int flags; char *ext_part;}ipmsg_recvmsg_private_t;#define IPMSG_ASSERT_PRIVATE(private,ptype) do{ \ g_assert((private)); \ g_assert((private)->magic == IPMSG_PRIVATE_DATA_MAGIC); \ g_assert((private)->type == (ptype)); \ }while(0)#define IPMSG_HOOKUP_DATA(component,data_p,name) \ g_object_set_data_full (G_OBJECT (component), name, \ data_p, (GDestroyNotify) destroy_ipmsg_private)int init_ipmsg(void);void cleanup_ipmsg(void);long ipmsg_get_pkt_no(void);int internal_extend_memory(void **buff_p,size_t new_size,size_t orig_size,gboolean is_clear);int init_ipmsg_private(ipmsg_private_data_t **priv,const int type);void destroy_ipmsg_private(gpointer data);int ipmsg_send_release_files(const udp_con_t *con,const char *ipaddr,int pktno);int ipmsg_send_br_isgetlist2(const udp_con_t *con,const int flags);int ipmsg_send_br_entry(const udp_con_t *con,const int flags);int ipmsg_send_ans_entry(const udp_con_t *con,const int flags);int ipmsg_send_br_exit(const udp_con_t *con,const int flags);int ipmsg_proc_br_absence(const udp_con_t *con,const msg_data_t *msg);int ipmsg_send_br_absence(const udp_con_t *con,const int flags);int ipmsg_send_recv_msg(const udp_con_t *con,const msg_data_t *orig_msg);int ipmsg_send_read_msg(const udp_con_t *con,const char *ipaddr,int pktno);int ipmsg_send_send_msg(const udp_con_t *con,const char *ipaddr,int flags,int pktno,const char *message,const char *ext_part);int ipmsg_dispatch_message(const udp_con_t *con,const msg_data_t *msg);int ipmsg_construct_getfile_message(const char *msg_string,int flags,size_t *len,char **msg,long pktno);int ipmsg_send_broad_cast(const udp_con_t *con,const char *msg,size_t len);int convert_string_internal(const char *string,const gchar **to_string);int convert_string_ipmsg_proto(const char *string,const gchar **to_string);int convert_string_ipmsg_locale(const char *string,const gchar **to_string);int convert_string_ipmsg_filename(const char *string,const gchar **to_string);void recv_message_window(const msg_data_t *msg,const char *senderAddr);void store_message_window(const msg_data_t *msg,const char *senderAddr);void read_message_dialog(const gchar *user,const gchar *ipaddr, long time);gboolean recv_windows_are_stored(void);void show_stored_windows(void);int start_message_watcher(GtkWidget *init_win);int cleanup_message_watcher(void);void update_one_group_entry(gpointer data,GtkComboBox *user_data);int append_opened_window(GtkWidget *window);int destroy_all_opened_windows(void);int remove_window_from_openlist(GtkWidget *window);int append_displayed_window(GtkWidget *window);int remove_window_from_displaylist(GtkWidget *window);void present_all_displayed_windows(void);void ipmsg_show_about_dialog(void);gboolean on_init_win_event_button_press_event (GtkWidget *widget, GdkEventButton *event, gpointer user_data);void update_download_view(GtkWidget *window);void update_download_monitor_button(GtkTreeSelection *sel);int create_lock_file(void);int release_lock_file(void);#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -