new api: write(block_buffer)