diff options
Diffstat (limited to 'ACE/examples/Service_Configurator/IPC-tests/server/Handle_L_Stream.h')
-rw-r--r-- | ACE/examples/Service_Configurator/IPC-tests/server/Handle_L_Stream.h | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/ACE/examples/Service_Configurator/IPC-tests/server/Handle_L_Stream.h b/ACE/examples/Service_Configurator/IPC-tests/server/Handle_L_Stream.h new file mode 100644 index 00000000000..aa3840bfede --- /dev/null +++ b/ACE/examples/Service_Configurator/IPC-tests/server/Handle_L_Stream.h @@ -0,0 +1,53 @@ +// -*- C++ -*- +// $Id$ + +// Handle connections from local UNIX domain sockets. + +#ifndef _HANDLE_L_STREAM_H +#define _HANDLE_L_STREAM_H + +#include "ace/Service_Config.h" +#include "ace/Reactor.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +#include "ace/Service_Types.h" +#include "ace/UNIX_Addr.h" +#include "ace/LSOCK_Acceptor.h" +#include "ace/svc_export.h" + +#if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS) + +class ACE_Svc_Export Handle_L_Stream : public ACE_Service_Object, public ACE_LSOCK_Acceptor +{ +public: + Handle_L_Stream (void); + ~Handle_L_Stream (void); + virtual int init (int argc, ACE_TCHAR *argv[]); + virtual int info (ACE_TCHAR **, size_t) const; + virtual int fini (void); + +private: + int open (const ACE_UNIX_Addr &suas, int async = 0); + virtual ACE_HANDLE get_handle (void) const; + virtual int handle_input (ACE_HANDLE fd); + virtual int handle_close (ACE_HANDLE fd, ACE_Reactor_Mask); + + ACE_TCHAR rendezvous[MAXPATHLEN + 1]; + static const ACE_TCHAR *DEFAULT_RENDEZVOUS; + static char *login_name; + static char login[ACE_MAX_USERID]; +}; + +extern ACE_Service_Object_Type ls; + +#if defined (__ACE_INLINE__) +#define ACE_INLINE inline +#include "Handle_L_Stream.inl" +#else +#define ACE_INLINE +#endif /* __ACE_INLINE__ */ +#endif /* ACE_LACKS_UNIX_DOMAIN_SOCKETS */ +#endif /* _HANDLE_L_STREAM_H */ |