Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

search.h

Go to the documentation of this file.
00001 /*
00002  * $Id: search.h,v 1.9 2005/11/15 21:21:42 rmanfredi Exp $
00003  *
00004  * Copyright (c) 2001-2003, Raphael Manfredi
00005  *
00006  *----------------------------------------------------------------------
00007  * This file is part of gtk-gnutella.
00008  *
00009  *  gtk-gnutella is free software; you can redistribute it and/or modify
00010  *  it under the terms of the GNU General Public License as published by
00011  *  the Free Software Foundation; either version 2 of the License, or
00012  *  (at your option) any later version.
00013  *
00014  *  gtk-gnutella is distributed in the hope that it will be useful,
00015  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00016  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017  *  GNU General Public License for more details.
00018  *
00019  *  You should have received a copy of the GNU General Public License
00020  *  along with gtk-gnutella; if not, write to the Free Software
00021  *  Foundation, Inc.:
00022  *      59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00023  *----------------------------------------------------------------------
00024  */
00025 
00036 #ifndef _core_search_h_
00037 #define _core_search_h_
00038 
00039 #include "nodes.h"
00040 
00041 /*
00042  * Special marking of the "connection speed" field in queries.
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  * Global Functions
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 /* _core_search_h_ */
00076 
00077 /* vi: set ts=4 sw=4 cindent: */

Generated on Sun Feb 12 10:49:57 2006 for Gtk-Gnutella by doxygen 1.3.6