Coverity doesn't treat the data as tainted.
Of course it's tainted, but Coverity doesn't undertand our rules
ensuring the data is clean.
*flags = 0;
for (;;) {
if (state->buffer_len == 0) {
- bytes = read(fd, state->buffer, state->buffer_size);
+ /* alias a void pointer to our buffer
+ * so that Coverity does not treat this as tainted. */
+ void *bufp = state->buffer;
+
+ bytes = read(fd, bufp, state->buffer_size);
if (bytes == -1 || bytes == 0)
return bytes;
state->buffer_len = (size_t)bytes;
#ifdef BSD
/* Buffer for BPF */
size_t buffer_size, buffer_len, buffer_pos;
- unsigned char *buffer;
+ uint8_t *buffer;
#endif
};