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

vmsg.h

Go to the documentation of this file.
00001 /*
00002  * $Id: vmsg.h,v 1.11 2005/08/21 12:44:33 rmanfredi Exp $
00003  *
00004  * Copyright (c) 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_vmsg_h_
00037 #define _core_vmsg_h_
00038 
00039 #include <glib.h>
00040 
00041 #include "lib/tm.h"
00042 
00043 struct gnutella_node;
00044 struct pmsg;
00045 
00046 /*
00047  * Public interface
00048  */
00049 
00050 void vmsg_handle(struct gnutella_node *n);
00051 const gchar *vmsg_infostr(gconstpointer data, gint size);
00052 
00053 void vmsg_send_messages_supported(struct gnutella_node *n);
00054 void vmsg_send_hops_flow(struct gnutella_node *n, guint8 hops);
00055 void vmsg_send_tcp_connect_back(struct gnutella_node *n, guint16 port);
00056 void vmsg_send_udp_connect_back(struct gnutella_node *n, guint16 port);
00057 void vmsg_send_proxy_req(struct gnutella_node *n, const gchar *muid);
00058 void vmsg_send_qstat_req(struct gnutella_node *n, gchar *muid);
00059 void vmsg_send_qstat_answer(struct gnutella_node *n, gchar *muid, guint16 hits);
00060 void vmsg_send_proxy_cancel(struct gnutella_node *n);
00061 void vmsg_send_oob_reply_ack(struct gnutella_node *n, gchar *muid, guint8 want);
00062 void vmsg_send_time_sync_req(struct gnutella_node *n, gboolean ntp, tm_t *);
00063 void vmsg_send_time_sync_reply(struct gnutella_node *n, gboolean ntp, tm_t *);
00064 void vmsg_send_udp_crawler_pong(struct gnutella_node *n, struct pmsg *mb);
00065 
00066 struct pmsg *vmsg_build_oob_reply_ind(gchar *muid, guint8 hits);
00067 
00068 void vmsg_init(void);
00069 
00070 #endif  /* _core_vmsg_h_ */
00071 
00072 /* vi: set ts=4 sw=4 cindent: */

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