Skip to content

Commit 247d688

Browse files
committed
only raise read/write again when nessecarry
1 parent 4aae668 commit 247d688

File tree

1 file changed

+10
-25
lines changed

1 file changed

+10
-25
lines changed

src/mrb_tls.c

Lines changed: 10 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -391,11 +391,8 @@ mrb_tls_accept_socket(mrb_state *mrb, mrb_value self)
391391
mrb_module_get(mrb, "Tls"), "Client"), cctx, &tls_type));
392392
}
393393
else
394-
if (rc == TLS_READ_AGAIN)
395-
mrb_raise(mrb, E_TLS_READ_AGAIN, tls_error((tls_t *) DATA_PTR(self)));
396-
else
397-
if (rc == TLS_WRITE_AGAIN)
398-
mrb_raise(mrb, E_TLS_WRITE_AGAIN, tls_error((tls_t *) DATA_PTR(self)));
394+
if (rc == TLS_READ_AGAIN||rc == TLS_WRITE_AGAIN)
395+
mrb_raise(mrb, E_TLS_ERROR, tls_error((tls_t *) DATA_PTR(self)));
399396
else
400397
mrb_sys_fail(mrb, tls_error((tls_t *) DATA_PTR(self)));
401398

@@ -414,11 +411,8 @@ mrb_tls_connect(mrb_state *mrb, mrb_value self)
414411
if (rc == 0)
415412
return self;
416413
else
417-
if (rc == TLS_READ_AGAIN)
418-
mrb_raise(mrb, E_TLS_READ_AGAIN, tls_error((tls_t *) DATA_PTR(self)));
419-
else
420-
if (rc == TLS_WRITE_AGAIN)
421-
mrb_raise(mrb, E_TLS_WRITE_AGAIN, tls_error((tls_t *) DATA_PTR(self)));
414+
if (rc == TLS_READ_AGAIN||rc == TLS_WRITE_AGAIN)
415+
mrb_raise(mrb, E_TLS_ERROR, tls_error((tls_t *) DATA_PTR(self)));
422416
else
423417
mrb_sys_fail(mrb, tls_error((tls_t *) DATA_PTR(self)));
424418

@@ -444,11 +438,8 @@ mrb_tls_connect_fds(mrb_state *mrb, mrb_value self)
444438
if (rc == 0)
445439
return self;
446440
else
447-
if (rc == TLS_READ_AGAIN)
448-
mrb_raise(mrb, E_TLS_READ_AGAIN, tls_error((tls_t *) DATA_PTR(self)));
449-
else
450-
if (rc == TLS_WRITE_AGAIN)
451-
mrb_raise(mrb, E_TLS_WRITE_AGAIN, tls_error((tls_t *) DATA_PTR(self)));
441+
if (rc == TLS_READ_AGAIN||rc == TLS_WRITE_AGAIN)
442+
mrb_raise(mrb, E_TLS_ERROR, tls_error((tls_t *) DATA_PTR(self)));
452443
else
453444
mrb_sys_fail(mrb, tls_error((tls_t *) DATA_PTR(self)));
454445

@@ -471,11 +462,8 @@ mrb_tls_connect_socket(mrb_state *mrb, mrb_value self)
471462
if (rc == 0)
472463
return self;
473464
else
474-
if (rc == TLS_READ_AGAIN)
475-
mrb_raise(mrb, E_TLS_READ_AGAIN, tls_error((tls_t *) DATA_PTR(self)));
476-
else
477-
if (rc == TLS_WRITE_AGAIN)
478-
mrb_raise(mrb, E_TLS_WRITE_AGAIN, tls_error((tls_t *) DATA_PTR(self)));
465+
if (rc == TLS_READ_AGAIN||rc == TLS_WRITE_AGAIN)
466+
mrb_raise(mrb, E_TLS_ERROR, tls_error((tls_t *) DATA_PTR(self)));
479467
else
480468
mrb_sys_fail(mrb, tls_error((tls_t *) DATA_PTR(self)));
481469

@@ -540,11 +528,8 @@ mrb_tls_close(mrb_state *mrb, mrb_value self)
540528
if (rc == 0)
541529
return self;
542530
else
543-
if (rc == TLS_READ_AGAIN)
544-
mrb_raise(mrb, E_TLS_READ_AGAIN, tls_error((tls_t *) DATA_PTR(self)));
545-
else
546-
if (rc == TLS_WRITE_AGAIN)
547-
mrb_raise(mrb, E_TLS_WRITE_AGAIN, tls_error((tls_t *) DATA_PTR(self)));
531+
if (rc == TLS_READ_AGAIN||rc == TLS_WRITE_AGAIN)
532+
mrb_raise(mrb, E_TLS_ERROR, tls_error((tls_t *) DATA_PTR(self)));
548533
else
549534
mrb_sys_fail(mrb, tls_error((tls_t *) DATA_PTR(self)));
550535

0 commit comments

Comments
 (0)