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

gnutella_node Struct Reference

#include <nodes.h>


Data Fields

node_magic_t magic
 Magic value for consistency checks.
node_peer_t peermode
 Operating mode (leaf, ultra, normal).
node_peer_t start_peermode
 Operating mode when handshaking begun.
gchar error_str [256]
 To sprintf() error strings with vars.
gnutella_socketsocket
 Socket of the node.
guint16 country
 Country of origin -- encoded ISO3166.
guint8 proto_major
 Handshaking protocol major number.
guint8 proto_minor
 Handshaking protocol minor number.
guint8 qrp_major
 Query routing protocol major number.
guint8 qrp_minor
 Query routing protocol minor number.
guint8 uqrp_major
 UP Query routing protocol major number.
guint8 uqrp_minor
 UP Query routing protocol minor number.
const gchar * vendor
 Vendor information (always UTF-8).
vendor_code_t vcode
 Vendor code (vcode.u32 == 0 if unknown).
gpointer io_opaque
 Opaque I/O callback information.
gnutella_header_t header
 Header of the current message.
extvec_t extvec [MAX_EXTVEC]
 GGEP extensions in "fat" messages.
gint extcount
 Amount of extensions held.
guint16 size
 How many bytes we need to read for the current message.
guint16 header_flags
 Header flags (new message architecture).
gchar * data
 data of the current message
guint32 pos
 write position in data
gnet_node_state_t status
 See possible values below.
guint32 flags
 See possible values below.
guint32 attrs
 See possible values below.
guint8 hops_flow
 Don't send queries with a >= hop count.
guint8 max_ttl
 Value of their advertised X-Max-TTL.
guint16 degree
 Value of their advertised X-Degree.
GHashTable * qseen
 Queries seen from this leaf node.
GHashTable * qrelayed
 Queries relayed from this node.
GHashTable * qrelayed_old
 Older version of the `qrelayed' table.
time_t qrelayed_created
 When `qrelayed' was created.
guint32 sent
 Number of sent packets.
guint32 received
 Number of received packets.
guint32 tx_dropped
 Number of packets dropped at TX time.
guint32 rx_dropped
 Number of packets dropped at RX time.
guint32 n_bad
 Number of bad packets received.
guint16 n_dups
 Number of dup messages received (bad).
guint16 n_hard_ttl
 Number of hard_ttl exceeded (bad).
guint32 n_weird
 Number of weird messages from that node.
guint32 n_hostile
 Number of messages from hostile IP.
guint32 n_spam
 Number of messages rated as spam.
guint32 n_evil
 Number of messages with evil filenames.
guint32 allocated
 Size of allocated buffer data, 0 for none.
gboolean have_header
 TRUE if we have got a full message header.
time_t last_update
 Last update of the node.
time_t last_tx
 Last time we transmitted to the node.
time_t last_rx
 Last time we received from the node.
time_t connect_date
 When we got connected (after handshake).
time_t tx_flowc_date
 When we entered in TX flow control.
node_rxfc_monrxfc
 Optional, time spent in RX flow control.
time_t shutdown_date
 When we entered in shutdown mode.
time_t up_date
 When remote server started (0 if unknown).
time_t leaf_flowc_start
 Time when leaf flow-controlled queries.
time_delta_t shutdown_delay
 How long we can stay in shutdown mode.
const gchar * remove_msg
 Reason of removing.
host_addr_t addr
 ip of the node
guint16 port
 port of the node
host_addr_t proxy_addr
 ip of the node for push proxyfication
guint16 proxy_port
 port of the node for push proxyfication
mqueue_toutq
 TX Output queue.
squeue_tsearchq
 TX Search queue.
rxdrv_trx
 RX stack top.
route_datarouting_data
 for gnet message routing
routing_tablesent_query_table
 query table sent to node
routing_tablerecv_query_table
 query table recved from node
qrt_updateqrt_update
 query routing update handle
qrt_receiveqrt_receive
 query routing reception
