If you define `wipe_buffer(buf_t *buffer)` and `delete_buffer(buf_t *buffer)` you won't have to pass the `wipe_buf` and `del_buf` "booleans" to this function. Move the `if` tests back to the caller.