| 585 | } |
| 586 | |
| 587 | bool websocket::peek_head_masking_key(void) |
| 588 | { |
| 589 | size_t len = peek_buf_->size(); |
| 590 | |
| 591 | if (len >= sizeof(unsigned)) { |
| 592 | logger_fatal("overflow, len=%ld", (long) len); |
| 593 | } |
| 594 | |
| 595 | if (!client_.readn_peek(peek_buf_, sizeof(unsigned) - len, false)) { |
| 596 | return false; |
| 597 | } |
| 598 | |
| 599 | assert(peek_buf_->size() == sizeof(unsigned)); |
| 600 | |
| 601 | memcpy(&header_.masking_key, peek_buf_->c_str(), sizeof(unsigned)); |
| 602 | status_ = WS_HEAD_FINISH; |
| 603 | peek_buf_->clear(); |
| 604 | return true; |
| 605 | } |
| 606 | |
| 607 | bool websocket::peek_frame_head(void) |
| 608 | { |
nothing calls this directly
no test coverage detected