From 5dec1c25713a19c49fcbb885200184a9682ef175 Mon Sep 17 00:00:00 2001 From: Guus Sliepen Date: Tue, 20 Aug 2013 22:36:31 +0200 Subject: [PATCH] Let a server explicitly send a notification when the invitation protocol succeeded. --- src/invitation.c | 11 +++++++---- src/protocol_auth.c | 1 + 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/invitation.c b/src/invitation.c index 6ed17ca1..74987045 100644 --- a/src/invitation.c +++ b/src/invitation.c @@ -688,10 +688,6 @@ make_names: check_port(name); - fprintf(stderr, "Invitation succesfully accepted.\n"); - shutdown(sock, SHUT_RDWR); - success = true; - ask_netname: if(ask_netname) { fprintf(stderr, "Enter a new netname: "); @@ -720,6 +716,7 @@ ask_netname: return true; } + static bool invitation_send(void *handle, uint8_t type, const char *data, size_t len) { while(len) { int result = send(sock, data, len, 0); @@ -748,6 +745,12 @@ static bool invitation_receive(void *handle, uint8_t type, const char *msg, uint case 1: return finalize_join(); + case 2: + fprintf(stderr, "Invitation succesfully accepted.\n"); + shutdown(sock, SHUT_RDWR); + success = true; + break; + default: return false; } diff --git a/src/protocol_auth.c b/src/protocol_auth.c index f8a3cc3b..1623e75e 100644 --- a/src/protocol_auth.c +++ b/src/protocol_auth.c @@ -174,6 +174,7 @@ static bool finalize_invitation(connection_t *c, const char *data, uint16_t len) fclose(f); logger(DEBUG_CONNECTIONS, LOG_INFO, "Key succesfully received from %s (%s)", c->name, c->hostname); + sptps_send_record(&c->sptps, 2, data, 0); return true; } -- 2.20.1