]> git.tuebingen.mpg.de Git - paraslash.git/blobdiff - command.c
Use sideband also for "proceed" handshake.
[paraslash.git] / command.c
index 5e13df66bce15a7e759ce1dd85347b9a176a5417..8deb69ce2f233ee7d0c691a62cebd2d8ded43ce1 100644 (file)
--- a/command.c
+++ b/command.c
@@ -975,7 +975,10 @@ __noreturn void handle_connect(int fd, const char *peername)
        /* init stream cipher keys with the second part of the random buffer */
        cc->scc.recv = sc_new(rand_buf + CHALLENGE_SIZE, SESSION_KEY_LEN);
        cc->scc.send = sc_new(rand_buf + CHALLENGE_SIZE + SESSION_KEY_LEN, SESSION_KEY_LEN);
        /* init stream cipher keys with the second part of the random buffer */
        cc->scc.recv = sc_new(rand_buf + CHALLENGE_SIZE, SESSION_KEY_LEN);
        cc->scc.send = sc_new(rand_buf + CHALLENGE_SIZE + SESSION_KEY_LEN, SESSION_KEY_LEN);
-       ret = sc_send_buffer(&cc->scc, PROCEED_MSG);
+       if (cc->use_sideband)
+               ret = send_sb(&cc->scc, NULL, 0, SBD_PROCEED, false);
+       else
+               ret = sc_send_buffer(&cc->scc, PROCEED_MSG);
        if (ret < 0)
                goto net_err;
        ret = read_command(&cc->scc, &command);
        if (ret < 0)
                goto net_err;
        ret = read_command(&cc->scc, &command);