3 //=============================================================================
7 * @author Douglas C. Schmidt <d.schmidt@vanderbilt.edu>
8 * @author Jesper S. M|ller<stophph@diku.dk>
9 * @author and a cast of thousands...
11 //=============================================================================
13 #ifndef ACE_OS_NS_FCNTL_H
14 # define ACE_OS_NS_FCNTL_H
16 # include /**/ "ace/pre.h"
18 # include "ace/config-all.h"
20 # if !defined (ACE_LACKS_PRAGMA_ONCE)
22 # endif /* ACE_LACKS_PRAGMA_ONCE */
24 #include "ace/os_include/os_fcntl.h"
25 #include "ace/Global_Macros.h" // for LPSECURITY_ATTRIBUTES :-(
26 #include "ace/Default_Constants.h"
27 #include /**/ "ace/ACE_export.h"
29 #if defined (ACE_EXPORT_MACRO)
30 # undef ACE_EXPORT_MACRO
32 #define ACE_EXPORT_MACRO ACE_Export
34 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
37 ACE_NAMESPACE_INLINE_FUNCTION
38 int fcntl (ACE_HANDLE handle
,
42 /// The O_APPEND flag is only partly supported on Win32. If you specify
43 /// O_APPEND, then the file pointer will be positioned at the end of
44 /// the file initially during open, but it is not re-positioned at
45 /// the end prior to each write, as specified by POSIX. This
46 /// is generally good enough for typical situations, but it is ``not
47 /// quite right'' in its semantics.
49 ACE_HANDLE
open (const char *filename
,
51 mode_t perms
= ACE_DEFAULT_OPEN_PERMS
,
52 LPSECURITY_ATTRIBUTES sa
= 0);
53 #if defined (ACE_HAS_WCHAR)
55 ACE_HANDLE
open (const wchar_t *filename
,
57 mode_t perms
= ACE_DEFAULT_OPEN_PERMS
,
58 LPSECURITY_ATTRIBUTES sa
= 0);
59 #endif /* ACE_HAS_WCHAR */
61 } /* namespace ACE_OS */
63 ACE_END_VERSIONED_NAMESPACE_DECL
65 # if defined (ACE_HAS_INLINED_OSCALLS)
66 # if defined (ACE_INLINE)
68 # endif /* ACE_INLINE */
69 # define ACE_INLINE inline
70 # include "ace/OS_NS_fcntl.inl"
71 # endif /* ACE_HAS_INLINED_OSCALLS */
73 # include /**/ "ace/post.h"
74 #endif /* ACE_OS_NS_FCNTL_H */