You're leaking `buf`.