implement fmemopen