00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00036 #ifndef _core_search_h_
00037 #define _core_search_h_
00038
00039 #include "nodes.h"
00040
00041
00042
00043
00044
00045 #define QUERY_SPEED_MARK 0x0080
00046 #define QUERY_SPEED_FIREWALLED 0x0040
00047 #define QUERY_SPEED_NO_XML 0x0020
00048 #define QUERY_SPEED_LEAF_GUIDED 0x0010
00049 #define QUERY_SPEED_GGEP_H 0x0008
00050 #define QUERY_SPEED_OOB_REPLY 0x0004
00051 #define QUERY_SPEED_FW_TO_FW 0x0002
00053 #define QUERY_FW2FW_FILE_INDEX 0x7FFFFFFD
00055
00056
00057
00058
00059 void search_init(void);
00060 void search_shutdown(void);
00061
00062 gboolean search_results(gnutella_node_t *n, gint *results);
00063 gboolean search_query_allowed(gnet_search_t sh);
00064 guint32 search_get_id(gnet_search_t sh, gpointer *search);
00065 void search_notify_sent(gpointer search, guint32 id, guint32 node_id);
00066 void search_add_kept(gnet_search_t sh, guint32 kept);
00067 gboolean search_get_kept_results(gchar *muid, guint32 *kept);
00068 guint32 search_get_kept_results_by_handle(gnet_search_t sh);
00069 void search_oob_pending_results(
00070 gnutella_node_t *n, gchar *muid, gint hits, gboolean udp_firewalled);
00071
00072 void search_dissociate_browse(gnet_search_t sh, gpointer download);
00073 void search_browse_results(gnutella_node_t *n, gnet_search_t sh);
00074
00075 #endif
00076
00077