qrt_info_tqrt_info
 Info about received query table.
gpointer alive_pings
 Opaque info, for alive ping checks.
time_t last_alive_ping
 Last time we sent an alive ping.
time_delta_t alive_period
 Period for sending alive pings (secs).
wrap_buf_t hello
 Spill buffer for GNUTELLA HELLO.
guint32 tcp_rtt
 RTT when exchange takes place over TCP.
guint32 udp_rtt
 RTT when exchange takes place over UDP.
cevent_ttsync_ev
 Time sync event.
node_id_t id
 Unique internal ID.
guint ping_throttle
 Period for accepting new pings (secs).
time_t ping_accept
 Time after which we accept new pings.
time_t next_ping
 When to send a ping, for "OLD" clients.
gchar ping_guid [GUID_RAW_SIZE]
 The GUID of the last accepted ping.
guchar pong_needed [MAX_CACHE_HOPS+1]
 Pongs needed, by hop value.
guchar pong_missing
 Sum(pong_needed[i]), i = 0..MAX_CACHE_HOPS.
host_addr_t gnet_addr
 When != 0, we know the remote IP/port.
guint16 gnet_port
 (listening port, that is )
guint32 gnet_files_count
 Used to answer "Crawling" pings.
guint32 gnet_kbytes_count
 Used to answer "Crawling" pings.
host_addr_t gnet_pong_addr
 When != 0, last IP we got in pong.
host_addr_t gnet_qhit_addr
 When != 0, last IP we got in query hit.
const gchar * guid
 GUID of node (atom) seen on the network.
guint32 n_ping_throttle
 Number of pings we throttled.
guint32 n_ping_accepted
 Number of pings we accepted.
guint32 n_ping_special
 Number of special pings we received.
guint32 n_ping_sent
 Number of pings we sent to this node.
guint32 n_pong_received
 Number of pongs we received from this node.
guint32 n_pong_sent
 Number of pongs we sent to this node.
gint32 tx_given
 Bytes fed to the TX stack (from top).
gint32 tx_deflated
 Bytes deflated by the TX stack.
gint32 tx_written
 Bytes written by the TX stack.
gint32 rx_given
 Bytes fed to the RX stack (from bottom).
gint32 rx_inflated
 Bytes inflated by the RX stack.
gint32 rx_read
 Bytes read from the RX stack.
guint32 qrp_queries
 Queries received under QRP control.
guint32 qrp_matches
 Queries received that incurred a match.
guint32 rx_queries
 Total amount of queries received.
guint32 tx_queries
 Total amount of queries sent.
guint32 rx_qhits
 Total amount of hits received.
guint32 tx_qhits
 Total amount of hits sent.
hsep_ctx_t * hsep
 Horizon size estimation (HSEP) -- TSC, 11/02/2004.


Field Documentation

host_addr_t gnutella_node::addr
 

ip of the node

time_delta_t gnutella_node::alive_period
 

Period for sending alive pings (secs).

gpointer gnutella_node::alive_pings
 

Opaque info, for alive ping checks.

guint32 gnutella_node::allocated
 

Size of allocated buffer data, 0 for none.

guint32 gnutella_node::attrs
 

See possible values below.

time_t gnutella_node::connect_date
 

When we got connected (after handshake).

guint16 gnutella_node::country
 

Country of origin -- encoded ISO3166.

gchar* gnutella_node::data
 

data of the current message

guint16 gnutella_node::degree
 

Value of their advertised X-Degree.

gchar gnutella_node::error_str[256]
 

To sprintf() error strings with vars.

gint gnutella_node::extcount
 

Amount of extensions held.

extvec_t gnutella_node::extvec[MAX_EXTVEC]
 

GGEP extensions in "fat" messages.

guint32 gnutella_node::flags
 

See possible values below.

host_addr_t gnutella_node::gnet_addr
 

When != 0, we know the remote IP/port.

guint32 gnutella_node::gnet_files_count
 

Used to answer "Crawling" pings.

