readdir_r.c revision 7c478bd95313f5f23a4c958a745db2134aa03244
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License, Version 1.0 only
* (the "License"). You may not use this file except in compliance
* with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2004 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#pragma ident "%Z%%M% %I% %E% SMI"
/* Copyright (c) 1988 AT&T */
/* All Rights Reserved */
/*
* readdir_r -- C library extension routine
*/
#include <sys/feature_tests.h>
#if !defined(_LP64)
#endif
#include "synonyms.h"
#include <mtlib.h>
#include <dirent.h>
#include <thread.h>
#include <string.h>
#include <synch.h>
#include <stdio.h>
#include <limits.h>
#include <errno.h>
#include "libc.h"
extern mutex_t _dirent_lock;
#ifdef _LP64
/*
* POSIX.1c standard version of the thread function readdir_r.
*/
int
{
int saveloc = 0;
}
return (0); /* EOF */
}
return (errno); /* error */
}
return (0);
}
#else /* _LP64 */
/*
* POSIX.1c standard version of the thr function readdir_r.
* Large file version.
*/
int
{
int saveloc = 0;
/* was converted by readdir and needs to be reversed */
}
}
return (0); /* EOF */
}
return (errno); /* error */
}
return (0);
}
/*
* POSIX.1c Draft-6 version of the function readdir_r.
* It was implemented by Solaris 2.3.
*/
struct dirent *
{
return (NULL);
(uint64_t)UINT32_MAX)) {
return (NULL);
}
return (entry);
}
/*
* POSIX.1c standard version of the thr function readdir_r.
* User gets it via static readdir_r from header file.
*/
int
{
int ret;
return (ret);
}
(uint64_t)UINT32_MAX)) {
return (EOVERFLOW);
}
return (0);
}
#endif /* _LP64 */