(reader io.Reader, expectedSize, maxSize int, compression CompressionType, sp trace.Span)
| 165 | } |
| 166 | |
| 167 | func decompressRequest(reader io.Reader, expectedSize, maxSize int, compression CompressionType, sp trace.Span) (body []byte, err error) { |
| 168 | defer func() { |
| 169 | if err != nil && len(body) > maxSize { |
| 170 | err = fmt.Errorf(messageSizeLargerErrFmt, len(body), maxSize) |
| 171 | } |
| 172 | }() |
| 173 | if expectedSize > maxSize { |
| 174 | return nil, fmt.Errorf(messageSizeLargerErrFmt, expectedSize, maxSize) |
| 175 | } |
| 176 | buffer, ok := tryBufferFromReader(reader) |
| 177 | if ok { |
| 178 | body, err = decompressFromBuffer(buffer, maxSize, compression, sp) |
| 179 | return |
| 180 | } |
| 181 | body, err = decompressFromReader(reader, expectedSize, maxSize, compression, sp) |
| 182 | return |
| 183 | } |
| 184 | |
| 185 | func decompressFromReader(reader io.Reader, expectedSize, maxSize int, compression CompressionType, sp trace.Span) ([]byte, error) { |
| 186 | var ( |
no test coverage detected