Write pending data after connecting
[project/ustream-ssl.git] / ustream-ssl.c
index 0ae5df6..346a53f 100644 (file)
@@ -41,6 +41,7 @@ static void ustream_ssl_check_conn(struct ustream_ssl *us)
                us->connected = true;
                if (us->notify_connected)
                        us->notify_connected(us);
+               ustream_write_pending(&us->stream);
        }
 }
 
@@ -164,7 +165,7 @@ static void ustream_ssl_stream_init(struct ustream_ssl *us)
        ustream_init_defaults(s);
 }
 
-static int _ustream_ssl_init(struct ustream_ssl *us, struct ustream *conn, void *ctx, bool server)
+static int _ustream_ssl_init(struct ustream_ssl *us, struct ustream *conn, struct ustream_ssl_ctx *ctx, bool server)
 {
        us->error_timer.cb = ustream_ssl_error_cb;
        us->server = server;
@@ -178,6 +179,7 @@ static int _ustream_ssl_init(struct ustream_ssl *us, struct ustream *conn, void
        conn->next = &us->stream;
        ustream_set_io(ctx, us->ssl, conn);
        ustream_ssl_stream_init(us);
+       ustream_ssl_check_conn(us);
 
        return 0;
 }