fallback for readlink