# OS_NS_stropts.h File Reference

`#include "ace/config-all.h"`
`#include "ace/os_include/os_stropts.h"`
`#include "ace/os_include/os_stdio.h"`
`#include "ace/ACE_export.h"`
`#include "ace/OS_NS_stropts.inl"`

Include dependency graph for OS_NS_stropts.h:

This graph shows which files directly or indirectly include this file:

## Namespaces

namespace | ACE_OS

## Classes

struct | ACE_Protocol_Info
class | ACE_Str_Buf
| Simple wrapper for STREAM pipes strbuf. More...

## Defines

#define | ACE_IOCTL_TYPE_ARG2 int
#define | ACE_EXPORT_MACRO ACE_Export
#define | ACE_INLINE inline

## Typedefs

typedef void(* | ACE_OVERLAPPED_COMPLETION_FUNC )(unsigned long error, unsigned long bytes_transferred, ACE_OVERLAPPED *overlapped, unsigned long flags)
typedef unsigned long | ACE_SOCK_GROUP

## Functions

ACE_NAMESPACE_INLINE_FUNCTION int | getmsg (ACE_HANDLE handle, struct strbuf *ctl, struct strbuf *data, int *flags)
ACE_NAMESPACE_INLINE_FUNCTION int | getpmsg (ACE_HANDLE handle, struct strbuf *ctl, struct strbuf *data, int *band, int *flags)
ACE_NAMESPACE_INLINE_FUNCTION int | fattach (int handle, const char *path)
ACE_NAMESPACE_INLINE_FUNCTION int | fdetach (const char *file)
ACE_NAMESPACE_INLINE_FUNCTION int | ioctl (ACE_HANDLE handle, ACE_IOCTL_TYPE_ARG2 cmd, void *=0)
| UNIX-style <ioctl>.
ACE_Export int | ioctl (ACE_HANDLE socket, unsigned long io_control_code, void *in_buffer_p, unsigned long in_buffer, void *out_buffer_p, unsigned long out_buffer, unsigned long *bytes_returned, ACE_OVERLAPPED *overlapped, ACE_OVERLAPPED_COMPLETION_FUNC func)
| QoS-enabled <ioctl>.
ACE_Export int | ioctl (ACE_HANDLE socket, unsigned long io_control_code, ACE_QoS &ace_qos, unsigned long *bytes_returned, void *buffer_p=0, unsigned long buffer=0, ACE_OVERLAPPED *overlapped=0, ACE_OVERLAPPED_COMPLETION_FUNC func=0)
ACE_NAMESPACE_INLINE_FUNCTION int | isastream (ACE_HANDLE handle)
ACE_NAMESPACE_INLINE_FUNCTION int | putmsg (ACE_HANDLE handle, const struct strbuf *ctl, const struct strbuf *data, int flags)
ACE_NAMESPACE_INLINE_FUNCTION int | putpmsg (ACE_HANDLE handle, const struct strbuf *ctl, const struct strbuf *data, int band, int flags)

## Detailed Description

Id
  OS_NS_stropts.h,v 1.8 2006/02/28 00:23:12 shuston Exp

Author:
  Douglas C. Schmidt <schmidt@cs.wustl.edu>

  Jesper S. M|ller<stophph@diku.dk>

  and a cast of thousands...

Originally in OS.h.

## Define Documentation

#define ACE_EXPORT_MACRO ACE_Export

#define ACE_INLINE inline

#define ACE_IOCTL_TYPE_ARG2 int

## Typedef Documentation

typedef void(* ACE_OVERLAPPED_COMPLETION_FUNC)(unsigned long error, unsigned long bytes_transferred, ACE_OVERLAPPED *overlapped, unsigned long flags)

typedef unsigned long ACE_SOCK_GROUP

## Function Documentation

ACE_INLINE int ACE_OS::fattach | ( | int | handle,
|  | const char * | path
| ) |

ACE_INLINE int ACE_OS::fdetach | ( | const char * | file | ) |

ACE_INLINE int ACE_OS::getmsg | ( | ACE_HANDLE | handle,
|  | struct strbuf * | ctl,
|  | struct strbuf * | data,
|  | int * | flags
| ) |

ACE_INLINE int ACE_OS::getpmsg | ( | ACE_HANDLE | handle,
|  | struct strbuf * | ctl,
|  | struct strbuf * | data,
|  | int * | band,
|  | int * | flags
| ) |

int ACE_OS::ioctl | ( | ACE_HANDLE | socket,
|  | unsigned long | io_control_code,
|  | ACE_QoS & | ace_qos,
|  | unsigned long * | bytes_returned,
|  | void * | buffer_p = `0`,
|  | unsigned long | buffer = `0`,
|  | ACE_OVERLAPPED * | overlapped = `0`,
|  | ACE_OVERLAPPED_COMPLETION_FUNC | func = `0`
| ) |

| QoS-enabled <ioctl> when the I/O control code is either SIO_SET_QOS or SIO_GET_QOS.

ACE_BEGIN_VERSIONED_NAMESPACE_DECL int ACE_OS::ioctl | ( | ACE_HANDLE | socket,
|  | unsigned long | io_control_code,
|  | void * | in_buffer_p,
|  | unsigned long | in_buffer,
|  | void * | out_buffer_p,
|  | unsigned long | out_buffer,
|  | unsigned long * | bytes_returned,
|  | ACE_OVERLAPPED * | overlapped,
|  | ACE_OVERLAPPED_COMPLETION_FUNC | func
| ) |

| QoS-enabled <ioctl>.

ACE_INLINE int ACE_OS::ioctl | ( | ACE_HANDLE | handle,
|  | ACE_IOCTL_TYPE_ARG2 | cmd,
|  | void * | = `0`
| ) |

| UNIX-style <ioctl>.

ACE_INLINE int ACE_OS::isastream | ( | ACE_HANDLE | handle | ) |

ACE_INLINE int ACE_OS::putmsg | ( | ACE_HANDLE | handle,
|  | const struct strbuf * | ctl,
|  | const struct strbuf * | data,
|  | int | flags
| ) |

ACE_INLINE int ACE_OS::putpmsg | ( | ACE_HANDLE | handle,
|  | const struct strbuf * | ctl,
|  | const struct strbuf * | data,
|  | int | band,
|  | int | flags
| ) |