diff options
Diffstat (limited to 'examples/Service_Configurator/IPC-tests/server/Handle_L_Pipe.cpp')
-rw-r--r-- | examples/Service_Configurator/IPC-tests/server/Handle_L_Pipe.cpp | 60 |
1 files changed, 17 insertions, 43 deletions
diff --git a/examples/Service_Configurator/IPC-tests/server/Handle_L_Pipe.cpp b/examples/Service_Configurator/IPC-tests/server/Handle_L_Pipe.cpp index cf38a20f28d..02c567897b4 100644 --- a/examples/Service_Configurator/IPC-tests/server/Handle_L_Pipe.cpp +++ b/examples/Service_Configurator/IPC-tests/server/Handle_L_Pipe.cpp @@ -4,53 +4,29 @@ ACE_RCSID(server, Handle_L_Pipe, "$Id$") -#if !defined (ACE_LACKS_UNIX_DOMAIN_SOCKETS) - -// Uppercase N bytes of S. - -char * -Handle_L_Pipe::upper_case (char s[], int n) +#if defined (SunOS4) +extern "C" { - while (--n >= 0) - if (islower (s[n])) - s[n] = toupper (s[n]); - - return s; -} + int init (void); + int fini (void); + void __sti__Handle_L_Pipe_C_recv_n_(); + void __std__Handle_L_Pipe_C_recv_n_(); +} -int -Handle_L_Pipe::handle_input (ACE_HANDLE) +int +init (void) { - ACE_LSOCK_Stream new_local_stream; - int n; - ACE_HANDLE fd1 = ACE_INVALID_HANDLE; - ACE_HANDLE fd2 = ACE_INVALID_HANDLE; - char buf[BUFSIZ]; - - if (this->accept (new_local_stream) == -1) - return -1; - - if (new_local_stream.recv_handle (fd1) == -1 - || new_local_stream.recv_handle (fd2) == -1) - return -1; - else - ACE_DEBUG ((LM_INFO, - "received file descriptors %d and %d\n", - fd1, - fd2)); - - if ((n = ACE_OS::read (fd1, buf, sizeof buf)) == -1) - return -1; - else if (ACE_OS::write (fd2, this->upper_case (buf, n), n) == -1) - return -1; - if (ACE_OS::close (fd1) == -1 - || ACE_OS::close (fd2) == -1) - return -1; - if (new_local_stream.close () == -1) - return -1; + __sti__Handle_L_Pipe_C_recv_n_(); + return 0; +} +int +fini (void) +{ + __std__Handle_L_Pipe_C_recv_n_(); return 0; } +#endif /* SunOS4 */ const char *Handle_L_Pipe::DEFAULT_RENDEZVOUS = "/tmp/foo_pipe"; @@ -60,5 +36,3 @@ const char *Handle_L_Pipe::DEFAULT_RENDEZVOUS = "/tmp/foo_pipe"; Handle_L_Pipe local_pipe; ACE_Service_Object_Type lp (&local_pipe, "Local_Pipe"); - -#endif /* ACE_LACKS_UNIX_DOMAIN_SOCKETS */ |