summaryrefslogtreecommitdiff
path: root/ace/ATM_Acceptor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ace/ATM_Acceptor.cpp')
-rw-r--r--ace/ATM_Acceptor.cpp217
1 files changed, 0 insertions, 217 deletions
diff --git a/ace/ATM_Acceptor.cpp b/ace/ATM_Acceptor.cpp
deleted file mode 100644
index 3cf879f257b..00000000000
--- a/ace/ATM_Acceptor.cpp
+++ /dev/null
@@ -1,217 +0,0 @@
-// $Id$
-
-#include "ace/ATM_Acceptor.h"
-
-ACE_RCSID(ace, ATM_Acceptor, "$Id$")
-
-#if defined (ACE_HAS_ATM)
-
-#if !defined (__ACE_INLINE__)
-#include "ace/ATM_Acceptor.i"
-#endif /* __ACE_INLINE__ */
-
-// Put the actual definitions of the ACE_ATM_Request and
-// ACE_ATM_Request_Queue classes here to hide them from clients...
-
-ACE_ALLOC_HOOK_DEFINE(ACE_ATM_Acceptor)
-
-void
-ACE_ATM_Acceptor::dump (void) const
-{
- ACE_TRACE ("ACE_ATM_Acceptor::dump");
-}
-
-ACE_ATM_Acceptor::ACE_ATM_Acceptor (void)
-{
- ACE_TRACE ("ACE_ATM_Acceptor::ACE_ATM_Acceptor");
-}
-
-ACE_ATM_Acceptor::~ACE_ATM_Acceptor (void)
-{
- ACE_TRACE ("ACE_ATM_Acceptor::~ACE_ATM_Acceptor");
-}
-
-int
-ACE_ATM_Acceptor::get_local_addr( ACE_ATM_Addr &local_addr )
-{
- ACE_TRACE( "ACE_ATM_Acceptor::get_local_addr" );
-
-#if defined (ACE_HAS_FORE_ATM_WS2)
- unsigned long ret = 0;
- DWORD deviceID = 0;
- ATM_ADDRESS addr;
- struct sockaddr_atm *laddr;
-
- if ( ::WSAIoctl(( int )(( ACE_SOCK_Acceptor *)this ) -> get_handle(),
- SIO_GET_ATM_ADDRESS,
- (LPVOID) &deviceID,
- sizeof(DWORD),
- ( LPVOID )&addr,
- sizeof( ATM_ADDRESS ),
- &ret,
- NULL,
- NULL ) == SOCKET_ERROR ) {
- ACE_OS::printf( "ATM_Acceptor(get_local_addr): WSIoctl: %d\n",
- ::WSAGetLastError());
- return -1;
- }
-
- laddr = ( struct sockaddr_atm *)local_addr.get_addr();
- ACE_OS::memcpy(( void *)&( laddr -> satm_number ),
- ( void *)&addr,
- ATM_ADDR_SIZE - 1 );
-
- return 0;
-#elif defined (ACE_HAS_FORE_ATM_XTI)
- ACE_UNUSED_ARG( local_addr );
-
- return 0;
-#else
- ACE_UNUSED_ARG( local_addr );
-
- return 0;
-#endif /* ACE_HAS_FORE_ATM_WS2 && ACE_HAS_FORE_ATM_XTI */
-}
-
-ACE_HANDLE
-ACE_ATM_Acceptor::open (const ACE_Addr &remote_sap,
- int backlog,
- ACE_ATM_Params params)
-{
- ACE_TRACE ("ACE_ATM_Acceptor::open");
-#if defined (ACE_HAS_FORE_ATM_XTI)
- ACE_HANDLE handle = acceptor_.open (remote_sap,
- params.get_reuse_addr(),
- params.get_oflag(),
- params.get_info(),
- backlog,
- params.get_device());
- return (handle == ACE_INVALID_HANDLE ? -1 : 0);
-#elif defined (ACE_HAS_FORE_ATM_WS2)
- //Unable to use ACE_SOCK_Acceptor.open
- //because of its assumption of using SOCK_STREAM
- //return (ACE_HANDLE)(acceptor_.open (remote_sap, //ACE_Addr
- // protocol_info, //ACE_Protocol_Info
- // 0, //ACE_SOCK_Group
- // 0, //u_long flags
- // params.get_reuse_addr(),
- // params.get_protocol_family(),
- // backlog,
- // params.get_protocol()));
-
- struct sockaddr_atm local_atm_addr;
- ACE_HANDLE ret;
- DWORD flags = 0;
-
- /* Create a local endpoint of communication */
-
- // Only leaves can listen.
- flags = ACE_FLAG_MULTIPOINT_C_LEAF | ACE_FLAG_MULTIPOINT_D_LEAF;
-
-
- if ((ret = ACE_OS::socket (AF_ATM,
- SOCK_RAW,
- ATMPROTO_AAL5,
- NULL,
- 0,
- flags ))
- == ACE_INVALID_HANDLE) {
- ACE_OS::printf( "Acceptor(open): socket %d\n", ::WSAGetLastError()),
- ACE_OS::exit (1);
- }
-
- ((ACE_SOCK_Acceptor *)this) -> set_handle( ret );
-
- /* Set up the address information to become a server */
- ACE_OS::memset ((void *) &local_atm_addr, 0, sizeof local_atm_addr);
- local_atm_addr.satm_family = AF_ATM;
- local_atm_addr.satm_number.AddressType = SAP_FIELD_ANY_AESA_REST;
- local_atm_addr.satm_number.Addr[ ATM_ADDR_SIZE - 1 ]
- = (( ACE_ATM_Addr *)&remote_sap ) -> get_selector();
- local_atm_addr.satm_blli.Layer2Protocol = SAP_FIELD_ANY;
- local_atm_addr.satm_blli.Layer3Protocol = SAP_FIELD_ABSENT;
- local_atm_addr.satm_bhli.HighLayerInfoType = SAP_FIELD_ABSENT;
-
- /* Associate address with endpoint */
- if (ACE_OS::bind ((( ACE_SOCK_Acceptor *)this ) -> get_handle(),
- ACE_reinterpret_cast(struct sockaddr *, &local_atm_addr),
- sizeof local_atm_addr) == -1) {
- ACE_OS::printf( "Acceptor(open): bind %d\n", ::WSAGetLastError());
- ACE_OS::exit (1);
- }
-
- /* Make endpoint listen for service requests */
- if (ACE_OS::listen ((( ACE_SOCK_Acceptor *)this ) -> get_handle(),
- backlog)
- == -1) {
- ACE_OS::printf( "Acceptor(open): listen %d\n", ::WSAGetLastError());
- ACE_OS::exit (1);
- }
-
- return 0;
-#else
- ACE_UNUSED_ARG (remote_sap);
- ACE_UNUSED_ARG (backlog);
- ACE_UNUSED_ARG (params);
-#endif /* ACE_HAS_FORE_ATM_XTI/ACE_HAS_FORE_ATM_WS2 */
-}
-
-int
-ACE_ATM_Acceptor::accept (ACE_ATM_Stream &new_sap,
- ACE_Addr *remote_addr,
- ACE_Time_Value *timeout,
- int restart,
- int reset_new_handle,
- ACE_ATM_Params params,
- ACE_ATM_QoS qos)
-{
- ACE_TRACE ("ACE_ATM_Acceptor::accept");
-#if defined (ACE_HAS_FORE_ATM_XTI)
- ATM_QoS optbuf = qos.get_qos();
-
- return (acceptor_.accept(new_sap.get_stream(),
- remote_addr,
- timeout,
- restart,
- reset_new_handle,
- params.get_rw_flag(),
- params.get_user_data(),
- &optbuf));
-#elif defined (ACE_HAS_FORE_ATM_WS2)
-// return (acceptor_.accept(new_sap.get_stream(),
-// remote_addr,
-// timeout,
-// restart,
-// reset_new_handle));
- ACE_HANDLE n_handle;
- ACE_HANDLE s_handle = (( ACE_SOCK_Acceptor *) this ) -> get_handle();
- struct sockaddr_atm *cli_addr
- = ( struct sockaddr_atm *)remote_addr -> get_addr();
- int caddr_len = sizeof( struct sockaddr_atm );
-
- do {
- n_handle = ACE_OS::accept( s_handle,
- ACE_reinterpret_cast( struct sockaddr *,
- cli_addr ),
- &caddr_len );
- } while ( n_handle == ACE_INVALID_HANDLE && errno == EINTR );
-
- (( ACE_ATM_Addr *)remote_addr ) -> set( cli_addr,
- (( ACE_ATM_Addr *)remote_addr ) -> get_selector());
- (( ACE_IPC_SAP *)&new_sap ) -> set_handle( n_handle );
-
- return 0;
-#else
- ACE_UNUSED_ARG(new_sap);
- ACE_UNUSED_ARG(remote_addr);
- ACE_UNUSED_ARG(timeout);
- ACE_UNUSED_ARG(restart);
- ACE_UNUSED_ARG(reset_new_handle);
- ACE_UNUSED_ARG(params);
- ACE_UNUSED_ARG(qos);
- return (0);
-#endif /* ACE_HAS_FORE_ATM_XTI */
-}
-
-#endif /* ACE_HAS_ATM */
-