blob: 5e7c4e54491649004f60c0dc670a8f01e2589c87 (
plain) (
tree)
|
|
/**
* @file
* @brief getpwuid_r() API Conformance Test
*/
/*
* COPYRIGHT (c) 2018.
* Himanshu Sekhar Nayak
*
* Permission to use, copy, modify, and/or distribute this software
* for any purpose with or without fee is hereby granted.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR
* BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
* ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
#include <unistd.h>
#include <stdlib.h>
#include <sys/types.h>
#include <pwd.h>
int test( void );
int test( void )
{
struct passwd *pswd;
struct passwd *resl;
uid_t uid = 0;
char *buf;
size_t buflen;
int result;
buflen = sysconf( _SC_GETPW_R_SIZE_MAX );
buf = malloc( buflen );
pswd = getpwent();
result = getpwuid_r( uid, pswd, buf, buflen, &resl );
return ( result != -1 );
}
|