00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file OS_NS_pwd.h 00006 * 00007 * $Id: OS_NS_pwd.h 74005 2006-08-14 11:30:00Z johnnyw $ 00008 * 00009 * @author Douglas C. Schmidt <schmidt@cs.wustl.edu> 00010 * @author Jesper S. M|ller<stophph@diku.dk> 00011 * @author and a cast of thousands... 00012 * 00013 * Originally in OS.h. 00014 */ 00015 //============================================================================= 00016 00017 #ifndef ACE_OS_NS_PWD_H 00018 #define ACE_OS_NS_PWD_H 00019 00020 # include /**/ "ace/pre.h" 00021 00022 # include "ace/config-all.h" 00023 00024 # if !defined (ACE_LACKS_PRAGMA_ONCE) 00025 # pragma once 00026 # endif /* ACE_LACKS_PRAGMA_ONCE */ 00027 00028 #include "ace/os_include/os_pwd.h" 00029 #include /**/ "ace/ACE_export.h" 00030 00031 #if defined (ACE_EXPORT_MACRO) 00032 # undef ACE_EXPORT_MACRO 00033 #endif 00034 #define ACE_EXPORT_MACRO ACE_Export 00035 00036 # if defined (ACE_HAS_BROKEN_R_ROUTINES) 00037 # undef getpwnam_r 00038 # endif /* ACE_HAS_BROKEN_R_ROUTINES */ 00039 00040 struct passwd; 00041 00042 ACE_BEGIN_VERSIONED_NAMESPACE_DECL 00043 00044 namespace ACE_OS 00045 { 00046 00047 00048 //@{ @name A set of wrappers for password routines. 00049 00050 ACE_NAMESPACE_INLINE_FUNCTION 00051 void endpwent (void); 00052 00053 ACE_NAMESPACE_INLINE_FUNCTION 00054 struct passwd *getpwent (void); 00055 00056 ACE_NAMESPACE_INLINE_FUNCTION 00057 struct passwd *getpwnam (const char *user); 00058 00059 ACE_NAMESPACE_INLINE_FUNCTION 00060 struct passwd *getpwnam_r (const char *name, 00061 struct passwd *pwent, 00062 char *buffer, 00063 int buflen); 00064 ACE_NAMESPACE_INLINE_FUNCTION 00065 void setpwent (void); 00066 //@} 00067 00068 } /* namespace ACE_OS */ 00069 00070 ACE_END_VERSIONED_NAMESPACE_DECL 00071 00072 # if defined (ACE_HAS_INLINED_OSCALLS) 00073 # if defined (ACE_INLINE) 00074 # undef ACE_INLINE 00075 # endif /* ACE_INLINE */ 00076 # define ACE_INLINE inline 00077 # include "ace/OS_NS_pwd.inl" 00078 # endif /* ACE_HAS_INLINED_OSCALLS */ 00079 00080 # include /**/ "ace/post.h" 00081 #endif /* ACE_OS_NS_PWD_H */