guint32 gnutella_node::gnet_kbytes_count
 

Used to answer "Crawling" pings.

host_addr_t gnutella_node::gnet_pong_addr
 

When != 0, last IP we got in pong.

guint16 gnutella_node::gnet_port
 

(listening port, that is )

host_addr_t gnutella_node::gnet_qhit_addr
 

When != 0, last IP we got in query hit.

const gchar* gnutella_node::guid
 

GUID of node (atom) seen on the network.

gboolean gnutella_node::have_header
 

TRUE if we have got a full message header.

gnutella_header_t gnutella_node::header
 

Header of the current message.

guint16 gnutella_node::header_flags
 

Header flags (new message architecture).

wrap_buf_t gnutella_node::hello
 

Spill buffer for GNUTELLA HELLO.

guint8 gnutella_node::hops_flow
 

Don't send queries with a >= hop count.

hsep_ctx_t* gnutella_node::hsep
 

Horizon size estimation (HSEP) -- TSC, 11/02/2004.

node_id_t gnutella_node::id
 

Unique internal ID.

gpointer gnutella_node::io_opaque
 

Opaque I/O callback information.

time_t gnutella_node::last_alive_ping
 

Last time we sent an alive ping.

time_t gnutella_node::last_rx
 

Last time we received from the node.

time_t gnutella_node::last_tx
 

Last time we transmitted to the node.

time_t gnutella_node::last_update
 

Last update of the node.

time_t gnutella_node::leaf_flowc_start
 

Time when leaf flow-controlled queries.

node_magic_t gnutella_node::magic
 

Magic value for consistency checks.

guint8 gnutella_node::max_ttl
 

Value of their advertised X-Max-TTL.

guint32 gnutella_node::n_bad
 

Number of bad packets received.

guint16 gnutella_node::n_dups
 

Number of dup messages received (bad).

guint32 gnutella_node::n_evil
 

Number of messages with evil filenames.

guint16 gnutella_node::n_hard_ttl
 

Number of hard_ttl exceeded (bad).

guint32 gnutella_node::n_hostile
 

Number of messages from hostile IP.

guint32 gnutella_node::n_ping_accepted
 

Number of pings we accepted.

guint32 gnutella_node::n_ping_sent
 

Number of pings we sent to this node.

guint32 gnutella_node::n_ping_special
 

Number of special pings we received.

guint32 gnutella_node::n_ping_throttle
 

Number of pings we throttled.

guint32 gnutella_node::n_pong_received
 

Number of pongs we received from this node.

guint32 gnutella_node::n_pong_sent
 

Number of pongs we sent to this node.

guint32 gnutella_node::n_spam
 

Number of messages rated as spam.

guint32 gnutella_node::n_weird
 

Number of weird messages from that node.

time_t gnutella_node::next_ping
 

When to send a ping, for "OLD" clients.

mqueue_t* gnutella_node::outq
 

TX Output queue.

node_peer_t gnutella_node::peermode
 

Operating mode (leaf, ultra, normal).

time_t gnutella_node::ping_accept
 

Time after which we accept new pings.

gchar gnutella_node::ping_guid[GUID_RAW_SIZE]
 

The GUID of the last accepted ping.

guint gnutella_node::ping_throttle
 

Period for accepting new pings (secs).

guchar gnutella_node::pong_missing
 

Sum(pong_needed[i]), i = 0..MAX_CACHE_HOPS.

guchar gnutella_node::pong_needed[MAX_CACHE_HOPS+1]
 

Pongs needed, by hop value.

guint16 gnutella_node::port
 

port of the node

guint32 gnutella_node::pos
 

write position in data

guint8 gnutella_node::proto_major
 

Handshaking protocol major number.

guint8 gnutella_node::proto_minor
 

Handshaking protocol minor number.

host_addr_t gnutella_node::proxy_addr
 

ip of the node for push proxyfication

guint16 gnutella_node::proxy_port
 

port of the node for push proxyfication

