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; }