static ERL_NIF_TERM get_device_cwd_nif(ErlNifEnv *env, int argc, const ERL_NIF_TERM argv[]) { posix_errno_t posix_errno; ERL_NIF_TERM result; int device_index; if(argc != 1 || !enif_get_int(env, argv[0], &device_index)) { return enif_make_badarg(env); } if((posix_errno = efile_get_device_cwd(env, device_index, &result))) { return posix_error_to_tuple(env, posix_errno); } return enif_make_tuple2(env, am_ok, result); }
posix_errno_t efile_get_cwd(ErlNifEnv *env, ERL_NIF_TERM *result) { return efile_get_device_cwd(env, 0, result); }