GHashTable* gnutella_node::qrelayed
 

Queries relayed from this node.

time_t gnutella_node::qrelayed_created
 

When `qrelayed' was created.

GHashTable* gnutella_node::qrelayed_old
 

Older version of the `qrelayed' table.

guint8 gnutella_node::qrp_major
 

Query routing protocol major number.

guint32 gnutella_node::qrp_matches
 

Queries received that incurred a match.

guint8 gnutella_node::qrp_minor
 

Query routing protocol minor number.

guint32 gnutella_node::qrp_queries
 

Queries received under QRP control.

qrt_info_t* gnutella_node::qrt_info
 

Info about received query table.

struct qrt_receive* gnutella_node::qrt_receive
 

query routing reception

struct qrt_update* gnutella_node::qrt_update
 

query routing update handle

GHashTable* gnutella_node::qseen
 

Queries seen from this leaf node.

guint32 gnutella_node::received
 

Number of received packets.

struct routing_table* gnutella_node::recv_query_table
 

query table recved from node

const gchar* gnutella_node::remove_msg
 

Reason of removing.

struct route_data* gnutella_node::routing_data
 

for gnet message routing

rxdrv_t* gnutella_node::rx
 

RX stack top.

guint32 gnutella_node::rx_dropped
 

Number of packets dropped at RX time.

gint32 gnutella_node::rx_given
 

Bytes fed to the RX stack (from bottom).

gint32 gnutella_node::rx_inflated
 

Bytes inflated by the RX stack.

guint32 gnutella_node::rx_qhits
 

Total amount of hits received.

guint32 gnutella_node::rx_queries
 

Total amount of queries received.

gint32 gnutella_node::rx_read
 

Bytes read from the RX stack.

struct node_rxfc_mon* gnutella_node::rxfc
 

Optional, time spent in RX flow control.

squeue_t* gnutella_node::searchq
 

TX Search queue.

guint32 gnutella_node::sent
 

Number of sent packets.

struct routing_table* gnutella_node::sent_query_table
 

query table sent to node

time_t gnutella_node::shutdown_date
 

When we entered in shutdown mode.

time_delta_t gnutella_node::shutdown_delay
 

How long we can stay in shutdown mode.

guint16 gnutella_node::size
 

How many bytes we need to read for the current message.

struct gnutella_socket* gnutella_node::socket
 

Socket of the node.

node_peer_t gnutella_node::start_peermode
 

Operating mode when handshaking begun.

gnet_node_state_t gnutella_node::status
 

See possible values below.

guint32 gnutella_node::tcp_rtt
 

RTT when exchange takes place over TCP.

cevent_t* gnutella_node::tsync_ev
 

Time sync event.

gint32 gnutella_node::tx_deflated
 

Bytes deflated by the TX stack.

guint32 gnutella_node::tx_dropped
 

Number of packets dropped at TX time.

time_t gnutella_node::tx_flowc_date
 

When we entered in TX flow control.

gint32 gnutella_node::tx_given
 

Bytes fed to the TX stack (from top).

guint32 gnutella_node::tx_qhits
 

Total amount of hits sent.

guint32 gnutella_node::tx_queries
 

Total amount of queries sent.

gint32 gnutella_node::tx_written
 

Bytes written by the TX stack.

guint32 gnutella_node::udp_rtt
 

RTT when exchange takes place over UDP.

time_t gnutella_node::up_date
 

When remote server started (0 if unknown).

guint8 gnutella_node::uqrp_major
 

UP Query routing protocol major number.

guint8 gnutella_node::uqrp_minor
 

UP Query routing protocol minor number.

vendor_code_t gnutella_node::vcode
 

Vendor code (vcode.u32 == 0 if unknown).

const gchar* gnutella_node::vendor
 

Vendor information (always UTF-8).


The documentation for this struct was generated from the following file:
Generated on Sat Jun 30 17:53:33 2007 for gtk-gnutella by  doxygen 1.3.9.1