add posix interface functions