Loading ssl/d1_pkt.c +6 −1 Original line number Diff line number Diff line Loading @@ -517,7 +517,12 @@ again: /* read timeout is handled by dtls1_read_bytes */ if (n <= 0) return(n); /* error or non-blocking */ OPENSSL_assert(s->packet_length == DTLS1_RT_HEADER_LENGTH); /* this packet contained a partial record, dump it */ if (s->packet_length != DTLS1_RT_HEADER_LENGTH) { s->packet_length = 0; goto again; } s->rstate=SSL_ST_READ_BODY; Loading ssl/s3_pkt.c +12 −3 Original line number Diff line number Diff line Loading @@ -141,9 +141,10 @@ int ssl3_read_n(SSL *s, int n, int max, int extend) /* ... now we can act as if 'extend' was set */ } /* extend reads should not span multiple packets for DTLS */ if ( SSL_version(s) == DTLS1_VERSION && extend) /* For DTLS/UDP reads should not span multiple packets * because the read operation returns the whole packet * at once (as long as it fits into the buffer). */ if (SSL_version(s) == DTLS1_VERSION) { if ( s->s3->rbuf.left > 0 && n > s->s3->rbuf.left) n = s->s3->rbuf.left; Loading Loading @@ -209,6 +210,14 @@ int ssl3_read_n(SSL *s, int n, int max, int extend) return(i); } newb+=i; /* reads should *never* span multiple packets for DTLS because * the underlying transport protocol is message oriented as opposed * to byte oriented as in the TLS case. */ if (SSL_version(s) == DTLS1_VERSION) { if (n > newb) n = newb; /* makes the while condition false */ } } /* done reading, now the book-keeping */ Loading Loading
ssl/d1_pkt.c +6 −1 Original line number Diff line number Diff line Loading @@ -517,7 +517,12 @@ again: /* read timeout is handled by dtls1_read_bytes */ if (n <= 0) return(n); /* error or non-blocking */ OPENSSL_assert(s->packet_length == DTLS1_RT_HEADER_LENGTH); /* this packet contained a partial record, dump it */ if (s->packet_length != DTLS1_RT_HEADER_LENGTH) { s->packet_length = 0; goto again; } s->rstate=SSL_ST_READ_BODY; Loading
ssl/s3_pkt.c +12 −3 Original line number Diff line number Diff line Loading @@ -141,9 +141,10 @@ int ssl3_read_n(SSL *s, int n, int max, int extend) /* ... now we can act as if 'extend' was set */ } /* extend reads should not span multiple packets for DTLS */ if ( SSL_version(s) == DTLS1_VERSION && extend) /* For DTLS/UDP reads should not span multiple packets * because the read operation returns the whole packet * at once (as long as it fits into the buffer). */ if (SSL_version(s) == DTLS1_VERSION) { if ( s->s3->rbuf.left > 0 && n > s->s3->rbuf.left) n = s->s3->rbuf.left; Loading Loading @@ -209,6 +210,14 @@ int ssl3_read_n(SSL *s, int n, int max, int extend) return(i); } newb+=i; /* reads should *never* span multiple packets for DTLS because * the underlying transport protocol is message oriented as opposed * to byte oriented as in the TLS case. */ if (SSL_version(s) == DTLS1_VERSION) { if (n > newb) n = newb; /* makes the while condition false */ } } /* done reading, now the book-keeping */ Loading