From 0c82651c30bf543903ca05df4e5b179201353ee1 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Sat, 31 Mar 2012 18:04:02 +0200 Subject: Change how handshakes are triggered --- src/peer.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/peer.c') diff --git a/src/peer.c b/src/peer.c index ff72c8e..653a62f 100644 --- a/src/peer.c +++ b/src/peer.c @@ -192,6 +192,24 @@ const fastd_eth_addr* fastd_get_dest_address(const fastd_context *ctx, fastd_buf } } +void fastd_peer_set_established(fastd_context *ctx, fastd_peer *peer) { + fastd_task_delete_peer_handshakes(ctx, peer); + + switch(peer->state) { + case STATE_WAIT: + pr_info(ctx, "Connection with %P established.", peer); + peer->state = STATE_ESTABLISHED; + break; + + case STATE_TEMP: + exit_bug(ctx, "tried to set a temporary connection to established"); + + default: + return; + } +} + + static inline int fastd_eth_addr_cmp(const fastd_eth_addr *addr1, const fastd_eth_addr *addr2) { return memcmp(addr1->data, addr2->data, ETH_ALEN); } -- cgit v1.2.3