summaryrefslogtreecommitdiff
path: root/netsvcs/lib
diff options
context:
space:
mode:
Diffstat (limited to 'netsvcs/lib')
-rw-r--r--netsvcs/lib/Client_Logging_Handler.cpp359
-rw-r--r--netsvcs/lib/Client_Logging_Handler.h25
-rw-r--r--netsvcs/lib/Client_Logging_Handler.i4
-rw-r--r--netsvcs/lib/Logging_Strategy.cpp130
-rw-r--r--netsvcs/lib/Logging_Strategy.h25
-rw-r--r--netsvcs/lib/Makefile478
-rw-r--r--netsvcs/lib/Name_Handler.cpp723
-rw-r--r--netsvcs/lib/Name_Handler.h24
-rw-r--r--netsvcs/lib/README270
-rw-r--r--netsvcs/lib/Server_Logging_Handler.cpp443
-rw-r--r--netsvcs/lib/Server_Logging_Handler.h26
-rw-r--r--netsvcs/lib/Server_Logging_Handler.i4
-rw-r--r--netsvcs/lib/TS_Clerk_Handler.cpp805
-rw-r--r--netsvcs/lib/TS_Clerk_Handler.h23
-rw-r--r--netsvcs/lib/TS_Server_Handler.cpp324
-rw-r--r--netsvcs/lib/TS_Server_Handler.h24
-rw-r--r--netsvcs/lib/Token_Handler.cpp880
-rw-r--r--netsvcs/lib/Token_Handler.h26
-rw-r--r--netsvcs/lib/netsvcs.mak1055
-rw-r--r--netsvcs/lib/netsvcs.mdpbin47616 -> 0 bytes
20 files changed, 0 insertions, 5648 deletions
diff --git a/netsvcs/lib/Client_Logging_Handler.cpp b/netsvcs/lib/Client_Logging_Handler.cpp
deleted file mode 100644
index 20212064353..00000000000
--- a/netsvcs/lib/Client_Logging_Handler.cpp
+++ /dev/null
@@ -1,359 +0,0 @@
-// $Id$
-
-// Client_Logging_Handler.cpp
-
-#define ACE_BUILD_SVC_DLL
-#include "ace/Service_Config.h"
-#include "ace/Connector.h"
-#include "ace/Get_Opt.h"
-#include "ace/SOCK_Connector.h"
-#include "ace/SOCK_Stream.h"
-#include "ace/FIFO_Recv_Msg.h"
-#include "Client_Logging_Handler.h"
-
-class ACE_Svc_Export ACE_Client_Logging_Handler : public ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH>
- // = TITLE
- // This client logging daemon is a mediator that receives logging
- // records from local applications processes and forwards them to
- // the server logging daemon running on another host.
-{
-public:
- // = Initialization and termination.
-
- ACE_Client_Logging_Handler (const char rendezvous[]);
- // Default constructor.
-
- virtual int open (void * = 0);
- // Activate this instance of the <ACE_Client_Logging_Handler>
- // (called by the <ACE_Client_Logging_Connector>).
-
- virtual ACE_HANDLE get_handle (void) const;
- // Return the handle of the message_fifo_;
-
- virtual int close (u_long);
- // Called when object is removed from the ACE_Reactor.
-
-protected:
- virtual int handle_signal (int signum, siginfo_t *, ucontext_t *);
- // Handle SIGPIPE.
-
- virtual int handle_input (ACE_HANDLE);
- // Receive logging records from applications.
-
- virtual int handle_exception (ACE_HANDLE);
- // Receive logging records from applications. This is necessary to handle
- // madness with UNIX select, which can't deal with MSG_BAND data easily due
- // to its overly simple interface... This just calls <handle_input>.
-
- virtual int handle_output (ACE_HANDLE);
- // Called back when it's ok to send.
-
- int send (ACE_Log_Record &log_record);
- // Send the <log_record> to the logging server.
-
- ACE_FIFO_Recv_Msg message_fifo_;
- // Message queue we use to receive logging records from clients.
-
- ACE_HANDLE logging_output_;
- // This is either a SOCKET (if we're connected to a logging server)
- // or ACE_STDOUT.
-
- static void stderr_output (int = 0);
-};
-
-ACE_Client_Logging_Handler::ACE_Client_Logging_Handler (const char rendezvous[])
- : logging_output_ (ACE_STDOUT)
-{
- if (ACE_OS::unlink (rendezvous) == -1 && errno == EACCES)
- ACE_ERROR ((LM_ERROR, "%p\n", "unlink"));
-
- else if (this->message_fifo_.open (rendezvous) == -1)
- ACE_ERROR ((LM_ERROR, "%p\n", "open"));
-
- // Register message FIFO to receive input from clients. Note that
- // we need to put the EXCEPT_MASK here to deal with SVR4 MSG_BAND
- // data correctly...
- else if (ACE_Service_Config::reactor ()->register_handler
- (this->message_fifo_.get_handle (), this,
- ACE_Event_Handler::READ_MASK | ACE_Event_Handler::EXCEPT_MASK) == -1)
- ACE_ERROR ((LM_ERROR, "%n: %p\n",
- "register_handler (message_fifo)"));
- ACE_DEBUG ((LM_DEBUG,
- "opened fifo at %s on handle %d\n",
- rendezvous,
- this->message_fifo_.get_handle ()));
-}
-
-// This is called when a <send> to the logging server fails...
-
-int
-ACE_Client_Logging_Handler::handle_signal (int, siginfo_t *, ucontext_t *)
-{
- ACE_TRACE ("ACE_Client_Logging_Connector::handle_signal");
- return -1;
-}
-
-int
-ACE_Client_Logging_Handler::open (void *)
-{
- ACE_INET_Addr server_addr;
-
- this->logging_output_ = this->peer ().get_handle ();
-
- // Register ourselves to receive SIGPIPE so we can attempt
- // reconnections.
- if (ACE_Service_Config::reactor ()->register_handler (SIGPIPE, this) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%n: %p\n",
- "register_handler (SIGPIPE)"), -1);
-
- // Figure out what remote port we're really bound to.
- else if (this->peer ().get_remote_addr (server_addr) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "get_remote_addr"), -1);
-
- ACE_DEBUG ((LM_DEBUG,
- "starting up Client Logging Daemon, "
- "connected to port %d on handle %d\n",
- server_addr.get_port_number (),
- this->peer ().get_handle ()));
- return 0;
-}
-
-/* VIRTUAL */ ACE_HANDLE
-ACE_Client_Logging_Handler::get_handle (void) const
-{
- ACE_TRACE ("ACE_Client_Logging_Handler::get_handle");
- return this->message_fifo_.get_handle ();
-}
-
-// Receive a logging record from an application.
-
-int
-ACE_Client_Logging_Handler::handle_input (ACE_HANDLE handle)
-{
- if (handle == this->message_fifo_.get_handle ())
- {
- // We're getting a logging message from a local application.
-
- ACE_Log_Record log_record;
- ACE_Str_Buf msg ((void *) &log_record,
- 0, sizeof log_record);
-
- ACE_DEBUG ((LM_DEBUG, "in handle_input\n"));
- if (this->message_fifo_.recv (msg) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "ACE_FIFO_Recv_Msg::recv"), -1);
- else if (this->send (log_record) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "send"), 0);
- return 0;
- }
- else if (handle == this->peer ().get_handle ())
- {
- // We're getting a message from the logging server!
- ACE_ASSERT (!"this shouldn't happen yet...\n");
- }
- return 0;
-}
-
-// Receive a logging record from an application send via a non-0 MSG_BAND...
-// This just calls handle_input().
-
-int
-ACE_Client_Logging_Handler::handle_exception (ACE_HANDLE handle)
-{
- return this->handle_input (handle);
-}
-
-// Called when object is removed from the ACE_Reactor
-
-int
-ACE_Client_Logging_Handler::close (u_long)
-{
- ACE_DEBUG ((LM_DEBUG, "shutting down!!!\n"));
-
- if (ACE_Service_Config::reactor ()->remove_handler
- (this->message_fifo_.get_handle (),
- ACE_Event_Handler::READ_MASK | ACE_Event_Handler::EXCEPT_MASK | ACE_Event_Handler::DONT_CALL) == -1)
- ACE_ERROR ((LM_ERROR, "%n: %p\n",
- "remove_handler (message_fifo)"));
-
- this->message_fifo_.close ();
- this->destroy ();
- return 0;
-}
-
-int
-ACE_Client_Logging_Handler::handle_output (ACE_HANDLE)
-{
- return 0;
-}
-
-// Encodes the contents of log_record object using network byte-order
-// and sends it to the logging server.
-
-int
-ACE_Client_Logging_Handler::send (ACE_Log_Record &log_record)
-{
- if (this->logging_output_ == ACE_STDOUT)
- log_record.print ("<localhost>", 0, stderr);
- else
- {
- long len = log_record.length ();
- long encoded_len = htonl (len);
-
- log_record.encode ();
-
- if (this->peer ().send (4, &encoded_len, sizeof encoded_len,
- (char *) &log_record, len) == -1)
- // Switch over to logging to stdout for now. In the long
- // run, we'll need to queue up the message, try to
- // reestablish a connection, and then send the queued data
- // once we've reconnect to the logging server.
- this->logging_output_ = ACE_STDOUT;
- }
-
- return 0;
-}
-
-class ACE_Client_Logging_Connector : public ACE_Connector<ACE_Client_Logging_Handler, ACE_SOCK_CONNECTOR>
- // = TITLE
- // This class contains the service-specific methods that can't
- // easily be factored into the <ACE_Connector>.
-{
-protected:
- // = Dynamic linking hooks.
- virtual int init (int argc, char *argv[]);
- // Called when service is linked.
-
- virtual int fini (void);
- // Called when service is unlinked.
-
- virtual int info (char **strp, size_t length) const;
- // Called to determine info about the service.
-
- // = Scheduling hooks.
- virtual int suspend (void);
- virtual int resume (void);
-
-private:
- int parse_args (int argc, char *argv[]);
- // Parse svc.conf arguments.
-
- const char *server_host_;
- // Host where the logging server is located.
-
- u_short server_port_;
- // Port number where the logging server is listening for
- // connections.
-
- ACE_INET_Addr server_addr_;
- // Address of the logging server.
-
- const char *rendezvous_key_;
- // Filename where the FIFO will listen for application logging
- // records.
-
- ACE_Client_Logging_Handler *handler_;
- // Pointer to the handler that does the work.
-};
-
-int
-ACE_Client_Logging_Connector::fini (void)
-{
- this->handler_->close (0);
- return 0;
-}
-
-int
-ACE_Client_Logging_Connector::info (char **strp, size_t length) const
-{
- char buf[BUFSIZ];
-
- ACE_OS::sprintf (buf, "%d/%s %s",
- this->server_addr_.get_port_number (), "tcp",
- "# client logging daemon\n");
-
- if (*strp == 0 && (*strp = ACE_OS::strdup (buf)) == 0)
- return -1;
- else
- ACE_OS::strncpy (*strp, buf, length);
- return ACE_OS::strlen (buf);
-}
-
-int
-ACE_Client_Logging_Connector::init (int argc, char *argv[])
-{
- ACE_LOG_MSG->open ("Client Logging Service");
-
- // Use the options hook to parse the command line arguments and set
- // options.
- this->parse_args (argc, argv);
-
- ACE_NEW_RETURN (this->handler_,
- ACE_Client_Logging_Handler (this->rendezvous_key_),
- -1);
-
- // Establish connection with the server.
- if (this->connect (this->handler_,
- this->server_addr_,
- ACE_Synch_Options::synch) == -1)
- ACE_ERROR ((LM_ERROR, "%p, using stdout\n",
- "can't connect to logging server"));
- return 0;
-}
-
-int
-ACE_Client_Logging_Connector::parse_args (int argc, char *argv[])
-{
- this->rendezvous_key_ = ACE_DEFAULT_RENDEZVOUS;
- this->server_port_ = ACE_DEFAULT_LOGGING_SERVER_PORT;
- this->server_host_ = ACE_DEFAULT_SERVER_HOST;
-
- ACE_Get_Opt get_opt (argc, argv, "h:k:p:", 0);
-
- for (int c; (c = get_opt ()) != -1; )
- {
- switch (c)
- {
- case 'h':
- this->server_host_ = get_opt.optarg;
- break;
- case 'k':
- this->rendezvous_key_ = get_opt.optarg;
- break;
- case 'p':
- this->server_port_ = ACE_OS::atoi (get_opt.optarg);
- break;
- default:
- ACE_ERROR_RETURN ((LM_ERROR,
- "%n:\n[-p server-port]\n%a", 1),
- -1);
- break;
- }
- }
-
- this->server_addr_.set (this->server_port_, this->server_host_);
- return 0;
-}
-
-int
-ACE_Client_Logging_Connector::suspend (void)
-{
- // To be done...
- return 0;
-}
-
-int
-ACE_Client_Logging_Connector::resume (void)
-{
- // To be done...
- return 0;
-}
-
-// The following is a "Factory" used by the ACE_Service_Config and
-// svc.conf file to dynamically initialize the state of the
-// single-threaded logging server.
-
-ACE_SVC_FACTORY_DEFINE (ACE_Client_Logging_Connector)
-
-#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
-template class ACE_Connector<ACE_Client_Logging_Handler, ACE_SOCK_CONNECTOR>;
-#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/netsvcs/lib/Client_Logging_Handler.h b/netsvcs/lib/Client_Logging_Handler.h
deleted file mode 100644
index 04e5ae9a0de..00000000000
--- a/netsvcs/lib/Client_Logging_Handler.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/* -*- C++ -*- */
-// $Id$
-
-
-// ============================================================================
-//
-// = LIBRARY
-// ace
-//
-// = FILENAME
-// Client_Logging_Handler.h
-//
-// = AUTHOR
-// Doug Schmidt
-//
-// ============================================================================
-
-#if !defined (ACE_CLIENT_LOGGER_H)
-#define ACE_CLIENT_LOGGER_H
-
-#include "ace/OS.h"
-
-ACE_SVC_FACTORY_DECLARE (ACE_Client_Logging_Connector)
-
-#endif /* ACE_CLIENT_LOGGER_H */
diff --git a/netsvcs/lib/Client_Logging_Handler.i b/netsvcs/lib/Client_Logging_Handler.i
deleted file mode 100644
index 57c6d26e751..00000000000
--- a/netsvcs/lib/Client_Logging_Handler.i
+++ /dev/null
@@ -1,4 +0,0 @@
-/* -*- C++ -*- */
-// $Id$
-
-
diff --git a/netsvcs/lib/Logging_Strategy.cpp b/netsvcs/lib/Logging_Strategy.cpp
deleted file mode 100644
index a0cddc36176..00000000000
--- a/netsvcs/lib/Logging_Strategy.cpp
+++ /dev/null
@@ -1,130 +0,0 @@
-// Logging_Strategy.cpp
-// $Id$
-
-#define ACE_BUILD_SVC_DLL
-#include "iostream.h"
-#include "fstream.h"
-#include "ace/Get_Opt.h"
-
-#include "ace/Service_Object.h"
-#include "Logging_Strategy.h"
-
-class ACE_Logging_Strategy : public ACE_Service_Object
- // = TITLE
- // This class provides the hooks to control the output produced
- // by any of the network services.
- //
- // = DESCRIPTION
- // Depending upon when this service is invoked and with what
- // flags, the output of other network services can be
- // controlled. The output can be streamed to stderr, to a file,
- // to a logging daemon, or it can be set to be "silent".
-{
-public:
- virtual int init (int argc, char *argv[]);
- // Dynamic linking hook.
-
- int parse_args (int argc, char *argv[]);
- // Parse svc.conf arguments.
-private:
- void tokenize (char *flag_string);
- // Tokenize to set all the flags
- u_long flags_;
- char *filename_;
-};
-
-// Parse the string containing all the flags and set the flags accordingly
-void
-ACE_Logging_Strategy::tokenize (char *flag_string)
-{
- char *flag;
- if ((flag = ACE_OS::strtok (flag_string, "|")) != NULL)
- {
- while (flag)
- {
- if (ACE_OS::strcmp (flag, "STDERR") == 0)
- ACE_SET_BITS (this->flags_, ACE_Log_Msg::STDERR);
- else if (ACE_OS::strcmp (flag, "LOGGER") == 0)
- ACE_SET_BITS (this->flags_, ACE_Log_Msg::LOGGER);
- else if (ACE_OS::strcmp (flag, "OSTREAM") == 0)
- ACE_SET_BITS (this->flags_, ACE_Log_Msg::OSTREAM);
- else if (ACE_OS::strcmp (flag, "VERBOSE") == 0)
- ACE_SET_BITS (this->flags_, ACE_Log_Msg::VERBOSE);
- else if (ACE_OS::strcmp (flag, "SILENT") == 0)
- ACE_SET_BITS (this->flags_, ACE_Log_Msg::SILENT);
-
- // Get the next flag
- flag = ACE_OS::strtok(0, "|");
- }
- }
-}
-
-int
-ACE_Logging_Strategy::parse_args (int argc, char *argv[])
-{
- ACE_TRACE ("ACE_Logging_Strategy::parse_args");
- char *temp;
-
- this->flags_ = 0;
- this->filename_ = ACE_DEFAULT_LOGFILE;
-
- ACE_LOG_MSG->open ("Logging_Strategy");
-
- ACE_Get_Opt get_opt (argc, argv, "f:s:", 0);
-
- for (int c; (c = get_opt ()) != -1; )
- {
- switch (c)
- {
- case 'f':
- temp = get_opt.optarg;
- // Now tokenize the string to get all the flags
- this->tokenize (temp);
- break;
- case 's':
- // Ensure that the OSTREAM flag is set
- ACE_SET_BITS (this->flags_, ACE_Log_Msg::OSTREAM);
- this->filename_ = get_opt.optarg;
- break;
- default:
- break;
- }
- }
- return 0;
-}
-
-int
-ACE_Logging_Strategy::init (int argc, char *argv[])
-{
- ACE_TRACE ("ACE_Logging_Strategy::init");
-
- // Use the options hook to parse the command line arguments.
- this->parse_args (argc, argv);
-
- // Check if any flags were specified. If none were specified, let
- // the default behavior take effect.
- if (this->flags_ != 0)
- {
- // Clear all flags
- ACE_Log_Msg::instance()->clr_flags (ACE_Log_Msg::STDERR |
- ACE_Log_Msg::LOGGER |
- ACE_Log_Msg::OSTREAM |
- ACE_Log_Msg::VERBOSE |
- ACE_Log_Msg::SILENT);
- // Check if OSTREAM bit is set
- if (ACE_BIT_ENABLED (this->flags_, ACE_Log_Msg::OSTREAM))
- {
- // Create a new ofstream to direct output to the file
- ofstream *output_file = new ofstream (this->filename_);
- ACE_Log_Msg::instance()->msg_ostream (output_file);
- }
- // Now set the flags for Log_Msg
- ACE_Log_Msg::instance()->set_flags (this->flags_);
- }
- return 0;
-}
-
-// The following is a "Factory" used by the ACE_Service_Config and
-// svc.conf file to dynamically initialize the state of the Logging_Strategy.
-
-ACE_SVC_FACTORY_DEFINE (ACE_Logging_Strategy)
diff --git a/netsvcs/lib/Logging_Strategy.h b/netsvcs/lib/Logging_Strategy.h
deleted file mode 100644
index 733003eebae..00000000000
--- a/netsvcs/lib/Logging_Strategy.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/* -*- C++ -*- */
-// $Id$
-
-
-// ============================================================================
-//
-// = LIBRARY
-// ace
-//
-// = FILENAME
-// Logging_Strategy.h
-//
-// = AUTHOR
-// Prashant Jain
-//
-// ============================================================================
-
-#if !defined (ACE_LOGGING_STRATEGY_H)
-#define ACE_LOGGING_STRATEGY_H
-
-#include "ace/OS.h"
-
-ACE_SVC_FACTORY_DECLARE (ACE_Logging_Strategy)
-
-#endif /* ACE_LOGGING_STRATEGY_H */
diff --git a/netsvcs/lib/Makefile b/netsvcs/lib/Makefile
deleted file mode 100644
index 7f2caec6a8c..00000000000
--- a/netsvcs/lib/Makefile
+++ /dev/null
@@ -1,478 +0,0 @@
-#----------------------------------------------------------------------------
-# @(#)Makefile 1.1 10/18/96
-#
-# Makefile for the server-side ACE network services
-#----------------------------------------------------------------------------
-
-#LIB = libnet_svcs.a
-SHLIB = libnet_svcs.so
-
-FILES = TS_Server_Handler \
- TS_Clerk_Handler \
- Client_Logging_Handler \
- Name_Handler \
- Server_Logging_Handler \
- Token_Handler \
- Logging_Strategy
-
-DEFS = $(addsuffix .h,$(FILES))
-LSRC = $(addsuffix .cpp,$(FILES))
-
-LIBS += -lACE
-
-BUILD = $(VLIB) $(VSHLIB)
-
-#----------------------------------------------------------------------------
-# Include macros and targets
-#----------------------------------------------------------------------------
-
-include $(WRAPPER_ROOT)/include/makeinclude/wrapper_macros.GNU
-include $(WRAPPER_ROOT)/include/makeinclude/macros.GNU
-include $(WRAPPER_ROOT)/include/makeinclude/rules.common.GNU
-include $(WRAPPER_ROOT)/include/makeinclude/rules.nonested.GNU
-include $(WRAPPER_ROOT)/include/makeinclude/rules.lib.GNU
-include $(WRAPPER_ROOT)/include/makeinclude/rules.local.GNU
-
-#----------------------------------------------------------------------------
-# Dependencies
-#----------------------------------------------------------------------------
-# DO NOT DELETE THIS LINE -- g++dep uses it.
-# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
-
-.obj/TS_Server_Handler.o .shobj/TS_Server_Handler.so: TS_Server_Handler.cpp \
- $(WRAPPER_ROOT)/ace/SString.h \
- $(WRAPPER_ROOT)/ace/ACE.h \
- $(WRAPPER_ROOT)/ace/OS.h \
- $(WRAPPER_ROOT)/ace/Time_Value.h \
- $(WRAPPER_ROOT)/ace/config.h \
- $(WRAPPER_ROOT)/ace/stdcpp.h \
- $(WRAPPER_ROOT)/ace/Trace.h \
- $(WRAPPER_ROOT)/ace/Log_Msg.h \
- $(WRAPPER_ROOT)/ace/Log_Record.h \
- $(WRAPPER_ROOT)/ace/Log_Priority.h \
- $(WRAPPER_ROOT)/ace/Log_Record.i \
- $(WRAPPER_ROOT)/ace/ACE.i \
- $(WRAPPER_ROOT)/ace/Set.h \
- $(WRAPPER_ROOT)/ace/Get_Opt.h \
- $(WRAPPER_ROOT)/ace/Acceptor.h \
- $(WRAPPER_ROOT)/ace/Service_Config.h \
- $(WRAPPER_ROOT)/ace/Service_Object.h \
- $(WRAPPER_ROOT)/ace/Shared_Object.h \
- $(WRAPPER_ROOT)/ace/Event_Handler.h \
- $(WRAPPER_ROOT)/ace/Thread_Manager.h \
- $(WRAPPER_ROOT)/ace/Thread.h \
- $(WRAPPER_ROOT)/ace/Synch.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Complex.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Simple.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Simple.i \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Complex.i \
- $(WRAPPER_ROOT)/ace/Synch_T.h \
- $(WRAPPER_ROOT)/ace/Signal.h \
- $(WRAPPER_ROOT)/ace/Reactor.h \
- $(WRAPPER_ROOT)/ace/Handle_Set.h \
- $(WRAPPER_ROOT)/ace/Timer_Queue.h \
- $(WRAPPER_ROOT)/ace/Token.h \
- $(WRAPPER_ROOT)/ace/Pipe.h \
- $(WRAPPER_ROOT)/ace/Pipe.i \
- $(WRAPPER_ROOT)/ace/SOCK_Stream.h \
- $(WRAPPER_ROOT)/ace/SOCK_IO.h \
- $(WRAPPER_ROOT)/ace/SOCK.h \
- $(WRAPPER_ROOT)/ace/Addr.h \
- $(WRAPPER_ROOT)/ace/IPC_SAP.h \
- $(WRAPPER_ROOT)/ace/IPC_SAP.i \
- $(WRAPPER_ROOT)/ace/SOCK.i \
- $(WRAPPER_ROOT)/ace/SOCK_IO.i \
- $(WRAPPER_ROOT)/ace/INET_Addr.h \
- $(WRAPPER_ROOT)/ace/SOCK_Stream.i \
- $(WRAPPER_ROOT)/ace/Reactor.i \
- $(WRAPPER_ROOT)/ace/Proactor.h \
- $(WRAPPER_ROOT)/ace/Message_Block.h \
- $(WRAPPER_ROOT)/ace/Malloc.h \
- $(WRAPPER_ROOT)/ace/Malloc_T.h \
- $(WRAPPER_ROOT)/ace/Memory_Pool.h \
- $(WRAPPER_ROOT)/ace/Mem_Map.h \
- $(WRAPPER_ROOT)/ace/ReactorEx.h \
- $(WRAPPER_ROOT)/ace/Message_Queue.h \
- $(WRAPPER_ROOT)/ace/IO_Cntl_Msg.h \
- $(WRAPPER_ROOT)/ace/Strategies.h \
- $(WRAPPER_ROOT)/ace/Strategies_T.h \
- $(WRAPPER_ROOT)/ace/Svc_Conf_Tokens.h \
- $(WRAPPER_ROOT)/ace/Svc_Handler.h \
- $(WRAPPER_ROOT)/ace/Synch_Options.h \
- $(WRAPPER_ROOT)/ace/Task.h \
- $(WRAPPER_ROOT)/ace/Task_T.h \
- $(WRAPPER_ROOT)/ace/Acceptor.i \
- $(WRAPPER_ROOT)/ace/SOCK_Acceptor.h \
- $(WRAPPER_ROOT)/ace/Time_Request_Reply.h \
- TS_Server_Handler.h
-.obj/TS_Clerk_Handler.o .shobj/TS_Clerk_Handler.so: TS_Clerk_Handler.cpp \
- $(WRAPPER_ROOT)/ace/Service_Config.h \
- $(WRAPPER_ROOT)/ace/Service_Object.h \
- $(WRAPPER_ROOT)/ace/Shared_Object.h \
- $(WRAPPER_ROOT)/ace/ACE.h \
- $(WRAPPER_ROOT)/ace/OS.h \
- $(WRAPPER_ROOT)/ace/Time_Value.h \
- $(WRAPPER_ROOT)/ace/config.h \
- $(WRAPPER_ROOT)/ace/stdcpp.h \
- $(WRAPPER_ROOT)/ace/Trace.h \
- $(WRAPPER_ROOT)/ace/Log_Msg.h \
- $(WRAPPER_ROOT)/ace/Log_Record.h \
- $(WRAPPER_ROOT)/ace/Log_Priority.h \
- $(WRAPPER_ROOT)/ace/Log_Record.i \
- $(WRAPPER_ROOT)/ace/ACE.i \
- $(WRAPPER_ROOT)/ace/Event_Handler.h \
- $(WRAPPER_ROOT)/ace/Thread_Manager.h \
- $(WRAPPER_ROOT)/ace/Thread.h \
- $(WRAPPER_ROOT)/ace/Synch.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Complex.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Simple.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Simple.i \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Complex.i \
- $(WRAPPER_ROOT)/ace/Synch_T.h \
- $(WRAPPER_ROOT)/ace/Signal.h \
- $(WRAPPER_ROOT)/ace/Set.h \
- $(WRAPPER_ROOT)/ace/Reactor.h \
- $(WRAPPER_ROOT)/ace/Handle_Set.h \
- $(WRAPPER_ROOT)/ace/Timer_Queue.h \
- $(WRAPPER_ROOT)/ace/Token.h \
- $(WRAPPER_ROOT)/ace/Pipe.h \
- $(WRAPPER_ROOT)/ace/Pipe.i \
- $(WRAPPER_ROOT)/ace/SOCK_Stream.h \
- $(WRAPPER_ROOT)/ace/SOCK_IO.h \
- $(WRAPPER_ROOT)/ace/SOCK.h \
- $(WRAPPER_ROOT)/ace/Addr.h \
- $(WRAPPER_ROOT)/ace/IPC_SAP.h \
- $(WRAPPER_ROOT)/ace/IPC_SAP.i \
- $(WRAPPER_ROOT)/ace/SOCK.i \
- $(WRAPPER_ROOT)/ace/SOCK_IO.i \
- $(WRAPPER_ROOT)/ace/INET_Addr.h \
- $(WRAPPER_ROOT)/ace/SOCK_Stream.i \
- $(WRAPPER_ROOT)/ace/Reactor.i \
- $(WRAPPER_ROOT)/ace/Proactor.h \
- $(WRAPPER_ROOT)/ace/Message_Block.h \
- $(WRAPPER_ROOT)/ace/Malloc.h \
- $(WRAPPER_ROOT)/ace/Malloc_T.h \
- $(WRAPPER_ROOT)/ace/Memory_Pool.h \
- $(WRAPPER_ROOT)/ace/Mem_Map.h \
- $(WRAPPER_ROOT)/ace/ReactorEx.h \
- $(WRAPPER_ROOT)/ace/Message_Queue.h \
- $(WRAPPER_ROOT)/ace/IO_Cntl_Msg.h \
- $(WRAPPER_ROOT)/ace/Strategies.h \
- $(WRAPPER_ROOT)/ace/Strategies_T.h \
- $(WRAPPER_ROOT)/ace/Svc_Conf_Tokens.h \
- $(WRAPPER_ROOT)/ace/Connector.h \
- $(WRAPPER_ROOT)/ace/Map_Manager.h \
- $(WRAPPER_ROOT)/ace/Svc_Handler.h \
- $(WRAPPER_ROOT)/ace/Synch_Options.h \
- $(WRAPPER_ROOT)/ace/Task.h \
- $(WRAPPER_ROOT)/ace/Task_T.h \
- $(WRAPPER_ROOT)/ace/Connector.i \
- $(WRAPPER_ROOT)/ace/Get_Opt.h \
- $(WRAPPER_ROOT)/ace/SOCK_Connector.h \
- $(WRAPPER_ROOT)/ace/SOCK_Connector.i \
- $(WRAPPER_ROOT)/ace/Time_Request_Reply.h \
- $(WRAPPER_ROOT)/ace/SString.h \
- TS_Clerk_Handler.h
-.obj/Client_Logging_Handler.o .shobj/Client_Logging_Handler.so: Client_Logging_Handler.cpp \
- $(WRAPPER_ROOT)/ace/Service_Config.h \
- $(WRAPPER_ROOT)/ace/Service_Object.h \
- $(WRAPPER_ROOT)/ace/Shared_Object.h \
- $(WRAPPER_ROOT)/ace/ACE.h \
- $(WRAPPER_ROOT)/ace/OS.h \
- $(WRAPPER_ROOT)/ace/Time_Value.h \
- $(WRAPPER_ROOT)/ace/config.h \
- $(WRAPPER_ROOT)/ace/stdcpp.h \
- $(WRAPPER_ROOT)/ace/Trace.h \
- $(WRAPPER_ROOT)/ace/Log_Msg.h \
- $(WRAPPER_ROOT)/ace/Log_Record.h \
- $(WRAPPER_ROOT)/ace/Log_Priority.h \
- $(WRAPPER_ROOT)/ace/Log_Record.i \
- $(WRAPPER_ROOT)/ace/ACE.i \
- $(WRAPPER_ROOT)/ace/Event_Handler.h \
- $(WRAPPER_ROOT)/ace/Thread_Manager.h \
- $(WRAPPER_ROOT)/ace/Thread.h \
- $(WRAPPER_ROOT)/ace/Synch.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Complex.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Simple.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Simple.i \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Complex.i \
- $(WRAPPER_ROOT)/ace/Synch_T.h \
- $(WRAPPER_ROOT)/ace/Signal.h \
- $(WRAPPER_ROOT)/ace/Set.h \
- $(WRAPPER_ROOT)/ace/Reactor.h \
- $(WRAPPER_ROOT)/ace/Handle_Set.h \
- $(WRAPPER_ROOT)/ace/Timer_Queue.h \
- $(WRAPPER_ROOT)/ace/Token.h \
- $(WRAPPER_ROOT)/ace/Pipe.h \
- $(WRAPPER_ROOT)/ace/Pipe.i \
- $(WRAPPER_ROOT)/ace/SOCK_Stream.h \
- $(WRAPPER_ROOT)/ace/SOCK_IO.h \
- $(WRAPPER_ROOT)/ace/SOCK.h \
- $(WRAPPER_ROOT)/ace/Addr.h \
- $(WRAPPER_ROOT)/ace/IPC_SAP.h \
- $(WRAPPER_ROOT)/ace/IPC_SAP.i \
- $(WRAPPER_ROOT)/ace/SOCK.i \
- $(WRAPPER_ROOT)/ace/SOCK_IO.i \
- $(WRAPPER_ROOT)/ace/INET_Addr.h \
- $(WRAPPER_ROOT)/ace/SOCK_Stream.i \
- $(WRAPPER_ROOT)/ace/Reactor.i \
- $(WRAPPER_ROOT)/ace/Proactor.h \
- $(WRAPPER_ROOT)/ace/Message_Block.h \
- $(WRAPPER_ROOT)/ace/Malloc.h \
- $(WRAPPER_ROOT)/ace/Malloc_T.h \
- $(WRAPPER_ROOT)/ace/Memory_Pool.h \
- $(WRAPPER_ROOT)/ace/Mem_Map.h \
- $(WRAPPER_ROOT)/ace/ReactorEx.h \
- $(WRAPPER_ROOT)/ace/Message_Queue.h \
- $(WRAPPER_ROOT)/ace/IO_Cntl_Msg.h \
- $(WRAPPER_ROOT)/ace/Strategies.h \
- $(WRAPPER_ROOT)/ace/Strategies_T.h \
- $(WRAPPER_ROOT)/ace/Svc_Conf_Tokens.h \
- $(WRAPPER_ROOT)/ace/Connector.h \
- $(WRAPPER_ROOT)/ace/Map_Manager.h \
- $(WRAPPER_ROOT)/ace/Svc_Handler.h \
- $(WRAPPER_ROOT)/ace/Synch_Options.h \
- $(WRAPPER_ROOT)/ace/Task.h \
- $(WRAPPER_ROOT)/ace/Task_T.h \
- $(WRAPPER_ROOT)/ace/Connector.i \
- $(WRAPPER_ROOT)/ace/Get_Opt.h \
- $(WRAPPER_ROOT)/ace/SOCK_Connector.h \
- $(WRAPPER_ROOT)/ace/SOCK_Connector.i \
- $(WRAPPER_ROOT)/ace/FIFO_Recv_Msg.h \
- $(WRAPPER_ROOT)/ace/FIFO_Recv.h \
- $(WRAPPER_ROOT)/ace/FIFO.h \
- $(WRAPPER_ROOT)/ace/FIFO_Recv.i \
- $(WRAPPER_ROOT)/ace/FIFO_Recv_Msg.i \
- Client_Logging_Handler.h
-.obj/Name_Handler.o .shobj/Name_Handler.so: Name_Handler.cpp \
- $(WRAPPER_ROOT)/ace/SString.h \
- $(WRAPPER_ROOT)/ace/ACE.h \
- $(WRAPPER_ROOT)/ace/OS.h \
- $(WRAPPER_ROOT)/ace/Time_Value.h \
- $(WRAPPER_ROOT)/ace/config.h \
- $(WRAPPER_ROOT)/ace/stdcpp.h \
- $(WRAPPER_ROOT)/ace/Trace.h \
- $(WRAPPER_ROOT)/ace/Log_Msg.h \
- $(WRAPPER_ROOT)/ace/Log_Record.h \
- $(WRAPPER_ROOT)/ace/Log_Priority.h \
- $(WRAPPER_ROOT)/ace/Log_Record.i \
- $(WRAPPER_ROOT)/ace/ACE.i \
- $(WRAPPER_ROOT)/ace/Set.h \
- $(WRAPPER_ROOT)/ace/Get_Opt.h \
- $(WRAPPER_ROOT)/ace/Naming_Context.h \
- $(WRAPPER_ROOT)/ace/Service_Object.h \
- $(WRAPPER_ROOT)/ace/Shared_Object.h \
- $(WRAPPER_ROOT)/ace/Event_Handler.h \
- $(WRAPPER_ROOT)/ace/Name_Proxy.h \
- $(WRAPPER_ROOT)/ace/INET_Addr.h \
- $(WRAPPER_ROOT)/ace/Addr.h \
- $(WRAPPER_ROOT)/ace/SOCK_Connector.h \
- $(WRAPPER_ROOT)/ace/SOCK_Stream.h \
- $(WRAPPER_ROOT)/ace/SOCK_IO.h \
- $(WRAPPER_ROOT)/ace/SOCK.h \
- $(WRAPPER_ROOT)/ace/IPC_SAP.h \
- $(WRAPPER_ROOT)/ace/IPC_SAP.i \
- $(WRAPPER_ROOT)/ace/SOCK.i \
- $(WRAPPER_ROOT)/ace/SOCK_IO.i \
- $(WRAPPER_ROOT)/ace/SOCK_Stream.i \
- $(WRAPPER_ROOT)/ace/SOCK_Connector.i \
- $(WRAPPER_ROOT)/ace/Service_Config.h \
- $(WRAPPER_ROOT)/ace/Thread_Manager.h \
- $(WRAPPER_ROOT)/ace/Thread.h \
- $(WRAPPER_ROOT)/ace/Synch.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Complex.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Simple.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Simple.i \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Complex.i \
- $(WRAPPER_ROOT)/ace/Synch_T.h \
- $(WRAPPER_ROOT)/ace/Signal.h \
- $(WRAPPER_ROOT)/ace/Reactor.h \
- $(WRAPPER_ROOT)/ace/Handle_Set.h \
- $(WRAPPER_ROOT)/ace/Timer_Queue.h \
- $(WRAPPER_ROOT)/ace/Token.h \
- $(WRAPPER_ROOT)/ace/Pipe.h \
- $(WRAPPER_ROOT)/ace/Pipe.i \
- $(WRAPPER_ROOT)/ace/Reactor.i \
- $(WRAPPER_ROOT)/ace/Proactor.h \
- $(WRAPPER_ROOT)/ace/Message_Block.h \
- $(WRAPPER_ROOT)/ace/Malloc.h \
- $(WRAPPER_ROOT)/ace/Malloc_T.h \
- $(WRAPPER_ROOT)/ace/Memory_Pool.h \
- $(WRAPPER_ROOT)/ace/Mem_Map.h \
- $(WRAPPER_ROOT)/ace/ReactorEx.h \
- $(WRAPPER_ROOT)/ace/Message_Queue.h \
- $(WRAPPER_ROOT)/ace/IO_Cntl_Msg.h \
- $(WRAPPER_ROOT)/ace/Strategies.h \
- $(WRAPPER_ROOT)/ace/Strategies_T.h \
- $(WRAPPER_ROOT)/ace/Svc_Conf_Tokens.h \
- $(WRAPPER_ROOT)/ace/Synch_Options.h \
- $(WRAPPER_ROOT)/ace/Name_Request_Reply.h \
- $(WRAPPER_ROOT)/ace/Name_Space.h \
- $(WRAPPER_ROOT)/ace/Acceptor.h \
- $(WRAPPER_ROOT)/ace/Svc_Handler.h \
- $(WRAPPER_ROOT)/ace/Task.h \
- $(WRAPPER_ROOT)/ace/Task_T.h \
- $(WRAPPER_ROOT)/ace/Acceptor.i \
- $(WRAPPER_ROOT)/ace/SOCK_Acceptor.h \
- Name_Handler.h
-.obj/Server_Logging_Handler.o .shobj/Server_Logging_Handler.so: Server_Logging_Handler.cpp \
- $(WRAPPER_ROOT)/ace/Synch.h \
- $(WRAPPER_ROOT)/ace/ACE.h \
- $(WRAPPER_ROOT)/ace/OS.h \
- $(WRAPPER_ROOT)/ace/Time_Value.h \
- $(WRAPPER_ROOT)/ace/config.h \
- $(WRAPPER_ROOT)/ace/stdcpp.h \
- $(WRAPPER_ROOT)/ace/Trace.h \
- $(WRAPPER_ROOT)/ace/Log_Msg.h \
- $(WRAPPER_ROOT)/ace/Log_Record.h \
- $(WRAPPER_ROOT)/ace/Log_Priority.h \
- $(WRAPPER_ROOT)/ace/Log_Record.i \
- $(WRAPPER_ROOT)/ace/ACE.i \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Complex.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Simple.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Simple.i \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Complex.i \
- $(WRAPPER_ROOT)/ace/Synch_T.h \
- $(WRAPPER_ROOT)/ace/Event_Handler.h \
- $(WRAPPER_ROOT)/ace/TLI_Acceptor.h \
- $(WRAPPER_ROOT)/ace/TLI.h \
- $(WRAPPER_ROOT)/ace/IPC_SAP.h \
- $(WRAPPER_ROOT)/ace/IPC_SAP.i \
- $(WRAPPER_ROOT)/ace/Addr.h \
- $(WRAPPER_ROOT)/ace/TLI.i \
- $(WRAPPER_ROOT)/ace/TLI_Stream.h \
- $(WRAPPER_ROOT)/ace/INET_Addr.h \
- $(WRAPPER_ROOT)/ace/TLI_Stream.i \
- $(WRAPPER_ROOT)/ace/TLI_Acceptor.i \
- $(WRAPPER_ROOT)/ace/SOCK_Acceptor.h \
- $(WRAPPER_ROOT)/ace/SOCK_Stream.h \
- $(WRAPPER_ROOT)/ace/SOCK_IO.h \
- $(WRAPPER_ROOT)/ace/SOCK.h \
- $(WRAPPER_ROOT)/ace/SOCK.i \
- $(WRAPPER_ROOT)/ace/SOCK_IO.i \
- $(WRAPPER_ROOT)/ace/SOCK_Stream.i \
- $(WRAPPER_ROOT)/ace/Get_Opt.h \
- $(WRAPPER_ROOT)/ace/Acceptor.h \
- $(WRAPPER_ROOT)/ace/Service_Config.h \
- $(WRAPPER_ROOT)/ace/Service_Object.h \
- $(WRAPPER_ROOT)/ace/Shared_Object.h \
- $(WRAPPER_ROOT)/ace/Thread_Manager.h \
- $(WRAPPER_ROOT)/ace/Thread.h \
- $(WRAPPER_ROOT)/ace/Signal.h \
- $(WRAPPER_ROOT)/ace/Set.h \
- $(WRAPPER_ROOT)/ace/Reactor.h \
- $(WRAPPER_ROOT)/ace/Handle_Set.h \
- $(WRAPPER_ROOT)/ace/Timer_Queue.h \
- $(WRAPPER_ROOT)/ace/Token.h \
- $(WRAPPER_ROOT)/ace/Pipe.h \
- $(WRAPPER_ROOT)/ace/Pipe.i \
- $(WRAPPER_ROOT)/ace/Reactor.i \
- $(WRAPPER_ROOT)/ace/Proactor.h \
- $(WRAPPER_ROOT)/ace/Message_Block.h \
- $(WRAPPER_ROOT)/ace/Malloc.h \
- $(WRAPPER_ROOT)/ace/Malloc_T.h \
- $(WRAPPER_ROOT)/ace/Memory_Pool.h \
- $(WRAPPER_ROOT)/ace/Mem_Map.h \
- $(WRAPPER_ROOT)/ace/ReactorEx.h \
- $(WRAPPER_ROOT)/ace/Message_Queue.h \
- $(WRAPPER_ROOT)/ace/IO_Cntl_Msg.h \
- $(WRAPPER_ROOT)/ace/Strategies.h \
- $(WRAPPER_ROOT)/ace/Strategies_T.h \
- $(WRAPPER_ROOT)/ace/Svc_Conf_Tokens.h \
- $(WRAPPER_ROOT)/ace/Svc_Handler.h \
- $(WRAPPER_ROOT)/ace/Synch_Options.h \
- $(WRAPPER_ROOT)/ace/Task.h \
- $(WRAPPER_ROOT)/ace/Task_T.h \
- $(WRAPPER_ROOT)/ace/Acceptor.i \
- Server_Logging_Handler.h
-.obj/Token_Handler.o .shobj/Token_Handler.so: Token_Handler.cpp \
- $(WRAPPER_ROOT)/ace/Get_Opt.h \
- $(WRAPPER_ROOT)/ace/ACE.h \
- $(WRAPPER_ROOT)/ace/OS.h \
- $(WRAPPER_ROOT)/ace/Time_Value.h \
- $(WRAPPER_ROOT)/ace/config.h \
- $(WRAPPER_ROOT)/ace/stdcpp.h \
- $(WRAPPER_ROOT)/ace/Trace.h \
- $(WRAPPER_ROOT)/ace/Log_Msg.h \
- $(WRAPPER_ROOT)/ace/Log_Record.h \
- $(WRAPPER_ROOT)/ace/Log_Priority.h \
- $(WRAPPER_ROOT)/ace/Log_Record.i \
- $(WRAPPER_ROOT)/ace/ACE.i \
- $(WRAPPER_ROOT)/ace/Acceptor.h \
- $(WRAPPER_ROOT)/ace/Service_Config.h \
- $(WRAPPER_ROOT)/ace/Service_Object.h \
- $(WRAPPER_ROOT)/ace/Shared_Object.h \
- $(WRAPPER_ROOT)/ace/Event_Handler.h \
- $(WRAPPER_ROOT)/ace/Thread_Manager.h \
- $(WRAPPER_ROOT)/ace/Thread.h \
- $(WRAPPER_ROOT)/ace/Synch.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Complex.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Simple.h \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Simple.i \
- $(WRAPPER_ROOT)/ace/SV_Semaphore_Complex.i \
- $(WRAPPER_ROOT)/ace/Synch_T.h \
- $(WRAPPER_ROOT)/ace/Signal.h \
- $(WRAPPER_ROOT)/ace/Set.h \
- $(WRAPPER_ROOT)/ace/Reactor.h \
- $(WRAPPER_ROOT)/ace/Handle_Set.h \
- $(WRAPPER_ROOT)/ace/Timer_Queue.h \
- $(WRAPPER_ROOT)/ace/Token.h \
- $(WRAPPER_ROOT)/ace/Pipe.h \
- $(WRAPPER_ROOT)/ace/Pipe.i \
- $(WRAPPER_ROOT)/ace/SOCK_Stream.h \
- $(WRAPPER_ROOT)/ace/SOCK_IO.h \
- $(WRAPPER_ROOT)/ace/SOCK.h \
- $(WRAPPER_ROOT)/ace/Addr.h \
- $(WRAPPER_ROOT)/ace/IPC_SAP.h \
- $(WRAPPER_ROOT)/ace/IPC_SAP.i \
- $(WRAPPER_ROOT)/ace/SOCK.i \
- $(WRAPPER_ROOT)/ace/SOCK_IO.i \
- $(WRAPPER_ROOT)/ace/INET_Addr.h \
- $(WRAPPER_ROOT)/ace/SOCK_Stream.i \
- $(WRAPPER_ROOT)/ace/Reactor.i \
- $(WRAPPER_ROOT)/ace/Proactor.h \
- $(WRAPPER_ROOT)/ace/Message_Block.h \
- $(WRAPPER_ROOT)/ace/Malloc.h \
- $(WRAPPER_ROOT)/ace/Malloc_T.h \
- $(WRAPPER_ROOT)/ace/Memory_Pool.h \
- $(WRAPPER_ROOT)/ace/Mem_Map.h \
- $(WRAPPER_ROOT)/ace/ReactorEx.h \
- $(WRAPPER_ROOT)/ace/Message_Queue.h \
- $(WRAPPER_ROOT)/ace/IO_Cntl_Msg.h \
- $(WRAPPER_ROOT)/ace/Strategies.h \
- $(WRAPPER_ROOT)/ace/Strategies_T.h \
- $(WRAPPER_ROOT)/ace/Svc_Conf_Tokens.h \
- $(WRAPPER_ROOT)/ace/Svc_Handler.h \
- $(WRAPPER_ROOT)/ace/Synch_Options.h \
- $(WRAPPER_ROOT)/ace/Task.h \
- $(WRAPPER_ROOT)/ace/Task_T.h \
- $(WRAPPER_ROOT)/ace/Acceptor.i \
- $(WRAPPER_ROOT)/ace/SOCK_Acceptor.h \
- $(WRAPPER_ROOT)/ace/Token_Request_Reply.h \
- $(WRAPPER_ROOT)/ace/Local_Tokens.h \
- $(WRAPPER_ROOT)/ace/Stack.h \
- $(WRAPPER_ROOT)/ace/Map_Manager.h \
- $(WRAPPER_ROOT)/ace/Token_Collection.h \
- $(WRAPPER_ROOT)/ace/SString.h \
- Token_Handler.h
-.obj/Logging_Strategy.o .shobj/Logging_Strategy.so: Logging_Strategy.cpp \
- /pkg/gnu/lib/g++-include/iostream.h \
- /pkg/gnu/lib/g++-include/fstream.h \
- $(WRAPPER_ROOT)/ace/Get_Opt.h \
- $(WRAPPER_ROOT)/ace/ACE.h \
- $(WRAPPER_ROOT)/ace/OS.h \
- $(WRAPPER_ROOT)/ace/Time_Value.h \
- $(WRAPPER_ROOT)/ace/config.h \
- $(WRAPPER_ROOT)/ace/stdcpp.h \
- $(WRAPPER_ROOT)/ace/Trace.h \
- $(WRAPPER_ROOT)/ace/Log_Msg.h \
- $(WRAPPER_ROOT)/ace/Log_Record.h \
- $(WRAPPER_ROOT)/ace/Log_Priority.h \
- $(WRAPPER_ROOT)/ace/Log_Record.i \
- $(WRAPPER_ROOT)/ace/ACE.i \
- $(WRAPPER_ROOT)/ace/Service_Object.h \
- $(WRAPPER_ROOT)/ace/Shared_Object.h \
- $(WRAPPER_ROOT)/ace/Event_Handler.h \
- Logging_Strategy.h
-
-# IF YOU PUT ANYTHING HERE IT WILL GO AWAY
diff --git a/netsvcs/lib/Name_Handler.cpp b/netsvcs/lib/Name_Handler.cpp
deleted file mode 100644
index fc4a8b9cb46..00000000000
--- a/netsvcs/lib/Name_Handler.cpp
+++ /dev/null
@@ -1,723 +0,0 @@
-// Name_Handler.cpp
-// $Id$
-
-#define ACE_BUILD_SVC_DLL
-#include "ace/SString.h"
-#include "ace/Set.h"
-#include "ace/Get_Opt.h"
-#include "ace/Naming_Context.h"
-#include "ace/Acceptor.h"
-#include "ace/SOCK_Acceptor.h"
-#include "ace/SOCK_Stream.h"
-#include "ace/Name_Request_Reply.h"
-#include "Name_Handler.h"
-
-// Simple macro that does bitwise AND -- useful in table lookup
-#define ACE_TABLE_MAP(INDEX, MASK) (INDEX & MASK)
-
-// Simple macro that does bitwise AND and then right shift bits by 3
-#define ACE_LIST_MAP(INDEX, MASK) (((unsigned long) (INDEX & MASK)) >> 3)
-
-// Forward declaration.
-class ACE_Naming_Context;
-
-class ACE_Svc_Export ACE_Name_Handler : public ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH>
- // = TITLE
- // Product object created by <ACE_Name_Acceptor>. An
- // <ACE_Name_Handler> exchanges messages with a <ACE_Name_Proxy>
- // object on the client-side.
- //
- // = DESCRIPTION
- // This class is the main workhorse of the <ACE_Name_Server>. It
- // handles client requests to bind, rebind, resolve, and unbind
- // names. It also schedules and handles timeouts that are used to
- // support "timed waits." Clients used timed waits to bound the
- // amount of time they block trying to get a name.
-{
- friend class ACE_Shutup_GPlusPlus; // Turn off g++ warning
-public:
- typedef int (ACE_Name_Handler::*OPERATION) (void);
- // Pointer to a member function of ACE_Name_Handler returning int
-
- typedef int (ACE_Naming_Context::*LIST_OP) (ACE_PWSTRING_SET &, const ACE_WString &);
- // Pointer to a member function of ACE_Naming_Context returning int
-
- typedef ACE_Name_Request (ACE_Name_Handler::*REQUEST) (ACE_WString *);
- // Pointer to a member function of ACE_Name_Handler returning ACE_Name_Request
-
- // = Initialization and termination.
-
- ACE_Name_Handler (ACE_Thread_Manager * = 0);
- // Default constructor.
-
- virtual int open (void * = 0);
- // Activate this instance of the <ACE_Name_Handler> (called by the
- // <ACE_Strategy_Acceptor>).
-
-protected:
- // = Helper routines for the operations exported to clients.
-
- virtual int abandon (void);
- // Give up waiting (e.g., when a timeout occurs or a client shuts
- // down unexpectedly).
-
- // = Low level routines for framing requests, dispatching
- // operations, and returning replies.
-
- virtual int recv_request (void);
- // Receive, frame, and decode the client's request.
-
- virtual int dispatch (void);
- // Dispatch the appropriate operation to handle the client's
- // request.
-
- virtual int send_reply (ACE_UINT32 status, ACE_UINT32 errnum = 0);
- // Create and send a reply to the client.
-
- virtual int send_request (ACE_Name_Request &);
- // Special kind of reply
-
- // = Demultiplexing hooks.
- virtual ACE_HANDLE get_handle (void) const;
- // Return the underlying <ACE_HANDLE>.
-
- virtual int handle_input (ACE_HANDLE);
- // Callback method invoked by the <ACE_Reactor> when client events
- // arrive.
-
- // = Timer hook.
- virtual int handle_timeout (const ACE_Time_Value &tv, const void *arg);
- // Enable clients to limit the amount of time they wait for a name.
-
-private:
-
- OPERATION op_table_[ACE_Name_Request::MAX_ENUM];
- // Table of pointers to member functions
-
- struct LIST_ENTRY
- {
- LIST_OP operation_;
- // A member function pointer that performs the appropriate
- // operation (e.g., LIST_NAMES, LIST_VALUES, or LIST_TYPES).
-
- REQUEST request_factory_;
- // A member function pointer that serves as a factory to create a
- // request that is passed back to the client.
-
- char *description_;
- // Name of the operation we're dispatching (used for debugging).
- };
-
- LIST_ENTRY list_table_[ACE_Name_Request::MAX_LIST];
- // This is the table of pointers to functions that we use to
- // simplify the handling of list requests.
-
- ACE_Naming_Context *naming_context_;
- // ACE_Naming_Context of this Handler.
-
- ACE_Name_Request name_request_;
- // Cache request from the client.
-
- ACE_Name_Request name_request_back_;
- // Special kind of reply for resolve and listnames.
-
- ACE_Name_Reply name_reply_;
- // Cache reply to the client.
-
- ACE_INET_Addr addr_;
- // Address of client we are connected with.
-
- ~ACE_Name_Handler (void);
- // Ensure dynamic allocation...
-
- int bind (void);
- // Handle binds.
-
- int rebind (void);
- // Handle rebinds.
-
- int shared_bind (int rebind);
- // Handle binds and rebinds.
-
- int resolve (void);
- // Handle find requests.
-
- int unbind (void);
- // Handle unbind requests.
-
- int lists (void);
- // Handle LIST_NAMES, LIST_VALUES, and LIST_TYPES requests.
-
- int lists_entries (void);
- // Handle LIST_NAME_ENTRIES, LIST_VALUE_ENTRIES, and
- // LIST_TYPE_ENTRIES requests.
-
- ACE_Name_Request name_request (ACE_WString *one_name);
- // Create a name request.
-
- ACE_Name_Request value_request (ACE_WString *one_name);
- // Create a value request.
-
- ACE_Name_Request type_request (ACE_WString *one_name);
- // Create a type request.
-};
-
-class ACE_Name_Acceptor : public ACE_Strategy_Acceptor<ACE_Name_Handler, ACE_SOCK_ACCEPTOR>
- // = TITLE
- // This class contains the service-specific methods that can't
- // easily be factored into the <ACE_Strategy_Acceptor>.
-{
-public:
- virtual int init (int argc, char *argv[]);
- // Dynamic linking hook.
-
- int parse_args (int argc, char *argv[]);
- // Parse svc.conf arguments.
-
-private:
- ACE_Schedule_All_Reactive_Strategy<ACE_Name_Handler> scheduling_strategy_;
- // The scheduling strategy is designed for Reactive services.
-};
-
-int
-ACE_Name_Acceptor::parse_args (int argc, char *argv[])
-{
- ACE_TRACE ("ACE_Name_Acceptor::parse_args");
-
- this->service_port_ = ACE_DEFAULT_SERVER_PORT;
-
- ACE_LOG_MSG->open ("Name Service");
-
- ACE_Get_Opt get_opt (argc, argv, "p:", 0);
-
- for (int c; (c = get_opt ()) != -1; )
- {
- switch (c)
- {
- case 'p':
- this->service_port_ = ACE_OS::atoi (get_opt.optarg);
- break;
- default:
- ACE_ERROR_RETURN ((LM_ERROR,
- "%n:\n[-p server-port]\n%a", 1),
- -1);
- break;
- }
- }
-
- this->service_addr_.set (this->service_port_);
- return 0;
-}
-
-int
-ACE_Name_Acceptor::init (int argc, char *argv[])
-{
- ACE_TRACE ("ACE_Name_Acceptor::init");
-
- // Use the options hook to parse the command line arguments and set
- // options.
- this->parse_args (argc, argv);
-
- // Set the acceptor endpoint into listen mode (use the Singleton
- // global Reactor...).
- if (this->open (this->service_addr_, ACE_Service_Config::reactor (),
- 0, 0, 0,
- &this->scheduling_strategy_,
- "Name Server", "ACE naming service") == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%n: %p on port %d\n",
- "acceptor::open failed",
- this->service_addr_.get_port_number ()), -1);
-
- // Ignore SIGPIPE so that each <SVC_HANDLER> can handle this on its
- // own.
- ACE_Sig_Action sig (ACE_SignalHandler (SIG_IGN), SIGPIPE);
-
- ACE_INET_Addr server_addr;
-
- // Figure out what port we're really bound to.
- if (this->acceptor ().get_local_addr (server_addr) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "get_local_addr"), -1);
-
- ACE_DEBUG ((LM_DEBUG,
- "starting up Name Server at port %d on handle %d\n",
- server_addr.get_port_number (),
- this->acceptor ().get_handle ()));
- return 0;
-}
-
-// The following is a "Factory" used by the ACE_Service_Config and
-// svc.conf file to dynamically initialize the state of the Naming
-// Server.
-
-ACE_SVC_FACTORY_DEFINE (ACE_Name_Acceptor)
-
-// Default constructor.
-ACE_Name_Handler::ACE_Name_Handler (ACE_Thread_Manager *tm)
- : ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH> (tm)
-{
- ACE_TRACE ("ACE_Name_Handler::ACE_Name_Handler");
-
- // Set up pointers to member functions for the top-level dispatching
- // of client requests.
- this->op_table_[ACE_Name_Request::BIND] = &ACE_Name_Handler::bind;
- this->op_table_[ACE_Name_Request::REBIND] = &ACE_Name_Handler::rebind;
- this->op_table_[ACE_Name_Request::RESOLVE] = &ACE_Name_Handler::resolve;
- this->op_table_[ACE_Name_Request::UNBIND] = &ACE_Name_Handler::unbind;
- this->op_table_[ACE_Name_Request::LIST_NAMES] = &ACE_Name_Handler::lists;
- this->op_table_[ACE_Name_Request::LIST_NAME_ENTRIES] = &ACE_Name_Handler::lists_entries;
-
- // Assign references to simplify subsequent code.
- LIST_ENTRY &list_names_ref = this->list_table_[ACE_LIST_MAP (ACE_Name_Request::LIST_NAMES,
- ACE_Name_Request::LIST_OP_MASK)];
- LIST_ENTRY &list_values_ref = this->list_table_[ACE_LIST_MAP (ACE_Name_Request::LIST_VALUES,
- ACE_Name_Request::LIST_OP_MASK)];
- LIST_ENTRY &list_types_ref = this->list_table_[ACE_LIST_MAP (ACE_Name_Request::LIST_TYPES,
- ACE_Name_Request::LIST_OP_MASK)];
-
- // Set up pointers to member functions for dispatching within the
- // LIST_{NAMES,VALUES,TYPES} methods.
-
- list_names_ref.operation_ = &ACE_Naming_Context::list_names;
- list_names_ref.request_factory_ = &ACE_Name_Handler::name_request;
- list_names_ref.description_ = "request for LIST_NAMES\n";
-
- list_values_ref.operation_ = &ACE_Naming_Context::list_values;
- list_values_ref.request_factory_ = &ACE_Name_Handler::value_request;
- list_values_ref.description_ = "request for LIST_VALUES\n";
-
- list_types_ref.operation_ = &ACE_Naming_Context::list_types;
- list_types_ref.request_factory_ = &ACE_Name_Handler::type_request;
- list_types_ref.description_ = "request for LIST_TYPES\n";
-}
-
-// Activate this instance of the ACE_Name_Handler (called by the
-// ACE_Name_Acceptor).
-
-/* VIRTUAL */ int
-ACE_Name_Handler::open (void *)
-{
- ACE_TRACE ("ACE_Name_Handler::open");
-
- // Call down to our parent to register ourselves with the Reactor.
- if (ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH>::open (0) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "open"), -1);
-
- // Instantiate our associated ACE_Naming_Context
- ACE_NEW_RETURN (naming_context_, ACE_Naming_Context (ACE_Naming_Context::NET_LOCAL), -1);
-
- return 0;
-}
-
-// Create and send a reply to the client.
-
-/* VIRTUAL */ int
-ACE_Name_Handler::send_reply (ACE_UINT32 status, ACE_UINT32 err)
-{
- ACE_TRACE ("ACE_Name_Handler::send_reply");
- void *buf;
- this->name_reply_.msg_type (status);
- this->name_reply_.errnum (err);
-
- this->name_reply_.init ();
- int len = this->name_reply_.encode (buf);
-
- if (len == -1)
- return -1;
-
- ssize_t n = this->peer ().send (buf, len);
-
- if (n != len)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n, expected len = %d, actual len = %d",
- "send failed", len, n), -1);
- else
- return 0;
-}
-
-/* VIRTUAL */ int
-ACE_Name_Handler::send_request (ACE_Name_Request &request)
-{
- ACE_TRACE ("ACE_Name_Handler::send_request");
- void *buffer;
- ssize_t length = request.encode (buffer);
-
- if (length == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "encode failed"), -1);
-
- // Transmit request via a blocking send.
-
- if (this->peer ().send_n (buffer, length) != length)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "send_n failed"), -1);
-
- return 0;
-}
-
-// Give up waiting (e.g., when a timeout occurs or a client shuts down
-// unexpectedly).
-
-/* VIRTUAL */ int
-ACE_Name_Handler::abandon (void)
-{
- ACE_TRACE ("ACE_Name_Handler::abandon");
- int failure_reason = errno;
- return this->send_reply (ACE_Name_Reply::FAILURE, failure_reason);
-}
-
-// Enable clients to limit the amount of time they'll wait
-
-/* VIRTUAL */ int
-ACE_Name_Handler::handle_timeout (const ACE_Time_Value &, const void *)
-{
- ACE_TRACE ("ACE_Name_Handler::handle_timeout");
- return this->abandon ();
-}
-
-// Return the underlying ACE_HANDLE.
-
-/* VIRTUAL */ ACE_HANDLE
-ACE_Name_Handler::get_handle (void) const
-{
- ACE_TRACE ("ACE_Name_Handler::get_handle");
- return this->peer ().get_handle ();
-}
-
-// Dispatch the appropriate operation to handle the client request.
-
-/* VIRTUAL */ int
-ACE_Name_Handler::dispatch (void)
-{
- ACE_TRACE ("ACE_Name_Handler::dispatch");
- // Dispatch the appropriate request.
- int index = this->name_request_.msg_type ();
-
- // Invoke the appropriate member function obtained by indexing into
- // the op_table_. ACE_TABLE_MAP returns the same index (by bitwise
- // AND) for list_names, list_values, and list_types since they are
- // all handled by the same method. Similarly, it returns the same
- // index for list_name_entries, list_value_entries, and
- // list_type_entries.
- return (this->*op_table_[ACE_TABLE_MAP (index, ACE_Name_Request::OP_TABLE_MASK)]) ();
-}
-
-// Receive, frame, and decode the client's request. Note, this method
-// should use non-blocking I/O.
-
-/* VIRTUAL */ int
-ACE_Name_Handler::recv_request (void)
-{
- ACE_TRACE ("ACE_Name_Handler::recv_request");
- // Read the first 4 bytes to get the length of the message This
- // implementation assumes that the first 4 bytes are the length of
- // the message.
- ssize_t n = this->peer ().recv ((void *) &this->name_request_, sizeof (ACE_UINT32));
-
- switch (n)
- {
- case -1:
- /* FALLTHROUGH */
- ACE_DEBUG ((LM_DEBUG, "****************** recv_request returned -1\n"));
- default:
- ACE_ERROR ((LM_ERROR, "%p got %d bytes, expected %d bytes\n",
- "recv failed", n, sizeof (ACE_UINT32)));
- /* FALLTHROUGH */
- case 0:
- // We've shutdown unexpectedly, let's abandon the connection.
- this->abandon ();
- return -1;
- /* NOTREACHED */
- case sizeof (ACE_UINT32):
- {
- // Transform the length into host byte order.
- ssize_t length = ntohl (this->name_request_.length ());
-
- // Do a sanity check on the length of the message.
- if (length > (ssize_t) sizeof this->name_request_)
- {
- ACE_ERROR ((LM_ERROR, "length %d too long\n", length));
- return this->abandon ();
- }
-
- // Receive the rest of the request message.
- // @@ beware of blocking read!!!.
- n = this->peer ().recv ((void *) (((char *) &this->name_request_)
- + sizeof (ACE_UINT32)),
- length - sizeof (ACE_UINT32));
-
- // Subtract off the size of the part we skipped over...
- if (n != (length - (ssize_t) sizeof (ACE_UINT32)))
- {
- ACE_ERROR ((LM_ERROR, "%p expected %d, got %d\n",
- "invalid length", length, n));
- return this->abandon ();
- }
-
- // Decode the request into host byte order.
- if (this->name_request_.decode () == -1)
- {
- ACE_ERROR ((LM_ERROR, "%p\n", "decode failed"));
- return this->abandon ();
- }
- }
- }
- return 0;
-}
-
-// Callback method invoked by the ACE_Reactor when events arrive from
-// the client.
-
-/* VIRTUAL */ int
-ACE_Name_Handler::handle_input (ACE_HANDLE)
-{
- ACE_TRACE ("ACE_Name_Handler::handle_input");
-
- if (this->recv_request () == -1)
- return -1;
- else
- return this->dispatch ();
-}
-
-int
-ACE_Name_Handler::bind (void)
-{
- ACE_TRACE ("ACE_Name_Handler::bind");
- return this->shared_bind (0);
-}
-
-int
-ACE_Name_Handler::rebind (void)
-{
- ACE_TRACE ("ACE_Name_Handler::rebind");
- int result = this->shared_bind (1);
- return result == 1 ? 0 : result;
-}
-
-int
-ACE_Name_Handler::shared_bind (int rebind)
-{
- ACE_TRACE ("ACE_Name_Handler::shared_bind");
- ACE_WString a_name (this->name_request_.name (),
- this->name_request_.name_len () / sizeof (ACE_USHORT16));
- ACE_WString a_value (this->name_request_.value (),
- this->name_request_.value_len () / sizeof (ACE_USHORT16));
- int result;
- if (rebind == 0)
- {
- ACE_DEBUG ((LM_DEBUG, "request for BIND \n"));
- result = this->naming_context_->bind (a_name, a_value,
- this->name_request_.type ());
- }
- else
- {
- ACE_DEBUG ((LM_DEBUG, "request for REBIND \n"));
- result = this->naming_context_->rebind (a_name, a_value,
- this->name_request_.type ());
- if (result == 1)
- result = 0;
- }
- if (result == 0)
- return this->send_reply (ACE_Name_Reply::SUCCESS);
- else return this->send_reply (ACE_Name_Reply::FAILURE);
-}
-
-int
-ACE_Name_Handler::resolve (void)
-{
- ACE_TRACE ("ACE_Name_Handler::resolve");
- ACE_DEBUG ((LM_DEBUG, "request for RESOLVE \n"));
- ACE_WString a_name (this->name_request_.name (),
- this->name_request_.name_len () / sizeof (ACE_USHORT16));
-
- // The following will deliver our reply back to client we
- // pre-suppose success (indicated by type RESOLVE).
-
- ACE_WString avalue;
- char *atype;
- if (this->naming_context_->resolve (a_name, avalue, atype) == 0)
- {
- ACE_Name_Request nrq (ACE_Name_Request::RESOLVE,
- NULL, 0,
- avalue.rep (),
- avalue.length () * sizeof (ACE_USHORT16),
- atype, ACE_OS::strlen (atype));
- return this->send_request (nrq);
- }
-
- ACE_Name_Request nrq (ACE_Name_Request::BIND, NULL, 0, NULL, 0, NULL, 0);
- this->send_request (nrq);
- return 0;
-}
-
-int
-ACE_Name_Handler::unbind (void)
-{
- ACE_TRACE ("ACE_Name_Handler::unbind");
- ACE_DEBUG ((LM_DEBUG, "request for UNBIND \n"));
- ACE_WString a_name (this->name_request_.name (),
- this->name_request_.name_len () / sizeof (ACE_USHORT16));
- if (this->naming_context_->unbind (a_name) == 0)
- return this->send_reply (ACE_Name_Reply::SUCCESS);
- else return this->send_reply (ACE_Name_Reply::FAILURE);
-}
-
-ACE_Name_Request
-ACE_Name_Handler::name_request (ACE_WString *one_name)
-{
- ACE_TRACE ("ACE_Name_Handler::name_request");
- return ACE_Name_Request (ACE_Name_Request::LIST_NAMES,
- one_name->rep (),
- one_name->length () * sizeof (ACE_USHORT16),
- NULL, 0,
- NULL, 0);
-}
-
-ACE_Name_Request
-ACE_Name_Handler::value_request (ACE_WString *one_value)
-{
- ACE_TRACE ("ACE_Name_Handler::value_request");
- return ACE_Name_Request (ACE_Name_Request::LIST_VALUES,
- NULL, 0,
- one_value->rep (),
- one_value->length () * sizeof (ACE_USHORT16),
- NULL, 0);
-}
-
-ACE_Name_Request
-ACE_Name_Handler::type_request (ACE_WString *one_type)
-{
- ACE_TRACE ("ACE_Name_Handler::type_request");
- return ACE_Name_Request (ACE_Name_Request::LIST_TYPES,
- NULL, 0,
- NULL, 0,
- one_type->char_rep (),
- one_type->length ());
-}
-
-int
-ACE_Name_Handler::lists (void)
-{
- ACE_TRACE ("ACE_Name_Handler::lists");
-
- ACE_PWSTRING_SET set;
- ACE_WString pattern (this->name_request_.name (),
- this->name_request_.name_len () / sizeof (ACE_USHORT16));
-
- // Get the index into the list table
- int index = ACE_LIST_MAP (this->name_request_.msg_type (),
- ACE_Name_Request::LIST_OP_MASK);
-
- // Print the message type
- ACE_DEBUG ((LM_DEBUG, list_table_[index].description_));
-
- // Call the appropriate method
- if ((this->naming_context_->*list_table_[index].operation_) (set, pattern) != 0)
- {
- // None found so send blank request back
- ACE_Name_Request end_rq (ACE_Name_Request::MAX_ENUM, NULL, 0, NULL, 0, NULL, 0);
-
- if (this->send_request (end_rq) == -1)
- return -1;
- }
- else
- {
- ACE_WString *one_entry = 0;
-
- for (ACE_Unbounded_Set_Iterator<ACE_WString> set_iterator (set);
- set_iterator.next (one_entry) !=0;
- set_iterator.advance())
- {
- ACE_Name_Request nrq ((this->*list_table_[index].request_factory_) (one_entry));
-
- // Create a request by calling the appropriate method obtained
- // by accessing into the table. Then send the request across.
- if (this->send_request (nrq) == -1)
- return -1;
- }
-
- // Send last message indicator.
- ACE_Name_Request nrq (ACE_Name_Request::MAX_ENUM,
- NULL, 0,
- NULL, 0,
- NULL, 0);
- return this->send_request (nrq);
- }
- return 0;
-}
-
-int
-ACE_Name_Handler::lists_entries (void)
-{
- ACE_TRACE ("ACE_Name_Handler::lists_entries");
- ACE_BINDING_SET set;
- ACE_WString pattern (this->name_request_.name (),
- this->name_request_.name_len () / sizeof (ACE_USHORT16));
-
- int (ACE_Naming_Context::*ptmf) (ACE_BINDING_SET &, const ACE_WString &);
-
- switch (this->name_request_.msg_type ())
- {
- case ACE_Name_Request::LIST_NAME_ENTRIES:
- ACE_DEBUG ((LM_DEBUG, "request for LIST_NAME_ENTRIES \n"));
- ptmf = &ACE_Naming_Context::list_name_entries;
- break;
- case ACE_Name_Request::LIST_VALUE_ENTRIES:
- ACE_DEBUG ((LM_DEBUG, "request for LIST_VALUE_ENTRIES \n"));
- ptmf = &ACE_Naming_Context::list_value_entries;
- break;
- case ACE_Name_Request::LIST_TYPE_ENTRIES:
- ACE_DEBUG ((LM_DEBUG, "request for LIST_TYPE_ENTRIES \n"));
- ptmf = &ACE_Naming_Context::list_type_entries;
- break;
- default:
- return -1;
- }
-
- if ((this->naming_context_->*ptmf) (set, pattern) != 0)
- {
- // None found so send blank request back.
- ACE_Name_Request end_rq (ACE_Name_Request::MAX_ENUM, NULL, 0, NULL, 0, NULL, 0);
-
- if (this->send_request (end_rq) == -1)
- return -1;
- }
- else
- {
- ACE_Name_Binding *one_entry = 0;
-
- for (ACE_Unbounded_Set_Iterator<ACE_Name_Binding> set_iterator (set);
- set_iterator.next (one_entry) !=0;
- set_iterator.advance())
- {
- ACE_Name_Request mynrq (this->name_request_.msg_type (),
- one_entry->name_.rep (),
- one_entry->name_.length () * sizeof (ACE_USHORT16),
- one_entry->value_.rep (),
- one_entry->value_.length () * sizeof (ACE_USHORT16),
- one_entry->type_,
- ACE_OS::strlen (one_entry->type_));
-
- if (this->send_request (mynrq) == -1)
- return -1;
- }
-
- // send last message indicator
- ACE_Name_Request nrq (ACE_Name_Request::MAX_ENUM, NULL, 0, NULL, 0, NULL, 0);
-
- if (this->send_request (nrq) == -1)
- return -1;
- }
- return 0;
-}
-
-ACE_Name_Handler::~ACE_Name_Handler (void)
-{
- ACE_TRACE ("ACE_Name_Handler::~ACE_Name_Handler");
- ACE_DEBUG ((LM_DEBUG, "closing down Handle %d\n",
- this->get_handle ()));
-
- // Delete associated Naming Context.
- delete this->naming_context_;
-}
-
-#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
-template class ACE_Strategy_Acceptor<ACE_Name_Handler, ACE_SOCK_ACCEPTOR>;
-template class ACE_Schedule_All_Reactive_Strategy<ACE_Name_Handler>;
-#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/netsvcs/lib/Name_Handler.h b/netsvcs/lib/Name_Handler.h
deleted file mode 100644
index 52cfebed863..00000000000
--- a/netsvcs/lib/Name_Handler.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* -*- C++ -*- */
-// $Id$
-
-// ============================================================================
-//
-// = LIBRARY
-// ace
-//
-// = FILENAME
-// Name_Handler.h
-//
-// = AUTHOR
-// Prashant Jain, Gerhard Lenzer and Douglas C. Schmidt
-//
-// ============================================================================
-
-#if !defined (ACE_NAME_HANDLER_H)
-#define ACE_NAME_HANDLER_H
-
-#include "ace/OS.h"
-
-ACE_SVC_FACTORY_DECLARE (ACE_Name_Acceptor)
-
-#endif /* ACE_NAME_HANDLER_H */
diff --git a/netsvcs/lib/README b/netsvcs/lib/README
deleted file mode 100644
index a85ce77b82f..00000000000
--- a/netsvcs/lib/README
+++ /dev/null
@@ -1,270 +0,0 @@
-This directory provides a number of network services that utilize the
-ACE wrapper features.
-
- . Logging_Strategy -- Controls the output of all services that are
- invoked along with the Logging_Strategy service. Please see below for
- details on how to control the output.
-
- . [Thr_]Server_Logging_Handler.* -- Implements server portion
- of the ACE distributed logging service. Both multi-threaded
- and single-threaded implementations are provided.
-
- . Client_Logging_Handler.* -- Implements the client portion
- of the ACE distributed logging service.
-
- . Name_Handler.* -- Implements a distributed name service that
- allows applications to bind, find, and unbind names in
- a distributed system.
-
- . Token_Handler.* -- Implements a distributed token service
- that allows distributed applications to acquire and release
- locks in a distributed system.
-
- . Time_Handler.* -- Implements a distributed time service that
- allows distributed applications to synchronize their
- time.
-
-The remainder of this README file explains how these services work.
-
-==================== Logging_Strategy Service ====================
-The Logging_Strategy Service can be used to control the output of all the
-network services. It can be invoked with certain flags that determine
-where the output of all the services should go.
-
-The Logging_Strategy Service sets the flags in ACE_Log_Msg which in turn
-controls all the streams through macros such as ACE_DEBUG, ACE_ERROR,
-and ACE_ERROR_RETURN.
-
-If default behavior is required, the Logging_Strategy Service need not be
-invoked or it can be invoked with no paramaters. Here are the command
-line arguments that can be given to the Logging_Strategy Service:
-<CODE>
-
- -f <flag1>|<flag2>|<flag3> (etc...)
-</CODE>
- where a flag can be any of the following:
-
- STDERR -- Write messages to stderr.
- LOGGER -- Write messages to the local client logger deamon.
- OSTREAM -- Write messages to the ostream that gets created by
- specifying a filename (see below)
- VERBOSE -- Display messages in a verbose manner
- SILENT -- Do not print messages at all
-
-Note: If more than one flag is specified, the flags need to be 'OR'ed
-as above syntax shows. Make sure there is no space in between the flag
-and '|'.
-
- -s filename
-
- If the OSTREAM flag is set, this can be used to specify the
-filename where the output should be directed. Note that if the OSTREAM
-flag is set and no filename is specified, ACE_DEFAULT_LOGFILE will be
-used to write the output to.
-
-Examples:
-
-To direct output only to STDERR, specify command line arguments as:
- "-f STDERR"
-
-To direct output to both STDERR and a file called "mylog", specify
-command line arguments as:
- "-f STDERR|OSTREAM -s mylog"
-
-==================== Name Service ====================
-
-This file describes the principles of the Name_Server server test
-application.
-
-1. Startup configuration
- ---------------------
-
-To communicate with the server process, a client needs to know the
-INET_Addr, where the server offers its service. Class Name_Options
-holds all the configuration information of the Name Service. This
-consists of :
-
- - nameserver_port : Port number where the server process expects requests
- - nameserver_host : hostname where the server process resides
- - namespace_dir : directory that holds the NameBinding databases
- - process_name : name of the client process (argv[0]), NameBindings of
- a ProcessLocal namespace are stored in file
- "namespace_dir/process_name". NameBindings of NodeGlobal
- namespace are stored in "namespace_dir/localnames".
- NameBindings of Net_Local namespace are stored in file
- "namespace_dir/globalnames" on the server host.
- These configuration parameters are passed to the process as commandline
- arguments to main:
- -p nameserver port
- -h nameserver host
- -l namespace directory
-
- The main program _must_ initialize an instance of Name_Options with name
- name_options (since the shared libraries depend on this). Main should
- look like :
-
- #include "ace/Name_Options.h"
-
- Name_Options name_options;
-
- int main(int argc, char **argv)
- {
- name_options.process_name(argv[0]);
- name_options.parse_args (argc, argv);
- ......
- }
-
-See the examples in the tests subdirectory of
-...Name_Server/Client-Server/client and
-...Name_Server/Client-Server/server
-
-
-2. Class Naming_Context
- -------------------
-
-This is the main workhorse of the Name Service. It is used by client
-processes as well as by the server process. It manages all accesses to
-the appropriate NameBinding database (that is the file where
-NameBindings are stored) and it also manages the communication between
-a client process and the server (by using class Name_Proxy, which is a
-private member of Naming_Context). (Note: no IPC is necessary, if a
-client process runs on the same host as the server).
-
-The strategy for all public methods of Naming_Context is common :
-
-1. Transform the format of the arguments to ACE_SString (which is
- internally used) if necessary.
-
-2. check if work can be done locally : -> call the appropriate local_* method
- otherwise call the appropriate global_* method.
-
-Removing Name_Bindings from the database (either with unbind or
-rebind) uses the ACE_Malloc class configured with the
-ACE_MMAP_Memory_Pool. This allows memory to be reclaimed when
-name/value tuples are unbound.
-
-3. Class Name_Server
- ----------------
-
-The Name_Server registers in its run method its Name_Acceptor
-(instantiated with the INET_Addr) at the Reactor, to receive incoming
-requests.
-
-4. Class Name_Acceptor
- ------------------
-
-The Name_Acceptor allocates in its handle_input routine a new instance
-of class Name_Handler on the heap, and accepts connections into this
-Name_Handler.
-
-5. Class Name_Handler
- -----------------
-
-The Name_Handler represents the server side of communication between
-client and server. It interprets incoming requests to the Net_Local
-namespace and dele- gates the requests to its own Naming_Context
-(which is the Net_Local namespace on the current host). For
-communication it uses the helper classes Name_Request (which up to now
-needs not only contain the request from the client, but also the
-appropriate reply from the server) and Name_Reply. Note that I want
-to change the usage of these classes to make the structure of the
-software clearer.
-
-6. Dependencies
- ------------
-
-As the Name service must be able to handle wide character strings, it
-uses ACE_WString String classes.
-
-
-==================== Time Service ====================
-
-The following is a description of the Time Server clerk and server
-services:
-
-1. Startup configuration
- ---------------------
-
-Configuring a server requires specifying the port number of the
-server. This can be specified as a command line argument as follows:
-
- -p <port number>
-
-A clerk communicates with one or more server processes. To communicate
-with the server process, a client needs to know the INET_Addr, where
-the server offers its service. The configuration parameters namely the
-server port and server host are passed as command line arguments when
-starting up the clerk service as follows:
-
- -h <server host1>:<server port1> -h <server host2>:<server port2> ...
-
-Note that multiple servers can be specified in this manner for the
-clerk to connect to when it starts up. The server name and the port
-number need to be concatenated and separated by a ":". In addition,
-the timeout value can also be specified as a command line argument as
-follows:
-
- -t timeout
-
-The timeout value specifies the time interval at which the clerk
-should query the servers for time updates.
-
-By default a Clerk does a non-blocking connect to a server. This can
-be overridden and a Clerk can be made to do a blocking connect by
-using the -b flag.
-
-Here is what a config file would look like for starting up a server at
-port 20202:
-
-dynamic Time_Service Service_Object * ../lib/libnet_svcs.so:_make_ACE_TS_Server_Acceptor() "-p 20202"
-
-Here is what a config file would look like for starting up a clerk
-that needs to connect to two servers, one at tango and one at lambada:
-
-dynamic Time_Server_test Service_Object *../lib/libnet_svcs.so:_make_ACE_TS_Clerk_Connector () "-h tango:20202 -h lambada:20202 -t 4"
-
-[Note: these files would vary if the services are run on NT]
-
-
-2. Class TS_Server_Handler
- -----------------------
-
-TS_Server_Handler represents the server side of communication between
-clerk and server. It interprets incoming requests for time updates,
-gets the system time, creates a reply in response to the request and
-then sends the reply to the clerk from which it received the request.
-For communication it uses the helper class Time_Request.
-
-3. Class TS_Server_Acceptor
- ------------------------
-
-TS_Server_Acceptor allocates in its handle_input routine a new instance
-of class TS_Server_Handler on the heap, and accepts connections into this
-TS_Server_Handler.
-
-4. Class TS_Clerk_Handler
- ----------------------
-
-TS_Clerk_Handler represents the clerk side of communication between
-clerk and server. It generates requests for time updates every timeout
-period and then sends these requests to all the servers it is
-connected to asynchronously. It receives the replies to these requests
-from the servers through its handle_input method and then adjusts the
-time using the roundtrip estimate. It caches this time which is later
-retrieved by TS_Clerk_Processor.
-
-5. Class TS_Clerk_Processor
- ------------------------
-
-TS_Clerk_Processor creates a new instance of TS_Clerk_Handler for
-every server connection it needs to create. It periodically calls
-send_request() of every TS_Clerk_Handler to send a request for time
-update to all the servers. In the process, it retrieves the latest
-time cached by each TS_Clerk_Handler and then uses it to compute its
-notion of the local system time.
-
-6. Algorithms
- ----------
-
-Currently, updating the system time involves taking the average of all
-the times received from the servers. \ No newline at end of file
diff --git a/netsvcs/lib/Server_Logging_Handler.cpp b/netsvcs/lib/Server_Logging_Handler.cpp
deleted file mode 100644
index 67c67ee4e74..00000000000
--- a/netsvcs/lib/Server_Logging_Handler.cpp
+++ /dev/null
@@ -1,443 +0,0 @@
-// $Id$
-// Server_Logging_Handler.cpp
-
-#define ACE_BUILD_SVC_DLL
-#include "ace/Synch.h"
-#include "ace/TLI_Acceptor.h"
-#include "ace/SOCK_Acceptor.h"
-
-#include "ace/Get_Opt.h"
-#include "ace/Acceptor.h"
-#include "Server_Logging_Handler.h"
-
-template <ACE_PEER_STREAM_1, class COUNTER, ACE_SYNCH_1>
-class ACE_Server_Logging_Handler : public ACE_Svc_Handler<ACE_PEER_STREAM_2, ACE_SYNCH_2>
-{
- // = TITLE
- // Product object created by an <ACE_Server_Logging_Acceptor>. An
- // <ACE_Server_Logging_Handler> receives, frames, and processes logging
- // records.
- //
- // = DESCRIPTION
- // Defines the classes that perform server logging daemon
- // functionality.
-public:
- ACE_Server_Logging_Handler (ACE_Thread_Manager * = 0);
-
- virtual int open (void * = 0);
- // Hook called by Server_Logging_Acceptor when connection is
- // established.
-
- virtual int handle_input (ACE_HANDLE = ACE_INVALID_HANDLE);
- // Process remote logging records.
-
-protected:
- int handle_logging_record (void);
- // Receive the logging record from a client.
-
-#if !defined (ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES)
- static COUNTER request_count_;
- // Count the number of logging records that arrive.
-#endif /* ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES */
-
- char host_name_[MAXHOSTNAMELEN + 1];
- // Name of the host we are connected to.
-};
-
-#if !defined (ACE_HAS_TLI)
-#define LOGGING_PEER_ACCEPTOR ACE_SOCK_ACCEPTOR
-#define LOGGING_PEER_STREAM ACE_SOCK_STREAM
-#else /* use sockets */
-#define LOGGING_PEER_ACCEPTOR ACE_TLI_ACCEPTOR
-#define LOGGING_PEER_STREAM ACE_TLI_STREAM
-#endif /* ACE_HAS_TLI */
-
-#if !defined (ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES)
-// Track number of requests.
-template <ACE_PEER_STREAM_1, class COUNTER, ACE_SYNCH_1>
-COUNTER ACE_Server_Logging_Handler<ACE_PEER_STREAM_2, COUNTER, ACE_SYNCH_2>::request_count_ = (COUNTER) 0;
-#endif /* ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES */
-
-typedef ACE_Server_Logging_Handler<LOGGING_PEER_STREAM, u_long, ACE_NULL_SYNCH>
- SERVER_LOGGING_HANDLER;
-
-class ACE_Server_Logging_Acceptor : public ACE_Strategy_Acceptor<SERVER_LOGGING_HANDLER, LOGGING_PEER_ACCEPTOR>
- // = TITLE
- // This class implements the ACE single-threaded logging service.
- //
- // = DESCRIPTION
- // This class contains the service-specific methods that can't
- // easily be factored into the <ACE_Strategy_Acceptor>.
-{
-public:
- virtual int init (int argc, char *argv[]);
- // Dynamic linking hook.
-
- int parse_args (int argc, char *argv[]);
- // Parse svc.conf arguments.
-
-private:
- ACE_Schedule_All_Reactive_Strategy<SERVER_LOGGING_HANDLER> scheduling_strategy_;
- // The scheduling strategy is designed for Reactive services.
-};
-
-int
-ACE_Server_Logging_Acceptor::parse_args (int argc, char *argv[])
-{
- ACE_TRACE ("ACE_Server_Logging_Acceptor::parse_args");
-
- this->service_port_ = ACE_DEFAULT_SERVER_PORT;
-
- ACE_LOG_MSG->open ("Logging Service");
-
- ACE_Get_Opt get_opt (argc, argv, "p:", 0);
-
- for (int c; (c = get_opt ()) != -1; )
- {
- switch (c)
- {
- case 'p':
- this->service_port_ = ACE_OS::atoi (get_opt.optarg);
- break;
- default:
- ACE_ERROR_RETURN ((LM_ERROR,
- "%n:\n[-p server-port]\n%a", 1),
- -1);
- break;
- }
- }
-
- this->service_addr_.set (this->service_port_);
- return 0;
-}
-
-int
-ACE_Server_Logging_Acceptor::init (int argc,
- char *argv[])
-{
- ACE_TRACE ("ACE_Server_Logging_Acceptor::init");
-
- // Use the options hook to parse the command line arguments and set
- // options.
- this->parse_args (argc, argv);
-
- // Set the acceptor endpoint into listen mode (use the Singleton
- // global Reactor...).
- if (this->open (this->service_addr_, ACE_Service_Config::reactor (),
- 0, 0, 0,
- &this->scheduling_strategy_,
- "Logging Server", "ACE single-threaded logging service") == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%n: %p on port %d\n",
- "acceptor::open failed",
- this->service_addr_.get_port_number ()), -1);
-
- // Ignore SIGPIPE so that each <SVC_HANDLER> can handle this on its
- // own.
- ACE_Sig_Action sig (ACE_SignalHandler (SIG_IGN), SIGPIPE);
-
- ACE_INET_Addr server_addr;
-
- // Figure out what port we're really bound to.
- if (this->acceptor ().get_local_addr (server_addr) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "get_local_addr"), -1);
-
- ACE_DEBUG ((LM_DEBUG,
- "starting up Logging Server at port %d on handle %d\n",
- server_addr.get_port_number (),
- this->acceptor ().get_handle ()));
- return 0;
-}
-
-template <ACE_PEER_STREAM_1, class COUNTER, ACE_SYNCH_1>
-ACE_Server_Logging_Handler<ACE_PEER_STREAM_2, COUNTER, ACE_SYNCH_2>::ACE_Server_Logging_Handler (ACE_Thread_Manager *)
-{
- this->host_name_[0] = '\0'; // Initialize to a known state.
-}
-
-template <ACE_PEER_STREAM_1, class COUNTER, ACE_SYNCH_1> int
-ACE_Server_Logging_Handler<ACE_PEER_STREAM_2, COUNTER, ACE_SYNCH_2>::handle_logging_record (void)
-{
- ssize_t len;
- // Lock used to serialize access to std output
- // (this should be in the class, but the SunC++ compiler is broken...)
- static ACE_SYNCH_MUTEX lock;
-
- // Perform two recv's to emulate record-oriented semantiCLS.
- // Note that this code is not entirely portable since it
- // relies on the fact that sizeof (ssize_t) is the same
- // on both the sender and receiver side. To correctly
- // handle this is painful, and we leave it as an exercise
- // for the reader ;-).
-
- ssize_t n = this->peer ().recv (&len, sizeof len);
-
- switch (n)
- {
- case -1:
- ACE_ERROR_RETURN ((LM_ERROR, "%p at host %s\n",
- "server logger", this->host_name_), -1);
- /* NOTREACHED */
- case 0:
- ACE_ERROR_RETURN ((LM_ERROR, "closing log daemon at host %s\n",
- this->host_name_), -1);
- /* NOTREACHED */
- case sizeof (ssize_t):
- {
- ACE_Log_Record lp;
-
-#if !defined (ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES)
- u_long count = ++this->request_count_;
- ACE_DEBUG ((LM_DEBUG, "request count = %d\n", count));
-#endif /* ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES */
-
- len = ntohl (len);
- n = this->peer ().recv_n ((void *) &lp, len);
- if (n != len)
- ACE_ERROR_RETURN ((LM_ERROR, "len = %d, %p at host %s\n",
- n, "server logger", this->host_name_), -1);
- /* NOTREACHED */
-
- lp.decode ();
-
- if (lp.length () == n)
- {
- // Serialize output, if necessary (i.e., if we are running
- // in separate threads).
- // ACE_GUARD_RETURN (ACE_SYNCH_MUTEX, ace_mon, lock, -1);
-
- lp.print (this->host_name_, 0, stderr);
- }
- else
- ACE_ERROR ((LM_ERROR, "error, lp.length = %d, n = %d\n",
- lp.length (), n));
- break;
- }
- default:
- ACE_ERROR_RETURN ((LM_ERROR, "%p at host %s\n",
- "server logger", this->host_name_), -1);
- /* NOTREACHED */
- }
-
- return n;
-}
-
-// Hook called by Server_Logging_Acceptor when connection is
-// established.
-
-template <ACE_PEER_STREAM_1, class COUNTER, ACE_SYNCH_1> int
-ACE_Server_Logging_Handler<ACE_PEER_STREAM_2, COUNTER, ACE_SYNCH_2>::open (void *)
-{
- // Register ourselves with the Reactor to enable subsequent
- // dispatching.
- if (ACE_Service_Config::reactor ()->register_handler
- (this, ACE_Event_Handler::READ_MASK) == -1)
- return -1;
-
- ACE_PEER_STREAM_ADDR client_addr;
-
- // Determine the address of the client and display it.
- if (this->peer ().get_remote_addr (client_addr) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "get_remote_addr"), -1);
-
- ACE_OS::strncpy (this->host_name_, client_addr.get_host_name (), MAXHOSTNAMELEN + 1);
-
- ACE_DEBUG ((LM_DEBUG, "(%t) accepted connection from host %s on fd %d\n",
- client_addr.get_host_name (), this->peer ().get_handle ()));
-
- // Shut off non-blocking IO if it was enabled...
- if (this->peer ().disable (ACE_NONBLOCK) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "disable"), -1);
-
- return 0;
-}
-
-// Callback routine for handling the reception of remote logging
-// transmissions.
-
-template <ACE_PEER_STREAM_1, class COUNTER, ACE_SYNCH_1> int
-ACE_Server_Logging_Handler<ACE_PEER_STREAM_2, COUNTER, ACE_SYNCH_2>::handle_input (ACE_HANDLE)
-{
- return this->handle_logging_record () > 0 ? 0 : -1;
-}
-
-#if !defined (ACE_HAS_THREADS)
-typedef u_long COUNTER;
-#define ACE_LOGGER_SYNCH ACE_NULL_SYNCH
-#else
-typedef ACE_Atomic_Op <ACE_Thread_Mutex, u_long> COUNTER;
-#define ACE_LOGGER_SYNCH ACE_MT_SYNCH
-#endif /* ACE_HAS_THREADS */
-
-class ACE_Svc_Export ACE_Thr_Server_Logging_Handler : public ACE_Server_Logging_Handler<LOGGING_PEER_STREAM, COUNTER, ACE_LOGGER_SYNCH>
- // = TITLE
- // Product object created by a <ACE_Thr_Server_Logging_Acceptor>. An
- // <ACE_Thr_Server_Logging_Handler> receives, frames, and processes
- // logging records.
- //
- // = DESCRIPTION
- // Each client is handled in its own separate thread.
-{
-public:
- ACE_Thr_Server_Logging_Handler (ACE_Thread_Manager * = 0);
-
- virtual int open (void * = 0);
- // Override activation definition in the ACE_Svc_Handler class (will
- // spawn a new thread if we've got threads).
-
- virtual int svc (void);
- // Process remote logging records.
-};
-
-class ACE_Thr_Server_Logging_Acceptor : public ACE_Strategy_Acceptor<ACE_Thr_Server_Logging_Handler, LOGGING_PEER_ACCEPTOR>
- // = TITLE
- // This class implements the ACE multi-threaded logging service.
- //
- // = DESCRIPTION
- // This class contains the service-specific methods that can't
- // easily be factored into the <ACE_Strategy_Acceptor>.
-{
-public:
- virtual int init (int argc, char *argv[]);
- // Dynamic linking hook.
-
- int parse_args (int argc, char *argv[]);
- // Parse svc.conf arguments.
-
-private:
- ACE_Schedule_All_Threaded_Strategy<ACE_Thr_Server_Logging_Handler> scheduling_strategy_;
- // The scheduling strategy is designed for multi-threaded services.
-};
-
-int
-ACE_Thr_Server_Logging_Acceptor::parse_args (int argc, char *argv[])
-{
- ACE_TRACE ("ACE_Thr_Server_Logging_Acceptor::parse_args");
-
- this->service_port_ = ACE_DEFAULT_SERVER_PORT;
-
- ACE_LOG_MSG->open ("Logging Service");
-
- ACE_Get_Opt get_opt (argc, argv, "p:", 0);
-
- for (int c; (c = get_opt ()) != -1; )
- {
- switch (c)
- {
- case 'p':
- this->service_port_ = ACE_OS::atoi (get_opt.optarg);
- break;
- default:
- ACE_ERROR_RETURN ((LM_ERROR,
- "%n:\n[-p server-port]\n%a", 1),
- -1);
- break;
- }
- }
-
- this->service_addr_.set (this->service_port_);
- return 0;
-}
-
-int
-ACE_Thr_Server_Logging_Acceptor::init (int argc,
- char *argv[])
-{
- ACE_TRACE ("ACE_Thr_Server_Logging_Acceptor::init");
-
- // Use the options hook to parse the command line arguments and set
- // options.
- this->parse_args (argc, argv);
-
- // Set the acceptor endpoint into listen mode (use the Singleton
- // global Reactor...).
- if (this->open (this->service_addr_, ACE_Service_Config::reactor (),
- 0, 0, 0,
- &this->scheduling_strategy_,
- "Thr Logging Server", "ACE multi-threaded logging service") == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%n: %p on port %d\n",
- "acceptor::open failed",
- this->service_addr_.get_port_number ()), -1);
-
- // Ignore SIGPIPE so that each <SVC_HANDLER> can handle this on its
- // own.
- ACE_Sig_Action sig (ACE_SignalHandler (SIG_IGN), SIGPIPE);
-
- ACE_INET_Addr server_addr;
-
- // Figure out what port we're really bound to.
- if (this->acceptor ().get_local_addr (server_addr) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "get_local_addr"), -1);
-
- ACE_DEBUG ((LM_DEBUG,
- "starting up Threaded Logging Server at port %d on handle %d\n",
- server_addr.get_port_number (),
- this->acceptor ().get_handle ()));
- return 0;
-}
-
-// The following are "Factories" used by the ACE_Service_Config and
-// svc.conf file to dynamically initialize the state of the
-// single-threaded and multi-threaded logging server.
-
-ACE_SVC_FACTORY_DEFINE (ACE_Server_Logging_Acceptor)
-ACE_SVC_FACTORY_DEFINE (ACE_Thr_Server_Logging_Acceptor)
-
-// No-op...
-
-ACE_Thr_Server_Logging_Handler::ACE_Thr_Server_Logging_Handler (ACE_Thread_Manager *)
-{
-}
-
-// Override definition in the ACE_Svc_Handler class (spawn a new
-// thread if we're configured with ACE_HAS_THREADS!).
-
-int
-ACE_Thr_Server_Logging_Handler::open (void *)
-{
- // Shut off non-blocking IO since now we can block in our own
- // thread!
- if (this->peer ().disable (ACE_NONBLOCK) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "disable"), -1);
-
- ACE_INET_Addr client_addr;
-
- // Determine the address of the client and display it.
- if (this->peer ().get_remote_addr (client_addr) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "get_remote_addr"), -1);
-
- ACE_OS::strncpy (this->host_name_, client_addr.get_host_name (), MAXHOSTNAMELEN + 1);
-
- ACE_DEBUG ((LM_DEBUG, "(%t) accepted connection from host %s on fd %d\n",
- client_addr.get_host_name (), this->peer ().get_handle ()));
-
- // Spawn a new thread of control to handle logging records with the
- // client. Note that this implicitly uses the
- // ACE_Service_Config::thr_mgr () to control all the threads.
- if (this->activate (THR_BOUND | THR_DETACHED) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "spawn"), -1);
- return 0;
-}
-
-// Process remote logging records.
-
-int
-ACE_Thr_Server_Logging_Handler::svc (void)
-{
- int result = 0;
-
- // Loop until the client terminates the connection or an error occurs.
-
- while ((result = this->handle_input ()) > 0)
- continue;
-
- return result;
-}
-
-#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
-template class ACE_Strategy_Acceptor<ACE_Thr_Server_Logging_Handler, LOGGING_PEER_ACCEPTOR>;
-template class ACE_Schedule_All_Threaded_Strategy<ACE_Thr_Server_Logging_Handler>;
-template class ACE_Strategy_Acceptor<ACE_Server_Logging_Handler<LOGGING_PEER_STREAM, u_long, ACE_NULL_SYNCH>, LOGGING_PEER_ACCEPTOR>;
-template class ACE_Schedule_All_Reactive_Strategy<ACE_Server_Logging_Handler<LOGGING_PEER_STREAM, u_long, ACE_NULL_SYNCH> >;
-#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
-
-
diff --git a/netsvcs/lib/Server_Logging_Handler.h b/netsvcs/lib/Server_Logging_Handler.h
deleted file mode 100644
index 03730b0d1d5..00000000000
--- a/netsvcs/lib/Server_Logging_Handler.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* -*- C++ -*- */
-// $Id$
-
-
-// ============================================================================
-//
-// = LIBRARY
-// ace
-//
-// = FILENAME
-// Server_Logging_Handler.h
-//
-// = AUTHOR
-// Doug Schmidt
-//
-// ============================================================================
-
-#if !defined (ACE_SERVER_LOGGING_HANDLER_H)
-#define ACE_SERVER_LOGGING_HANDLER_H
-
-#include "ace/OS.h"
-
-ACE_SVC_FACTORY_DECLARE (ACE_Server_Logging_Acceptor)
-ACE_SVC_FACTORY_DECLARE (ACE_Thr_Server_Logging_Acceptor)
-
-#endif /* ACE_SERVER_LOGGING_HANDLER_H */
diff --git a/netsvcs/lib/Server_Logging_Handler.i b/netsvcs/lib/Server_Logging_Handler.i
deleted file mode 100644
index 57c6d26e751..00000000000
--- a/netsvcs/lib/Server_Logging_Handler.i
+++ /dev/null
@@ -1,4 +0,0 @@
-/* -*- C++ -*- */
-// $Id$
-
-
diff --git a/netsvcs/lib/TS_Clerk_Handler.cpp b/netsvcs/lib/TS_Clerk_Handler.cpp
deleted file mode 100644
index 2e84117e592..00000000000
--- a/netsvcs/lib/TS_Clerk_Handler.cpp
+++ /dev/null
@@ -1,805 +0,0 @@
-// TS_Clerk_Handler.cpp
-// $Id$
-
-#define ACE_BUILD_SVC_DLL
-#include "ace/Service_Config.h"
-#include "ace/Connector.h"
-
-#include "ace/Get_Opt.h"
-#include "ace/SOCK_Connector.h"
-#include "ace/SOCK_Stream.h"
-#include "ace/Svc_Handler.h"
-#include "ace/Time_Value.h"
-#include "ace/Time_Request_Reply.h"
-#include "ace/OS.h"
-#include "ace/Malloc.h"
-#include "TS_Clerk_Handler.h"
-
-// A simple struct containing delta time and a sequence number
-struct ACE_Time_Info
-{
- long delta_time_;
- ACE_UINT32 sequence_num_;
-};
-
-class ACE_TS_Clerk_Processor; // forward declaration
-
-class ACE_Svc_Export ACE_TS_Clerk_Handler : public ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH>
- // = TITLE
- // The Clerk Handler provides the interface that is used by the
- // Clerk Processor to send time update requests to all the
- // servers. It obtains these updates from the servers and passes
- // the updates to the Clerk Processor
- //
- // = DESCRIPTION
- // The Clerk Processor uses send_request() to send a request for
- // time update to a server. The Clerk Handler internally computes
- // the round trip delay for the reply to come back. Once it gets
- // the reply back from the server (handle_input), it adjusts the
- // system time using the round trip delay estimate and then
- // passes the delta time by reference back to the Clerk Processor.
-{
-public:
- ACE_TS_Clerk_Handler (ACE_TS_Clerk_Processor *processor,
- ACE_INET_Addr &addr);
- // Default constructor.
-
- // = Set/get the current state
- enum State
- {
- IDLE = 1, // Prior to initialization.
- CONNECTING, // During connection establishment.
- ESTABLISHED, // Connection is established and active.
- DISCONNECTING, // In the process of disconnecting.
- FAILED // Connection has failed.
- };
-
- // = Set/get the current state.
- State state (void);
- void state (State);
-
- // = Set/get the current retry timeout delay.
- int timeout (void);
- void timeout (int);
-
- // = Set/get the maximum retry timeout delay.
- int max_timeout (void);
- void max_timeout (int);
-
- virtual int open (void * = 0);
- // Activate this instance of the <ACE_TS_Clerk_Handler>
- // (called by the <ACE_TS_Clerk_Processor>).
-
- virtual ACE_HANDLE get_handle (void) const;
- // Return the handle of the message_fifo_;
-
- virtual int handle_close (ACE_HANDLE = ACE_INVALID_HANDLE,
- ACE_Reactor_Mask = ACE_Event_Handler::ALL_EVENTS_MASK);
- // Called when object is removed from the ACE_Reactor
-
- virtual int handle_input (ACE_HANDLE);
- // Receive time update from a server.
-
- virtual int handle_timeout (const ACE_Time_Value &tv,
- const void *arg);
- // Restart connection asynchronously when timeout occurs.
-
- void remote_addr (ACE_INET_Addr &addr);
- ACE_INET_Addr &remote_addr (void);
- // Get/Set remote addr
-
- int send_request (ACE_UINT32 sequence_num, ACE_Time_Info &time_info);
- // Send request for time update to the server as well as return the
- // current time info by reference.
-
-protected:
- virtual int handle_signal (int signum, siginfo_t *, ucontext_t *);
- // Handle SIGPIPE.
-
- static void stderr_output (int = 0);
-
- enum
- {
- MAX_RETRY_TIMEOUT = 300 // 5 minutes is the maximum timeout.
- };
-private:
- int recv_reply (ACE_Time_Request &reply);
- // Receive a reply from a server containing time update
-
- int reinitiate_connection (void);
- // Reinitiate connection with the server
-
- State state_;
- // The current state of the connection
-
- int timeout_;
- // Amount of time to wait between reconnection attempts
-
- int max_timeout_;
- // Maximum amount of time to wait between reconnection attempts
-
- ACE_INET_Addr remote_addr_;
- // Remote Addr used for connecting to the server
-
- ACE_TS_Clerk_Processor *processor_;
- // Instance of Clerk Processor used for re-establishing connections
-
- ACE_UINT32 start_time_;
- // Time at which request was sent (used to compute round trip delay)
-
- ACE_UINT32 cur_sequence_num_;
- // Next sequence number of time request (waiting for this update from
- // the server).
-
- ACE_Time_Info time_info_;
- // Record of current delta time and current sequence number
-};
-
-class ACE_TS_Clerk_Processor : public ACE_Connector <ACE_TS_Clerk_Handler, ACE_SOCK_CONNECTOR>
- // = TITLE
- // This class manages all the connections to the servers along
- // with querying them periodically for time updates.
- // = DESCRIPTION
- // The Clerk Processor creates connections to all the servers and
- // creates an ACE_TS_Clerk_Handler for each connection to handle
- // the requests and replies. It periodically sends a request for
- // time update through each of the handlers and uses the replies for
- // computing a synchronized system time.
-{
-public:
- ACE_TS_Clerk_Processor (void);
- // Default constructor
-
- virtual int handle_timeout (const ACE_Time_Value &tv,
- const void *arg);
- // Query servers for time periodically (timeout value)
-
- int initiate_connection (ACE_TS_Clerk_Handler *, ACE_Synch_Options &);
- // Set up connections to all servers
-
-protected:
- // = Dynamic linking hooks.
- virtual int init (int argc, char *argv[]);
- // Called when service is linked.
-
- virtual int fini (void);
- // Called when service is unlinked.
-
- virtual int info (char **strp, size_t length) const;
- // Called to determine info about the service.
-
- // = Scheduling hooks.
- virtual int suspend (void);
- virtual int resume (void);
-
-private:
- int parse_args (int argc, char *argv[]);
- // Parse svc.conf arguments.
-
- void alloc (void);
- // Allocate entry in shared memory for system time
-
- int update_time ();
- // Update delta_time using times obtained from all servers
-
- typedef ACE_Malloc <ACE_MMAP_MEMORY_POOL, ACE_Null_Mutex> MALLOC;
- typedef ACE_Allocator_Adapter<MALLOC> ALLOCATOR;
- ALLOCATOR *shmem_;
- // Allocator (used for reading/writing system time from/to shared memory)
-
- typedef ACE_Unbounded_Set <ACE_TS_Clerk_Handler *> HANDLER_SET;
- typedef ACE_Unbounded_Set_Iterator <ACE_TS_Clerk_Handler *> HANDLER_SET_ITERATOR;
- HANDLER_SET handler_set_;
- // Set of TS_Clerk_Handlers and iterator over the set.
-
- struct System_Time
- {
- long *delta_time_; // Difference between system time and local time
- long *last_local_time_; // Last local time
- };
-
- System_Time system_time_;
- // Clerk system time containing pointers to entries in shared memory
-
- int timer_id_;
- // Timer id returned by Reactor
-
- int timeout_;
- // Time period for updating system time
-
- LPCTSTR poolname_;
- // Pool name for backing store
-
- int blocking_semantics_;
- // Do a blocking/non-blocking connect
-
- ACE_UINT32 cur_sequence_num_;
- // Sequence number of next expected update from servers
-};
-
-
-ACE_TS_Clerk_Handler::ACE_TS_Clerk_Handler (ACE_TS_Clerk_Processor *processor,
- ACE_INET_Addr &addr)
-: state_ (ACE_TS_Clerk_Handler::IDLE),
- timeout_ (ACE_DEFAULT_TIMEOUT),
- max_timeout_ (ACE_TS_Clerk_Handler::MAX_RETRY_TIMEOUT),
- remote_addr_ (addr),
- processor_ (processor)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::ACE_TS_Clerk_Handler");
- this->time_info_.delta_time_ = 0;
- this->time_info_.sequence_num_ = 0;
-}
-
-// Set the connection state
-void
-ACE_TS_Clerk_Handler::state (ACE_TS_Clerk_Handler::State state)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::state");
- this->state_ = state;
-}
-
-// Get the connection state
-ACE_TS_Clerk_Handler::State
-ACE_TS_Clerk_Handler::state (void)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::state");
- return this->state_;
-}
-
-// Sets the timeout delay.
-void
-ACE_TS_Clerk_Handler::timeout (int to)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::timeout");
- if (to > this->max_timeout_)
- to = this->max_timeout_;
-
- this->timeout_ = to;
-}
-
-// Recalculate the current retry timeout delay using exponential
-// backoff. Returns the original timeout (i.e., before the
-// recalculation).
-int
-ACE_TS_Clerk_Handler::timeout (void)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::timeout");
- int old_timeout = this->timeout_;
- this->timeout_ *= 2;
-
- if (this->timeout_ > this->max_timeout_)
- this->timeout_ = this->max_timeout_;
-
- return old_timeout;
-}
-
-// This is called when a <send> to the logging server fails...
-
-int
-ACE_TS_Clerk_Handler::handle_signal (int, siginfo_t *, ucontext_t *)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::handle_signal");
- return -1;
-}
-
-// Set the max timeout delay.
-void
-ACE_TS_Clerk_Handler::max_timeout (int mto)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::max_timeout");
- this->max_timeout_ = mto;
-}
-
-// Gets the max timeout delay.
-int
-ACE_TS_Clerk_Handler::max_timeout (void)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::max_timeout");
- return this->max_timeout_;
-}
-
-int
-ACE_TS_Clerk_Handler::open (void *)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::open");
- ACE_INET_Addr server_addr;
-
- // Set connection state as established
- this->state (ACE_TS_Clerk_Handler::ESTABLISHED);
-
- // Register ourselves to receive SIGPIPE so we can attempt
- // reconnections.
-#if !defined (ACE_WIN32)
- if (ACE_Service_Config::reactor ()->register_handler (SIGPIPE, this) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%n: %p\n",
- "register_handler (SIGPIPE)"), -1);
-#endif
-
- // Register ourselves with the reactor to receive input
- if (ACE_Service_Config::reactor ()->register_handler (this->get_handle (),
- this,
- ACE_Event_Handler::READ_MASK |
- ACE_Event_Handler::EXCEPT_MASK) == -1)
- ACE_ERROR ((LM_ERROR, "%n: %p\n", "register_handler (this)"));
-
- // Figure out what remote port we're really bound to.
- else if (this->peer ().get_remote_addr (server_addr) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "get_remote_addr"), -1);
-
- ACE_DEBUG ((LM_DEBUG,
- "TS Clerk Daemon connected to port %d on handle %d\n",
- server_addr.get_port_number (),
- this->peer ().get_handle ()));
-
- return 0;
-}
-
-ACE_HANDLE
-ACE_TS_Clerk_Handler::get_handle (void) const
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::get_handle");
- return this->peer().get_handle ();
-}
-
-int
-ACE_TS_Clerk_Handler::handle_close (ACE_HANDLE,
- ACE_Reactor_Mask)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::handle_close");
- ACE_DEBUG ((LM_DEBUG, "(%t) shutting down on handle %d\n", this->get_handle ()));
- return this->reinitiate_connection ();
-}
-
-int
-ACE_TS_Clerk_Handler::reinitiate_connection (void)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::reinitiate_connection");
- // Skip over deactivated descriptors.
-
- // Set state to connecting so that we don't try to send anything
- // using this handler
- this->state (ACE_TS_Clerk_Handler::CONNECTING);
- if (this->get_handle () != ACE_INVALID_HANDLE)
- {
- ACE_DEBUG ((LM_DEBUG, "(%t) Scheduling reinitiation of connection\n"));
-
- // Reschedule ourselves to try and connect again.
- if (ACE_Service_Config::reactor ()->schedule_timer (this, 0,
- this->timeout ()) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "(%t) %p\n", "schedule_timer"), -1);
- }
- return 0;
-}
-
-// Receive a time update from a server
-int
-ACE_TS_Clerk_Handler::handle_input (ACE_HANDLE)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::handle_input");
- // We're getting a time update message from a server
- ACE_Time_Request reply;
- if (this->recv_reply (reply) != 0)
- return -1;
- else
- {
- // Get current local time
- ACE_UINT32 local_time = ACE_OS::time (0);
-
- // Compure delta time (difference between current local time and
- // system time obtained from the server)
- long t = reply.time () - local_time;
-
- // Compute round trip delay and adjust time accordingly
- ACE_UINT32 one_way_time = (local_time - this->start_time_)/2;
- t += one_way_time;
-
- // Now update time info (to be retrieved by Clerk_Processor)
- this->time_info_.delta_time_ = t;
- this->time_info_.sequence_num_ = this->cur_sequence_num_;
- }
- return 0;
-}
-
-// Restart connection asynchronously when timeout occurs.
-int
-ACE_TS_Clerk_Handler::handle_timeout (const ACE_Time_Value &,
- const void *)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::handle_timeout");
- ACE_DEBUG ((LM_DEBUG,
- "(%t) attempting to reconnect to server with timeout = %d\n",
- this->timeout_));
-
- // Close down peer to reclaim descriptor if need be. Note this is
- // necessary to reconnect.
- this->peer ().close ();
-
- return this->processor_->initiate_connection (this, ACE_Synch_Options::asynch);
-}
-
-void
-ACE_TS_Clerk_Handler::remote_addr (ACE_INET_Addr &addr)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::remote_addr");
- this->remote_addr_ = addr;
-}
-
-ACE_INET_Addr &
-ACE_TS_Clerk_Handler::remote_addr (void)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::remote_addr");
- return this->remote_addr_;
-}
-
-int
-ACE_TS_Clerk_Handler::recv_reply (ACE_Time_Request &reply)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::recv_reply");
- const int bytes_expected = reply.size ();
-
- // Since Time_Request messages are fixed size, read the entire
- // message in one go.
- ssize_t n = this->peer ().recv ((void *) &reply, bytes_expected);
-
- if (n != bytes_expected)
- {
- switch (n)
- {
- case -1:
- // FALLTHROUGH
- ACE_DEBUG ((LM_DEBUG, "****************** recv_reply returned -1\n"));
- default:
- ACE_ERROR ((LM_ERROR, "%p got %d bytes, expected %d bytes\n",
- "recv failed", n, bytes_expected));
- // FALLTHROUGH
- case 0:
- // We've shutdown unexpectedly
- return -1;
- // NOTREACHED
- }
- }
- else if (reply.decode () == -1) // Decode the request into host byte order.
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "decode failed"), -1);
- return 0;
-}
-
-
-int
-ACE_TS_Clerk_Handler::send_request (ACE_UINT32 sequence_num, ACE_Time_Info &time_info)
-{
- ACE_TRACE ("ACE_TS_Clerk_Handler::send_request");
- void *buffer;
- ssize_t length;
-
- // Update current sequence number
- this->cur_sequence_num_ = sequence_num;
-
- // First update the current time info.
- time_info.delta_time_ = this->time_info_.delta_time_;
- time_info.sequence_num_ = this->time_info_.sequence_num_;
-
- // Now prepare a new time update request
- ACE_Time_Request request (ACE_Time_Request::TIME_UPDATE, 0, 0);
-
- if ((length = request.encode (buffer)) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "encode failed"), -1);
-
- // Compute start time of sending request (needed to compute
- // roundtrip delay)
- this->start_time_ = ACE_OS::time (0);
-
- // Send the request
- if (this->peer ().send_n (buffer, length) != length)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "send_n failed"), -1);
-
- return 0;
-}
-
-ACE_TS_Clerk_Processor::ACE_TS_Clerk_Processor ()
-: timeout_ (ACE_DEFAULT_TIMEOUT),
- poolname_ (ACE_DEFAULT_BACKING_STORE),
- blocking_semantics_ (0),
- cur_sequence_num_ (0)
-{
-}
-
-void
-ACE_TS_Clerk_Processor::alloc (void)
-{
- ACE_TRACE ("ACE_TS_Clerk_Processor::alloc");
- ACE_NEW (this->shmem_, ALLOCATOR (this->poolname_));
-
- void *temp = 0;
- // Only create the state if it doesn't already exist.
- if (this->shmem_->find (ACE_DEFAULT_TIME_SERVER_STR, temp) == -1)
- {
- // Allocate the space out of shared memory for the system time entry
- temp = this->shmem_->malloc (sizeof (this->system_time_));
-
- // Give it a name binding
- this->shmem_->bind (ACE_DEFAULT_TIME_SERVER_STR, temp);
-
- // Set up pointers. Note that we add one to get to the second
- // field in the structure
- this->system_time_.delta_time_ = (long *) temp;
- this->system_time_.last_local_time_ = ((long *) temp) + 1;
-
- // Initialize
- *(this->system_time_.delta_time_) = 0;
- *(this->system_time_.last_local_time_) = ACE_OS::time (0);
- }
-}
-
-// Query the servers for the latest time
-int
-ACE_TS_Clerk_Processor::handle_timeout (const ACE_Time_Value &,
- const void *)
-{
- ACE_TRACE ("ACE_TS_Clerk_Processor::handle_timeout");
- return this->update_time ();
-}
-
-int
-ACE_TS_Clerk_Processor::update_time ()
-{
- ACE_TRACE ("ACE_TS_Clerk_Processor::update_time");
- ACE_UINT32 expected_sequence_num = this->cur_sequence_num_;
-
- // Increment sequence number
- this->cur_sequence_num_++;
-
- int count = 0;
- long total_delta = 0;
- ACE_Time_Info time_info;
-
- // Call send_request() on all handlers
- ACE_TS_Clerk_Handler **handler = 0;
-
- for (HANDLER_SET_ITERATOR set_iterator (this->handler_set_);
- set_iterator.next (handler) != 0;
- set_iterator.advance ())
- {
- if ((*handler)->state () == ACE_TS_Clerk_Handler::ESTABLISHED)
- {
- if ((*handler)->send_request (this->cur_sequence_num_, time_info) == -1)
- return -1;
- // Check if sequence numbers match; otherwise discard
- else if (expected_sequence_num != 0 &&
- time_info.sequence_num_ == expected_sequence_num)
- {
- count++;
- ACE_DEBUG ((LM_DEBUG, "[%d] Delta time: %d\n", count, time_info.delta_time_));
-
- // #### Can check here if delta value falls within a threshold ####
- total_delta += time_info.delta_time_;
- }
- }
- }
- // Update system_time_ using average of times obtained from all the servers.
- // Note that we are keeping two things in shared memory: the delta
- // time (difference between our system clock and the local clock),
- // and the last local time
- if (count > 0)
- {
- // At least one server is out there
- *(this->system_time_.delta_time_) = total_delta/count;
- }
- else
- {
- // No servers are out there (or this is the first time around
- // computing the time) so set delta time to zero. This
- // would mean that clients would use the actual local system time.
- *(this->system_time_.delta_time_) = 0;
- }
- // Update the last local time
- *(this->system_time_.last_local_time_) = ACE_OS::time (0);
-
- ACE_DEBUG ((LM_DEBUG, "Average delta time: %d\n", *(this->system_time_.delta_time_)));
- return 0;
-}
-
-
-int
-ACE_TS_Clerk_Processor::fini (void)
-{
- ACE_TRACE ("ACE_TS_Clerk_Processor::fini");
-
- // Cancel the timer
- if (this->timer_id_ != -1)
- ACE_Service_Config::reactor ()->cancel_timer (this->timer_id_);
-
- // Destroy all the handlers
- ACE_TS_Clerk_Handler **handler = 0;
-
- for (HANDLER_SET_ITERATOR set_iterator (this->handler_set_);
- set_iterator.next (handler) != 0;
- set_iterator.advance ())
- {
- if ((*handler)->state () != ACE_TS_Clerk_Handler::IDLE)
- // Mark state as DISCONNECTING so we don't try to reconnect...
- (*handler)->state (ACE_TS_Clerk_Handler::DISCONNECTING);
-
- // Deallocate resources.
- (*handler)->destroy (); // Will trigger a delete
- }
-
- // Remove the backing store
- this->shmem_->remove ();
- return 0;
-}
-
-int
-ACE_TS_Clerk_Processor::info (char **, size_t) const
-{
- ACE_TRACE ("ACE_TS_Clerk_Processor::info");
- return 0;
-}
-
-int
-ACE_TS_Clerk_Processor::init (int argc, char *argv[])
-{
- ACE_TRACE ("ACE_TS_Clerk_Processor::init");
- // Use the options hook to parse the command line arguments and set
- // options.
- this->parse_args (argc, argv);
-
- this->alloc ();
-
-#if !defined (ACE_WIN32)
- // Ignore SIPPIPE so each Output_Channel can handle it.
- ACE_Sig_Action sig (ACE_SignalHandler (SIG_IGN), SIGPIPE);
-#endif /* ACE_WIN32 */
-
- ACE_Synch_Options &synch_options = this->blocking_semantics_ == 0
- ? ACE_Synch_Options::asynch : ACE_Synch_Options::synch;
-
- // Now set up connections to all servers
- ACE_TS_Clerk_Handler **handler = 0;
-
- for (HANDLER_SET_ITERATOR set_iterator (this->handler_set_);
- set_iterator.next (handler) != 0;
- set_iterator.advance ())
- {
- this->initiate_connection (*handler, synch_options);
- }
- // Now set up timer to receive updates from server
- // set the timer to go off after timeout value
- this->timer_id_ = ACE_Service_Config::reactor ()->schedule_timer (this,
- NULL,
- ACE_Time_Value (this->timeout_),
- ACE_Time_Value (this->timeout_));
- return 0;
-}
-
-int
-ACE_TS_Clerk_Processor::initiate_connection (ACE_TS_Clerk_Handler *handler,
- ACE_Synch_Options &synch_options)
-{
- ACE_TRACE ("ACE_TS_Clerk_Processor::initiate_connection");
- char buf[MAXHOSTNAMELEN + 1];
-
- // Mark ourselves as idle so that the various iterators will ignore
- // us until we are connected/reconnected.
- handler->state (ACE_TS_Clerk_Handler::IDLE);
-
- if (handler->remote_addr ().addr_to_string (buf, sizeof buf) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "(%t) %p\n",
- "can't obtain peer's address"), -1);
-
- // Establish connection with the server.
- if (this->connect (handler,
- handler->remote_addr (),
- synch_options) == -1)
- {
- if (errno != EWOULDBLOCK)
- {
- handler->state (ACE_TS_Clerk_Handler::FAILED);
- ACE_DEBUG ((LM_DEBUG, "(%t) %p on address %s\n", "connect", buf));
-
- // Reschedule ourselves to try and connect again.
- if (synch_options[ACE_Synch_Options::USE_REACTOR])
- {
- if (ACE_Service_Config::reactor ()->schedule_timer (handler,
- 0,
- handler->timeout ()) == 0)
- ACE_ERROR_RETURN ((LM_ERROR, "(%t) %p\n", "schedule_timer"), -1);
- }
- else
- // Failures on synchronous connects are reported as errors
- // so that the caller can decide how to proceed.
- return -1;
- }
- else
- {
- handler->state (ACE_TS_Clerk_Handler::CONNECTING);
- ACE_DEBUG ((LM_DEBUG,
- "(%t) in the process of connecting %s to %s\n",
- synch_options[ACE_Synch_Options::USE_REACTOR]
- ? "asynchronously" : "synchronously", buf));
- }
- }
- else
- {
- handler->state (ACE_TS_Clerk_Handler::ESTABLISHED);
- ACE_DEBUG ((LM_DEBUG, "(%t) connected to %s on %d\n",
- buf, handler->get_handle ()));
- }
- return 0;
-}
-
-int
-ACE_TS_Clerk_Processor::parse_args (int argc, char *argv[])
-{
- ACE_TRACE ("ACE_TS_Clerk_Processor::parse_args");
- ACE_INET_Addr server_addr;
- ACE_TS_Clerk_Handler *handler;
- char server_host[BUFSIZ];
-
- // Create a default entry
- ACE_OS::sprintf (server_host, "%s:%d",
- ACE_DEFAULT_SERVER_HOST,
- ACE_DEFAULT_LOGGING_SERVER_PORT);
-
- ACE_Get_Opt get_opt (argc, argv, "h:t:p:b", 0);
-
- for (int c; (c = get_opt ()) != -1; )
- {
- switch (c)
- {
- case 'h':
- // Get the hostname:port and create an ADDR
- server_addr.set (get_opt.optarg);
-
- // Create a new handler
- ACE_NEW_RETURN (handler,
- ACE_TS_Clerk_Handler (this, server_addr),
- -1);
-
- // Cache the handler
- this->handler_set_.insert (handler);
- break;
- case 't':
- // Get the timeout value
- this->timeout_ = ACE_OS::atoi (get_opt.optarg);
- break;
- case 'p':
- // Get the poolname
- this->poolname_ = ACE_WIDE_STRING (get_opt.optarg);
- break;
- case 'b':
- // Blocking semantics
- this->blocking_semantics_ = 1;
- break;
- default:
- ACE_ERROR_RETURN ((LM_ERROR,
- "%n:\n[-p hostname:port] [-t timeout] [-p poolname]\n%a", 1),
- -1);
- break;
- }
- }
- return 0;
-}
-
-int
-ACE_TS_Clerk_Processor::suspend (void)
-{
- ACE_TRACE ("ACE_TS_Clerk_Processor::suspend");
- return 0;
-}
-
-int
-ACE_TS_Clerk_Processor::resume (void)
-{
- ACE_TRACE ("ACE_TS_Clerk_Processor::resume");
- return 0;
-}
-
-// The following is a "Factory" used by the ACE_Service_Config and
-// svc.conf file to dynamically initialize the state of the TS_Clerk.
-
-ACE_SVC_FACTORY_DEFINE (ACE_TS_Clerk_Processor)
-
-#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
-template class ACE_Connector<ACE_TS_Clerk_Handler, ACE_SOCK_CONNECTOR>;
-#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/netsvcs/lib/TS_Clerk_Handler.h b/netsvcs/lib/TS_Clerk_Handler.h
deleted file mode 100644
index a1dcccdd4d9..00000000000
--- a/netsvcs/lib/TS_Clerk_Handler.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* -*- C++ -*- */
-// $Id$
-
-
-// ============================================================================
-//
-// = LIBRARY
-// ace
-//
-// = FILENAME
-// TS_Clerk_Handler.h
-//
-// = AUTHOR
-// Prashant Jain
-//
-// ============================================================================
-
-#if !defined (ACE_TS_CLERK_HANDLER_H)
-#define ACE_TS_CLERK_HANDLER_H
-
-ACE_SVC_FACTORY_DECLARE (ACE_TS_Clerk_Processor)
-
-#endif /* ACE_TS_CLERK_HANDLER_H */
diff --git a/netsvcs/lib/TS_Server_Handler.cpp b/netsvcs/lib/TS_Server_Handler.cpp
deleted file mode 100644
index 06ea4e9da5c..00000000000
--- a/netsvcs/lib/TS_Server_Handler.cpp
+++ /dev/null
@@ -1,324 +0,0 @@
-// TS_Server_Handler.cpp
-// $Id$
-
-#define ACE_BUILD_SVC_DLL
-#include "ace/SString.h"
-#include "ace/Set.h"
-#include "ace/Get_Opt.h"
-#include "ace/Acceptor.h"
-#include "ace/SOCK_Acceptor.h"
-#include "ace/SOCK_Stream.h"
-#include "ace/Time_Request_Reply.h"
-#include "TS_Server_Handler.h"
-
-class ACE_Svc_Export ACE_TS_Server_Handler : public ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH>
- // = TITLE
- // Product object created by <ACE_TS_Server_Acceptor>.
- //
- // = DESCRIPTION
-{
- friend class ACE_Shutup_GPlusPlus; // Turn off g++ warning
-public:
- // = Initialization and termination.
-
- ACE_TS_Server_Handler (ACE_Thread_Manager * = 0);
- // Default constructor.
-
- virtual int open (void * = 0);
- // Activate this instance of the <ACE_TS_Server_Handler> (called by the
- // <ACE_Strategy_Acceptor>).
-
- ~ACE_TS_Server_Handler (void);
- // Must be allocated dynamically.
-
-protected:
- // = Helper routines for the operations exported to clients.
-
- virtual int abandon (void);
- // Give up waiting (e.g., when a timeout occurs or a client shuts
- // down unexpectedly).
-
- // = Low level routines for framing requests, dispatching
- // operations, and returning replies.
-
- virtual int recv_request (void);
- // Receive, frame, and decode the client's request.
-
- virtual int dispatch (void);
- // Dispatch the appropriate operation to handle the client's
- // request.
-
- virtual int send_request (ACE_Time_Request &);
- // Special kind of reply
-
- // = Demultiplexing hooks.
- virtual ACE_HANDLE get_handle (void) const;
- // Return the underlying <ACE_HANDLE>.
-
- virtual int handle_input (ACE_HANDLE);
- // Callback method invoked by the <ACE_Reactor> when client events
- // arrive.
-
- // = Timer hook.
- virtual int handle_timeout (const ACE_Time_Value &tv, const void *arg);
- // Enable clients to limit the amount of time they wait.
-
-private:
- ACE_Time_Request time_request_;
- // Cache request from the client.
-
- ACE_INET_Addr addr_;
- // Address of client we are connected with.
-};
-
-class ACE_TS_Server_Acceptor : public ACE_Strategy_Acceptor<ACE_TS_Server_Handler, ACE_SOCK_ACCEPTOR>
- // = TITLE
- // This class contains the service-specific methods that can't
- // easily be factored into the <ACE_Strategy_Acceptor>.
-{
-public:
- virtual int init (int argc, char *argv[]);
- // Dynamic linking hook.
-
- int parse_args (int argc, char *argv[]);
- // Parse svc.conf arguments.
-
-private:
- ACE_Schedule_All_Reactive_Strategy<ACE_TS_Server_Handler> scheduling_strategy_;
- // The scheduling strategy is designed for Reactive services.
-};
-
-int
-ACE_TS_Server_Acceptor::parse_args (int argc, char *argv[])
-{
- ACE_TRACE ("ACE_TS_Server_Acceptor::parse_args");
-
- this->service_port_ = ACE_DEFAULT_SERVER_PORT;
-
- ACE_LOG_MSG->open ("Time Service");
-
- ACE_Get_Opt get_opt (argc, argv, "p:", 0);
-
- for (int c; (c = get_opt ()) != -1; )
- {
- switch (c)
- {
- case 'p':
- this->service_port_ = ACE_OS::atoi (get_opt.optarg);
- break;
- default:
- ACE_ERROR_RETURN ((LM_ERROR,
- "%n:\n[-p server-port]\n%a", 1),
- -1);
- break;
- }
- }
- this->service_addr_.set (this->service_port_);
- return 0;
-}
-
-int
-ACE_TS_Server_Acceptor::init (int argc, char *argv[])
-{
- ACE_TRACE ("ACE_TS_Server_Acceptor::init");
-
- // Use the options hook to parse the command line arguments and set
- // options.
- this->parse_args (argc, argv);
-
- // Set the acceptor endpoint into listen mode (use the Singleton
- // global Reactor...).
- if (this->open (this->service_addr_, ACE_Service_Config::reactor (),
- 0, 0, 0,
- &this->scheduling_strategy_,
- "Time Server", "ACE time service") == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%n: %p on port %d\n",
- "acceptor::open failed",
- this->service_addr_.get_port_number ()), -1);
-
- // Register ourselves to receive SIGINT so we can shutdown
- // gracefully.
- if (this->reactor ()->register_handler (SIGINT, this) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%n: %p\n",
- "register_handler (SIGINT)"), -1);
-
- // Ignore SIGPIPE so that each <SVC_HANDLER> can handle this on its
- // own.
- ACE_Sig_Action sig ((ACE_SignalHandler) SIG_IGN, SIGPIPE);
-
- ACE_INET_Addr server_addr;
-
- // Figure out what port we're really bound to.
- if (this->acceptor ().get_local_addr (server_addr) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "get_local_addr"), -1);
-
- ACE_DEBUG ((LM_DEBUG,
- "starting up Time Server at port %d on handle %d\n",
- server_addr.get_port_number (),
- this->acceptor ().get_handle ()));
- return 0;
-}
-
-// The following is a "Factory" used by the ACE_Service_Config and
-// svc.conf file to dynamically initialize the state of the Time Server
-
-ACE_SVC_FACTORY_DEFINE (ACE_TS_Server_Acceptor)
-
-// Default constructor.
-ACE_TS_Server_Handler::ACE_TS_Server_Handler (ACE_Thread_Manager *tm)
- : ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH> (tm)
-{
- ACE_TRACE ("ACE_TS_Server_Handler::ACE_TS_Server_Handler");
-}
-
-// Activate this instance of the ACE_TS_Server_Handler (called by the
-// ACE_TS_Server_Acceptor).
-
-/* VIRTUAL */ int
-ACE_TS_Server_Handler::open (void *)
-{
- ACE_TRACE ("ACE_TS_Server_Handler::open");
-
- ACE_INET_Addr client_addr;
-
- // Determine the address of the client and display it.
- if (this->peer ().get_remote_addr (client_addr) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "get_remote_addr"), -1);
-
- ACE_DEBUG ((LM_DEBUG, "(%t) accepted connection from host %s on fd %d\n",
- client_addr.get_host_name (), this->peer ().get_handle ()));
-
- // Call down to our parent to register ourselves with the Reactor.
- if (ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH>::open (0) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "open"), -1);
- return 0;
-}
-
-/* VIRTUAL */ int
-ACE_TS_Server_Handler::send_request (ACE_Time_Request &request)
-{
- ACE_TRACE ("ACE_TS_Server_Handler::send_request");
- void *buffer;
- ssize_t length = request.encode (buffer);
-
- if (length == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "encode failed"), -1);
-
- // Transmit request via a blocking send.
-
- if (this->peer ().send_n (buffer, length) != length)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "send_n failed"), -1);
-
- return 0;
-}
-
-// Give up waiting (e.g., when a timeout occurs or a client shuts down
-// unexpectedly).
-
-/* VIRTUAL */ int
-ACE_TS_Server_Handler::abandon (void)
-{
- ACE_TRACE ("ACE_TS_Server_Handler::abandon");
-
- // Note we are using the time field to report the errno in case of
- // failure.
- ACE_Time_Request rq (ACE_Time_Request::FAILURE, errno);
- return this->send_request (rq);
-}
-
-// Enable clients to limit the amount of time they'll wait
-/* VIRTUAL */ int
-ACE_TS_Server_Handler::handle_timeout (const ACE_Time_Value &, const void *)
-{
- ACE_TRACE ("ACE_TS_Server_Handler::handle_timeout");
- return this->abandon ();
-}
-
-// Return the underlying ACE_HANDLE.
-
-/* VIRTUAL */ ACE_HANDLE
-ACE_TS_Server_Handler::get_handle (void) const
-{
- ACE_TRACE ("ACE_TS_Server_Handler::get_handle");
- return this->peer ().get_handle ();
-}
-
-// Dispatch the appropriate operation to handle the client request.
-
-/* VIRTUAL */ int
-ACE_TS_Server_Handler::dispatch (void)
-{
- ACE_TRACE ("ACE_TS_Server_Handler::dispatch");
- // Get the system time and then create an ACE_Time_Request
- time_t t = ACE_OS::time (0);
- ACE_Time_Request rq (ACE_Time_Request::TIME_UPDATE, t);
- return this->send_request (rq);
-}
-
-// Receive, frame, and decode the client's request. Note, this method
-// should use non-blocking I/O.
-
-/* VIRTUAL */ int
-ACE_TS_Server_Handler::recv_request (void)
-{
- ACE_TRACE ("ACE_TS_Server_Handler::recv_request");
- ssize_t bytes_expected = this->time_request_.size ();
-
- // Since Time_Request messages are fixed size, read the entire
- // message in one go.
- ssize_t n = this->peer ().recv ((void *) &this->time_request_, bytes_expected);
- if (n != bytes_expected)
- {
- switch (n)
- {
- case -1:
- /* FALLTHROUGH */
- ACE_DEBUG ((LM_DEBUG, "****************** recv_request returned -1\n"));
- default:
- ACE_ERROR ((LM_ERROR, "%p got %d bytes, expected %d bytes\n",
- "recv failed", n, bytes_expected));
- /* FALLTHROUGH */
- case 0:
- // We've shutdown unexpectedly, let's abandon the connection.
- this->abandon ();
- return -1;
- /* NOTREACHED */
- }
- }
- else
- {
- // Decode the request into host byte order.
- if (this->time_request_.decode () == -1)
- {
- ACE_ERROR ((LM_ERROR, "%p\n", "decode failed"));
- return this->abandon ();
- }
- }
- return 0;
-}
-
-// Callback method invoked by the ACE_Reactor when events arrive from
-// the client.
-
-/* VIRTUAL */ int
-ACE_TS_Server_Handler::handle_input (ACE_HANDLE)
-{
- ACE_TRACE ("ACE_TS_Server_Handler::handle_input");
-
- if (this->recv_request () == -1)
- return -1;
- else
- return this->dispatch ();
-}
-
-ACE_TS_Server_Handler::~ACE_TS_Server_Handler (void)
-{
- ACE_TRACE ("ACE_TS_Server_Handler::~ACE_TS_Server_Handler");
- ACE_DEBUG ((LM_DEBUG, "closing down Handle %d\n",
- this->get_handle ()));
-}
-
-#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
-template class ACE_Strategy_Acceptor<ACE_TS_Server_Handler, ACE_SOCK_ACCEPTOR>;
-template class ACE_Schedule_All_Reactive_Strategy<ACE_TS_Server_Handler>;
-#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/netsvcs/lib/TS_Server_Handler.h b/netsvcs/lib/TS_Server_Handler.h
deleted file mode 100644
index 6fff595c215..00000000000
--- a/netsvcs/lib/TS_Server_Handler.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/* -*- C++ -*- */
-// $Id$
-
-// ============================================================================
-//
-// = LIBRARY
-// ace
-//
-// = FILENAME
-// TS_Server_Handler.h
-//
-// = AUTHOR
-// Prashant Jain
-//
-// ============================================================================
-
-#if !defined (ACE_TS_SERVER_HANDLER_H)
-#define ACE_TS_SERVER_HANDLER_H
-
-#include "ace/OS.h"
-
-ACE_SVC_FACTORY_DECLARE (ACE_TS_Server_Acceptor)
-
-#endif /* ACE_TS_SERVER_HANDLER_H */
diff --git a/netsvcs/lib/Token_Handler.cpp b/netsvcs/lib/Token_Handler.cpp
deleted file mode 100644
index 9fedf86b066..00000000000
--- a/netsvcs/lib/Token_Handler.cpp
+++ /dev/null
@@ -1,880 +0,0 @@
-// Token_Handler.cpp
-// $Id$
-
-#define ACE_BUILD_SVC_DLL
-
-#include "ace/Get_Opt.h"
-#include "ace/Acceptor.h"
-#include "ace/SOCK_Acceptor.h"
-#include "ace/Token_Request_Reply.h"
-#include "ace/Token_Collection.h"
-#include "ace/Local_Tokens.h"
-#include "Token_Handler.h"
-
-class ACE_Svc_Export ACE_Token_Handler : public ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH>
- // = TITLE
- // Product object created by an <ACE_Token_Acceptor>. A
- // <Token_Handler> exchanges messages with a <Token_Proxy> object
- // on the client-side.
- //
- // = DESCRIPTION
- // This class is the main workhorse of the ACE Token service. It
- // receives token operation requests from remote clients and turns
- // them into calls on local tokens (acquire, release, renew, and
- // remove). In OMG CORBA terms, it is an object adapter. It also
- // schedules and handles timeouts that are used to support "timed
- // waits." Clients used timed waits to bound the amount of time
- // they block trying to get a token.
-
-{
-public:
- // = Initialization and termination.
-
- ACE_Token_Handler (ACE_Thread_Manager * = 0);
- // Default constructor.
-
- // = Accessor and mutator methods.
-
- // = Remote operations "exported" to a client.
- virtual int acquire (ACE_Token_Proxy *proxy);
- // Try to acquire the token.
- // Precondition: client *may* hold the token already (i.e.,
- // supports recursive acquisitions).
-
- virtual int try_acquire (ACE_Token_Proxy *proxy);
- // Try to acquire the token.
-
- virtual int release (ACE_Token_Proxy *proxy);
- // Release the token and allow the next client that is waiting to
- // proceed. Preconditions: client must hold the token.
-
- virtual int renew (ACE_Token_Proxy *proxy);
- // Yield the token if any clients are waiting, otherwise keep the
- // token. Preconditions: client must hold the token.
-
- virtual int remove (ACE_Token_Proxy *proxy);
- // Remove the specified token from the Token_Map. Preconditions:
- // ACE_Token must exist. @@ Any other preconditions, e.g., must
- // client hold token, must there be no waiters, etc.?
-
- void sleep_hook (void);
- // Called by TS_[Mutex,RLock,WLock] when we hold the mutex and
- // someone wants it.
-
- void token_acquired (ACE_TPQ_Entry *);
- // Called by TS_[Mutex,RLock,WLock] when we are waiting and acquire
- // the mutex.
-
-protected:
- // = Low level routines for framing requests, dispatching
- // operations, and returning replies.
-
- virtual int abandon (int send_error);
- // Our connection has been closed.
-
- virtual int recv_request (void);
- // Receive, frame, and decode the client's request.
-
- virtual int dispatch (void);
- // Dispatch the appropriate operation to handle the client's
- // request.
-
- virtual int send_reply (ACE_UINT32 errnum);
- // Create and send a reply to the client.
-
- // = Demultiplexing hooks.
- virtual int handle_input (ACE_HANDLE);
- // Callback method invoked by the <ACE_Reactor> when client events
- // arrive.
-
- // = Timer hook.
- virtual int handle_timeout (const ACE_Time_Value &tv, const void *arg);
- // Enable clients to limit the amount of time they wait for a token.
-
- ACE_Token_Proxy *get_proxy (void);
- // return a proxy for the calling client_id and token name.
-
-private:
-
- virtual ACE_Token_Proxy *create_proxy (void);
- // Switches on the type of token_request_ and creates a new
- // Token_Proxy.
-
- ACE_Synch_Options request_options_;
- // Keeps track of the synchronization options (i.e., the timeout
- // interval).
-
- ACE_Token_Collection collection_;
- // collection of the client's token proxies.
-
- int timeout_id_;
- // ID returned by the Reactor that is used to kill registered timers
- // when a token operation times out.
-
- ACE_Token_Request token_request_;
- // Cache request from the client.
-
- ACE_Token_Reply token_reply_;
- // Cache reply to the client.
-};
-
-// = DESCRIPTION of ACE_TS_* classes:
-// When Tokens are released, waiting token proxies are notified
-// when the releasing thread calls token_acquired on the waiting
-// proxy. The Token Server specializes ACE_Token_Proxy to
-// redefine the implementation of token_acquired. When
-// token_acquired is called, the Token_Handler can then send the
-// response back over the socket connection to unblock the
-// client side.
-// Since only the Token_Handler uses ACE_TS_Mutex, we've moved
-// the definition to the .cpp file.
-
-class ACE_TS_Mutex : public ACE_Local_Mutex
- // = TITLE
- // ACE_TS_Mutex -- ACE_*T*oken_*S*erver_Mutex
-{
-public:
- ACE_TS_Mutex (const char *name,
- ACE_Token_Handler *th);
- // Creation.
-
-protected:
- virtual void sleep_hook (void);
- // Somebody wants our token!
-
- virtual void token_acquired (ACE_TPQ_Entry *);
- // We've been taken off the waiters list and given the token! Call
- // the Token_Handler associated at construction, so it can tell the
- // remote client.
-
- ACE_TS_Mutex (const ACE_TS_Mutex &);
- // Duplication.
-
- virtual ACE_Token_Proxy *clone (void) const;
- // Return a deep copy.
-
-private:
- ACE_Token_Handler* th_;
- // The Token Handler associated with this proxy. Set at
- // construction and notified when blocking acquires succeed.
-};
-
-class ACE_TS_RLock : public ACE_Local_RLock
- // = TITLE
- // ACE_TS_RLock -- ACE_*T*oken_*S*erver_RLock
-{
-public:
- ACE_TS_RLock (const char *name,
- ACE_Token_Handler *th);
- // Creation.
-
-protected:
- virtual void sleep_hook (void);
- // Somebody wants our token!
-
- virtual void token_acquired (ACE_TPQ_Entry *);
- // We've been taken off the waiters list and given the token! Call
- // the Token_Handler associated at construction, so it can tell the
- // remote client.
-
- ACE_TS_RLock (const ACE_TS_RLock&);
- // Duplication.
-
- virtual ACE_Token_Proxy *clone (void) const;
- // Return a deep copy.
-
-private:
- ACE_Token_Handler* th_;
- // the Token Handler associated with this proxy. Set at
- // construction and notified when blocking acquires succeed.
-};
-
-class ACE_TS_WLock : public ACE_Local_WLock
- // = TITLE
- // ACE_TS_WLock -- ACE_*T*oken_*S*erver_WLock
-{
-public:
- ACE_TS_WLock (const char *name,
- ACE_Token_Handler *th);
- // Creation.
-
-protected:
- virtual void sleep_hook (void);
- // Somebody wants our token!
-
- virtual void token_acquired (ACE_TPQ_Entry *);
- // We've been taken off the waiters list and given the token! Call
- // the Token_Handler associated at construction, so it can tell the
- // remote client.
-
- ACE_TS_WLock (const ACE_TS_WLock&);
- // Duplication.
-
- virtual ACE_Token_Proxy *clone (void) const;
- // Return a deep copy.
-
-private:
- ACE_Token_Handler* th_;
- // the Token Handler associated with this proxy. Set at
- // construction and notified when blocking acquires succeed.
-};
-
-// ************************************************************
-
-class ACE_Token_Acceptor : public ACE_Strategy_Acceptor<ACE_Token_Handler, ACE_SOCK_ACCEPTOR>
- // = TITLE
- // This class contains the service-specific methods that can't
- // easily be factored into the <ACE_Strategy_Acceptor>.
-{
-public:
- virtual int init (int argc, char *argv[]);
- // Dynamic linking hook.
-
- int parse_args (int argc, char *argv[]);
- // Parse svc.conf arguments.
-
-private:
- ACE_Schedule_All_Reactive_Strategy<ACE_Token_Handler> scheduling_strategy_;
- // The scheduling strategy is designed for Reactive services.
-};
-
-int
-ACE_Token_Acceptor::parse_args (int argc, char *argv[])
-{
- ACE_TRACE ("ACE_Token_Acceptor::parse_args");
-
- this->service_port_ = ACE_DEFAULT_SERVER_PORT;
-
- ACE_LOG_MSG->open ("Token Service");
-
- ACE_Get_Opt get_opt (argc, argv, "p:", 0);
-
- for (int c; (c = get_opt ()) != -1; )
- {
- switch (c)
- {
- case 'p':
- this->service_port_ = ACE_OS::atoi (get_opt.optarg);
- break;
- default:
- ACE_ERROR_RETURN ((LM_ERROR,
- "%n:\n[-p server-port]\n%a", 1),
- -1);
- break;
- }
- }
-
- this->service_addr_.set (this->service_port_);
- return 0;
-}
-
-int
-ACE_Token_Acceptor::init (int argc, char *argv[])
-{
- ACE_TRACE ("ACE_Token_Acceptor::init");
-
- // Use the options hook to parse the command line arguments and set
- // options.
- this->parse_args (argc, argv);
-
- // Set the acceptor endpoint into listen mode (use the Singleton
- // global Reactor...).
- if (this->open (this->service_addr_, ACE_Service_Config::reactor (),
- 0, 0, 0,
- &this->scheduling_strategy_,
- "Token Server", "ACE token service") == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%n: %p on port %d\n",
- "acceptor::open failed",
- this->service_addr_.get_port_number ()), -1);
-
- // Register ourselves to receive SIGINT so we can shutdown
- // gracefully.
- if (this->reactor ()->register_handler (SIGINT, this) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%n: %p\n",
- "register_handler (SIGINT)"), -1);
-
- // Ignore SIGPIPE so that each <SVC_HANDLER> can handle this on its
- // own.
- ACE_Sig_Action sig (ACE_SignalHandler (SIG_IGN), SIGPIPE);
-
- ACE_INET_Addr server_addr;
-
- if (this->acceptor ().get_local_addr (server_addr) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "%p\n", "get_remote_addr"), -1);
-
- ACE_DEBUG ((LM_DEBUG,
- "starting up Token Server at port %d on handle %d\n",
- server_addr.get_port_number (),
- this->acceptor ().get_handle ()));
- return 0;
-}
-
-// The following is a "Factory" used by the ACE_Service_Config and
-// svc.conf file to dynamically initialize the state of the Naming
-// Server.
-
-ACE_SVC_FACTORY_DEFINE (ACE_Token_Acceptor)
-
-// Default constructor.
-
-ACE_Token_Handler::ACE_Token_Handler (ACE_Thread_Manager *tm)
- : ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH> (tm),
- collection_ (1),
- timeout_id_ (0)
-{
- ACE_TRACE ("ACE_Token_Handler::ACE_Token_Handler");
-}
-
-// Create and send a reply to the client.
-
-/* VIRTUAL */ int
-ACE_Token_Handler::send_reply (ACE_UINT32 err)
-{
- ACE_TRACE ("ACE_Token_Handler::send_reply");
- void *buf;
- size_t len;
- ssize_t n;
-
- this->token_reply_.errnum (err);
-
- len = this->token_reply_.encode (buf);
-
- n = this->peer ().send (buf, len);
-
- if (n != (ssize_t) len)
- ACE_ERROR_RETURN ((LM_ERROR,
- "%p, expected len = %d, actual len = %d\n",
- "send failed", len, n), -1);
- else
- return 0;
-}
-
-// Acquire the token.
-
-/* VIRTUAL */ int
-ACE_Token_Handler::acquire (ACE_Token_Proxy *proxy)
-{
- ACE_TRACE ("ACE_Token_Handler::acquire");
- ACE_DEBUG ((LM_DEBUG, "in acquire for client id = %s\n",
- proxy->client_id ()));
-
- // @@ add notify in token request reply
- if (proxy->acquire (0, 0, ACE_Synch_Options::asynch) == -1)
- {
- if (errno != EWOULDBLOCK)
- // bad bad bad
- return this->send_reply (errno);
-
- // acquire would block
- if (request_options_[ACE_Synch_Options::USE_TIMEOUT] == 1)
- {
- // check for polling
- if ((request_options_.timeout ().sec () == 0) &&
- (request_options_.timeout ().usec () == 0))
- return this->send_reply (EWOULDBLOCK);
-
- // schedule a timer
- this->timeout_id_ = this->reactor ()->schedule_timer
- (this, (void *) proxy, request_options_.timeout ());
- if (timeout_id_ == -1)
- {
- ACE_ERROR ((LM_ERROR, "%p\n", "schedule_timer"));
- return this->send_reply (errno);
- }
- }
- // send no reply. wait until we acquire it or until the timer
- // goes off.
- return 0;
- }
- else // success
- return this->send_reply (ACE_Token_Reply::SUCCESS);
-}
-
-// Try to acquire the token. Never block.
-
-/* VIRTUAL */ int
-ACE_Token_Handler::try_acquire (ACE_Token_Proxy *proxy)
-{
- ACE_TRACE ("ACE_Token_Handler::try_acquire");
-
- ACE_DEBUG ((LM_DEBUG, "in try_acquire for client id = %s\n",
- proxy->client_id ()));
-
- // @@ add notify in token request reply
- if (proxy->tryacquire () == -1)
- return this->send_reply (errno);
- else
- return this->send_reply (ACE_Token_Reply::SUCCESS);
-}
-
-// Release the token and allow the next client that is waiting to
-// proceed.
-
-/* VIRTUAL */ int
-ACE_Token_Handler::release (ACE_Token_Proxy *proxy)
-{
- ACE_TRACE ("ACE_Token_Handler::release");
- ACE_DEBUG ((LM_DEBUG,
- "in release for client id = %s\n",
- proxy->client_id ()));
-
- if (proxy->release (ACE_Synch_Options::asynch) == -1)
- // oops, it failed
- return this->send_reply (ACE_LOG_MSG->errnum ());
-
- // success
- if (this->timeout_id_ != 0)
- {
- this->reactor ()->cancel_timer (timeout_id_);
- this->timeout_id_ = 0;
- }
-
- return this->send_reply (ACE_Token_Reply::SUCCESS);
-}
-
-// Yield the token if any clients are waiting, otherwise keep the
-// token.
-
-/* VIRTUAL */ int
-ACE_Token_Handler::renew (ACE_Token_Proxy *proxy)
-{
- ACE_TRACE ("ACE_Token_Handler::renew");
-
- ACE_DEBUG ((LM_DEBUG, "in renew for client id = %s\n",
- proxy->client_id ()));
-
- if (proxy->renew (token_request_.requeue_position (),
- ACE_Synch_Options::asynch) == -1)
- {
- int result = ACE_LOG_MSG->errnum ();
- if (result != EWOULDBLOCK)
- // bad bad bad
- return this->send_reply (result);
-
- // acquire would block
- if (request_options_[ACE_Synch_Options::USE_TIMEOUT] == 1)
- {
- this->timeout_id_ = this->reactor ()->schedule_timer
- (this, 0, request_options_.timeout ());
- if (timeout_id_ == -1)
- {
- ACE_ERROR ((LM_ERROR, "%p\n", "schedule_timer"));
- return this->send_reply (ACE_LOG_MSG->errnum ());
- }
- }
- // Send no reply. wait until we acquire it or until the timer
- // goes off.
- return 0;
- }
- else
- // Success, we still hold the token.
- return this->send_reply (ACE_Token_Reply::SUCCESS);
-}
-
-/* VIRTUAL */ int
-ACE_Token_Handler::remove (ACE_Token_Proxy *proxy)
-{
- ACE_TRACE ("ACE_Token_Handler::remove");
- ACE_DEBUG ((LM_DEBUG, "in remove for client id = %s\n",
- proxy->client_id ()));
- ACE_ERROR ((LM_ERROR, "sorry: ACE_Token_Handler::remove() is not implemented"));
-
- return this->send_reply (ENOTSUP);
-}
-
-// Enable clients to limit the amount of time they'll wait for a
-// token.
-
-/* VIRTUAL */ int
-ACE_Token_Handler::handle_timeout (const ACE_Time_Value &,
- const void *tp)
-{
- ACE_TRACE ("ACE_Token_Handler::handle_timeout");
-
- this->timeout_id_ = 0;
-
- // @@ add a try acquire here!
- // Try to acquire the token, but if we can't get it immediately
- // then abandon the wait.
- // if (this->try_acquire (&token_entry) == -1)
- // return this->abandon (token_entry);
-
- ACE_Token_Proxy *proxy = (ACE_Token_Proxy *) tp;
-
- ACE_DEBUG ((LM_DEBUG, "in handle_timeout for client id = %s\n",
- proxy->client_id ()));
-
- // Remove ourselves from the waiter list.
- proxy->release ();
-
- this->send_reply (ETIME);
- return 0;
-}
-
-// Dispatch the appropriate operation to handle the client request.
-
-ACE_Token_Proxy *
-ACE_Token_Handler::get_proxy (void)
-{
- ACE_TRACE ("ACE_Token_Handler::get_proxy");
-
- // See if the proxy already exists in the collection.
- ACE_Token_Proxy *proxy = collection_.is_member (token_request_.token_name ());
-
- // If not, create one.
- if (proxy == 0)
- {
- proxy = this->create_proxy ();
-
- // Put the new_proxy in this client_id's collection.
- if (collection_.insert (*proxy) == -1)
- ACE_ERROR_RETURN ((LM_ERROR, "insert failed\n"), 0);
-
- // Delete our copy (one was created in the collection).
- delete proxy;
- proxy = collection_.is_member (token_request_.token_name ());
-
- if (proxy == 0)
- ACE_ERROR_RETURN ((LM_ERROR, "is_member failed\n"), 0);
-
- // Set the client_id (it was set to 1 since we're
- // single-threaded.
- proxy->client_id (token_request_.client_id ());
- }
-
- return proxy;
-}
-
-ACE_Token_Proxy *
-ACE_Token_Handler::create_proxy (void)
-{
- ACE_TRACE ("ACE_Token_Handler::new_proxy");
-
- ACE_Token_Proxy *proxy;
-
- switch (token_request_.token_type ())
- {
- case ACE_Tokens::RWLOCK:
- if (token_request_.proxy_type () == ACE_RW_Token::READER)
- ACE_NEW_RETURN (proxy,
- ACE_TS_RLock (token_request_.token_name (), this),
- 0);
- else
- ACE_NEW_RETURN (proxy,
- ACE_TS_WLock (token_request_.token_name (), this),
- 0);
- break;
- case ACE_Tokens::MUTEX:
- ACE_NEW_RETURN (proxy,
- ACE_TS_Mutex (token_request_.token_name (), this),
- 0);
- break;
- default:
- // Nonexistent token type.
- errno = EINVAL;
- return 0;
- }
-
- // Check for failed new.
- if (proxy == 0)
- errno = ENOMEM;
-
- return proxy;
-}
-
-int
-ACE_Token_Handler::dispatch (void)
-{
- ACE_TRACE ("ACE_Token_Handler::dispatch");
- ACE_Token_Proxy *proxy = this->get_proxy ();
-
- if (proxy == 0)
- return -1;
-
- // Dispatch the appropriate request.
- switch (this->token_request_.operation_type ())
- {
- case ACE_Token_Request::ACQUIRE:
- return this->acquire (proxy);
- case ACE_Token_Request::TRY_ACQUIRE:
- return this->try_acquire (proxy);
- case ACE_Token_Request::RELEASE:
- return this->release (proxy);
- case ACE_Token_Request::RENEW:
- return this->renew (proxy);
- case ACE_Token_Request::REMOVE:
- return this->remove (proxy);
- default:
- ACE_ERROR_RETURN ((LM_ERROR, "invalid type = %d\n",
- this->token_request_.operation_type ()), -1);
- /* NOTREACHED */
- }
-}
-
-// Receive, frame, and decode the client's request.
-// Note, this method should use non-blocking I/O.
-
-/* VIRTUAL */ int
-ACE_Token_Handler::recv_request (void)
-{
- ACE_TRACE ("ACE_Token_Handler::recv_request");
- ssize_t n;
-
- // Read the first 4 bytes to get the length of the message
- // This implementation assumes that the first 4 bytes are
- // the length of the message.
- n = this->peer ().recv ((void *) &this->token_request_,
- sizeof (ACE_UINT32));
-
- switch (n)
- {
- case -1:
- /* FALLTHROUGH */
- default:
- ACE_ERROR ((LM_ERROR, "%p got %d bytes, expected %d bytes\n",
- "recv failed", n, sizeof (ACE_UINT32)));
- /* FALLTHROUGH */
- case 0:
- // We've shutdown unexpectedly, let's abandon the connection.
- this->abandon (0);
- return -1;
- /* NOTREACHED */
- case sizeof (ACE_UINT32):
- {
- // Transform the length into host byte order.
- ssize_t length = this->token_request_.length ();
-
- // Do a sanity check on the length of the message.
- if (length > (ssize_t) sizeof this->token_request_)
- {
- ACE_ERROR ((LM_ERROR, "length %d too long\n", length));
- return this->abandon (1);
- }
-
- // Receive the rest of the request message.
- // @@ beware of blocking read!!!.
- n = this->peer ().recv ((void *) (((char *) &this->token_request_)
- + sizeof (ACE_UINT32)),
- length - sizeof (ACE_UINT32));
-
- // Subtract off the size of the part we skipped over...
- if (n != (length - (ssize_t) sizeof (ACE_UINT32)))
- {
- ACE_ERROR ((LM_ERROR, "%p expected %d, got %d\n",
- "invalid length", length, n));
- return this->abandon (1);
- }
-
- // Decode the request into host byte order.
- if (this->token_request_.decode () == -1)
- {
- ACE_ERROR ((LM_ERROR, "%p\n", "decode failed"));
- return this->abandon (1);
- }
-
- // if (OS::debug)
- this->token_request_.dump ();
- }
- }
- return 0;
-}
-
-// Callback method invoked by the ACE_Reactor when
-// events arrive from the client.
-
-/* VIRTUAL */ int
-ACE_Token_Handler::handle_input (ACE_HANDLE)
-{
- ACE_TRACE ("ACE_Token_Handler::handle_input");
-
- ACE_DEBUG ((LM_DEBUG, "****************** in handle_input\n"));
-
- if (this->recv_request () == -1)
- return -1;
- else
- return this->dispatch ();
-}
-
-void
-ACE_Token_Handler::sleep_hook (void)
-{
- ACE_TRACE ("ACE_Token_Handler::sleep_hook");
- // @@ what should we do?
- return;
-}
-
-void
-ACE_Token_Handler::token_acquired (ACE_TPQ_Entry *)
-{
- ACE_TRACE ("ACE_Token_Handler::token_acquired");
-
- if (this->timeout_id_ != 0)
- {
- this->reactor ()->cancel_timer (this->timeout_id_);
- this->timeout_id_ = 0;
- }
-
- this->send_reply (ACE_Token_Reply::SUCCESS);
-}
-
-int
-ACE_Token_Handler::abandon (int send_error)
-{
- ACE_TRACE ("ACE_Token_Handler::abandon");
-
- // Release ownership or remove us from the waiter list.
- if (this->timeout_id_ != 0)
- {
- this->reactor ()->cancel_timer (timeout_id_);
- this->timeout_id_ = 0;
- }
-
- // @@ release all tokens
- collection_.release ();
-
- if (send_error)
- return this->send_reply (EIO);
- else
- return -1;
-}
-
-// ************************************************************
-// ************************************************************
-// ************************************************************
-
-ACE_TS_Mutex::ACE_TS_Mutex (const char *name,
- ACE_Token_Handler *th)
-: th_ (th),
- ACE_Local_Mutex (name, 0, 1) // The 1 is debug.
-{
- ACE_TRACE ("ACE_TS_Mutex::ACE_TS_Mutex");
-}
-
-ACE_TS_Mutex::ACE_TS_Mutex (const ACE_TS_Mutex &m)
-: th_ (m.th_),
- ACE_Local_Mutex (m)
-{
- ACE_TRACE ("ACE_TS_Mutex::ACE_TS_Mutex");
- this->open (m.name (), m.ignore_deadlock_, m.debug_);
-}
-
-void
-ACE_TS_Mutex::sleep_hook (void)
-{
- ACE_TRACE ("ACE_TS_Mutex::sleep_hook");
- th_->sleep_hook ();
- return;
-}
-
-void
-ACE_TS_Mutex::token_acquired (ACE_TPQ_Entry *e)
-{
- ACE_TRACE ("ACE_TS_Mutex::token_acquired");
- // Notify the token handler.
- th_->token_acquired (e);
- return;
-}
-
-ACE_Token_Proxy *
-ACE_TS_Mutex::clone (void) const
-{
- ACE_TRACE ("ACE_TS_Mutex::clone");
- ACE_Token_Proxy *temp;
- ACE_NEW_RETURN (temp, ACE_TS_Mutex (*this), 0);
- return temp;
-}
-
-// ************************************************************
-
-ACE_TS_RLock::ACE_TS_RLock (const char *name,
- ACE_Token_Handler *th)
-: th_ (th),
- ACE_Local_RLock (name, 0, 1) // The 1 is debug.
-{
- ACE_TRACE ("ACE_TS_RLock::ACE_TS_RLock");
-}
-
-ACE_TS_RLock::ACE_TS_RLock (const ACE_TS_RLock &r)
-: th_ (r.th_),
- ACE_Local_RLock (r)
-{
- ACE_TRACE ("ACE_TS_RLock::ACE_TS_RLock");
- this->open (r.name (), r.ignore_deadlock_, r.debug_);
-}
-
-void
-ACE_TS_RLock::sleep_hook (void)
-{
- ACE_TRACE ("ACE_TS_RLock::sleep_hook");
- th_->sleep_hook ();
- return;
-}
-
-void
-ACE_TS_RLock::token_acquired (ACE_TPQ_Entry *e)
-{
- ACE_TRACE ("ACE_TS_RLock::token_acquired");
- // Notify the token handler.
- th_->token_acquired (e);
- return;
-}
-
-ACE_Token_Proxy *
-ACE_TS_RLock::clone (void) const
-{
- ACE_TRACE ("ACE_TS_RLock::clone");
- ACE_Token_Proxy *temp;
-
- ACE_NEW_RETURN (temp, ACE_TS_RLock (*this), 0);
- return temp;
-}
-
-// ************************************************************
-
-ACE_TS_WLock::ACE_TS_WLock (const char *name,
- ACE_Token_Handler *th)
-: th_ (th),
- ACE_Local_WLock (name, 0, 1) // The 1 is debug.
-{
- ACE_TRACE ("ACE_TS_WLock::ACE_TS_WLock");
-}
-
-ACE_TS_WLock::ACE_TS_WLock (const ACE_TS_WLock &w)
-: th_ (w.th_),
- ACE_Local_WLock (w)
-{
- ACE_TRACE ("ACE_TS_WLock::ACE_TS_WLock");
- this->open (w.name (), w.ignore_deadlock_, w.debug_);
-}
-
-void
-ACE_TS_WLock::sleep_hook (void)
-{
- ACE_TRACE ("ACE_TS_WLock::sleep_hook");
- th_->sleep_hook ();
- return;
-}
-
-void
-ACE_TS_WLock::token_acquired (ACE_TPQ_Entry *e)
-{
- ACE_TRACE ("ACE_TS_WLock::token_acquired");
- // Notify the token handler.
- th_->token_acquired (e);
- return;
-}
-
-ACE_Token_Proxy *
-ACE_TS_WLock::clone (void) const
-{
- ACE_TRACE ("ACE_TS_WLock::clone");
- ACE_Token_Proxy *temp;
-
- ACE_NEW_RETURN (temp, ACE_TS_WLock (*this), 0);
- return temp;
-}
-
-#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
-template class ACE_Strategy_Acceptor<ACE_Token_Handler, ACE_SOCK_ACCEPTOR>;
-template class ACE_Schedule_All_Reactive_Strategy<ACE_Token_Handler>;
-#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/netsvcs/lib/Token_Handler.h b/netsvcs/lib/Token_Handler.h
deleted file mode 100644
index 75d51c7f2b2..00000000000
--- a/netsvcs/lib/Token_Handler.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* -*- C++ -*- */
-// $Id$
-
-
-// ============================================================================
-//
-// = LIBRARY
-// ACE
-//
-// = FILENAME
-// Token_Handler.h
-//
-// = AUTHOR
-// Douglas C. Schmidt (schmidt@cs.wustl.edu)
-// Tim Harrison (harrison@cs.wustl.edu)
-//
-// ============================================================================
-
-#if !defined (ACE_TOKEN_HANDLER_H)
-#define ACE_TOKEN_HANDLER_H
-
-#include "ace/OS.h"
-
-ACE_SVC_FACTORY_DECLARE (ACE_Token_Acceptor)
-
-#endif /* ACE_TOKEN_HANDLER_H */
diff --git a/netsvcs/lib/netsvcs.mak b/netsvcs/lib/netsvcs.mak
deleted file mode 100644
index 7a9e6d53649..00000000000
--- a/netsvcs/lib/netsvcs.mak
+++ /dev/null
@@ -1,1055 +0,0 @@
-# Microsoft Developer Studio Generated NMAKE File, Format Version 4.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
-
-!IF "$(CFG)" == ""
-CFG=netsvcs - Win32 Debug
-!MESSAGE No configuration specified. Defaulting to netsvcs - Win32 Debug.
-!ENDIF
-
-!IF "$(CFG)" != "netsvcs - Win32 Release" && "$(CFG)" !=\
- "netsvcs - Win32 Debug"
-!MESSAGE Invalid configuration "$(CFG)" specified.
-!MESSAGE You can specify a configuration when running NMAKE on this makefile
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "netsvcs.mak" CFG="netsvcs - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "netsvcs - Win32 Release" (based on\
- "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "netsvcs - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE
-!ERROR An invalid configuration is specified.
-!ENDIF
-
-!IF "$(OS)" == "Windows_NT"
-NULL=
-!ELSE
-NULL=nul
-!ENDIF
-################################################################################
-# Begin Project
-# PROP Target_Last_Scanned "netsvcs - Win32 Debug"
-MTL=mktyplib.exe
-CPP=cl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "netsvcs - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "netsvcs\Release"
-# PROP BASE Intermediate_Dir "netsvcs\Release"
-# PROP BASE Target_Dir "netsvcs"
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "netsvcs\Release"
-# PROP Intermediate_Dir "netsvcs\Release"
-# PROP Target_Dir "netsvcs"
-OUTDIR=.\netsvcs\Release
-INTDIR=.\netsvcs\Release
-
-ALL : "$(OUTDIR)\netsvcs.dll"
-
-CLEAN :
- -@erase ".\netsvcs\Release\netsvcs.dll"
- -@erase ".\netsvcs\Release\Logging_Strategy.obj"
- -@erase ".\netsvcs\Release\Server_Logging_Handler.obj"
- -@erase ".\netsvcs\Release\Name_Handler.obj"
- -@erase ".\netsvcs\Release\Client_Logging_Handler.obj"
- -@erase ".\netsvcs\Release\Token_Handler.obj"
- -@erase ".\netsvcs\Release\TS_Clerk_Handler.obj"
- -@erase ".\netsvcs\Release\TS_Server_Handler.obj"
- -@erase ".\netsvcs\Release\netsvcs.lib"
- -@erase ".\netsvcs\Release\netsvcs.exp"
-
-"$(OUTDIR)" :
- if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
-
-# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /c
-# ADD CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /c
-CPP_PROJ=/nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS"\
- /Fp"$(INTDIR)/netsvcs.pch" /YX /Fo"$(INTDIR)/" /c
-CPP_OBJS=.\netsvcs\Release/
-CPP_SBRS=
-# ADD BASE MTL /nologo /D "NDEBUG" /win32
-# ADD MTL /nologo /D "NDEBUG" /win32
-MTL_PROJ=/nologo /D "NDEBUG" /win32
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-BSC32_FLAGS=/nologo /o"$(OUTDIR)/netsvcs.bsc"
-BSC32_SBRS=
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
-# ADD LINK32 ace.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
-LINK32_FLAGS=ace.lib kernel32.lib user32.lib gdi32.lib winspool.lib\
- comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib\
- odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /incremental:no\
- /pdb:"$(OUTDIR)/netsvcs.pdb" /machine:I386 /out:"$(OUTDIR)/netsvcs.dll"\
- /implib:"$(OUTDIR)/netsvcs.lib"
-LINK32_OBJS= \
- "$(INTDIR)/Logging_Strategy.obj" \
- "$(INTDIR)/Server_Logging_Handler.obj" \
- "$(INTDIR)/Name_Handler.obj" \
- "$(INTDIR)/Client_Logging_Handler.obj" \
- "$(INTDIR)/Token_Handler.obj" \
- "$(INTDIR)/TS_Clerk_Handler.obj" \
- "$(INTDIR)/TS_Server_Handler.obj"
-
-"$(OUTDIR)\netsvcs.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
- $(LINK32) @<<
- $(LINK32_FLAGS) $(LINK32_OBJS)
-<<
-
-!ELSEIF "$(CFG)" == "netsvcs - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "netsvcs\Debug"
-# PROP BASE Intermediate_Dir "netsvcs\Debug"
-# PROP BASE Target_Dir "netsvcs"
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "..\..\ace"
-# PROP Intermediate_Dir "debug"
-# PROP Target_Dir "netsvcs"
-OUTDIR=.\..\..\ace
-INTDIR=.\debug
-
-ALL : "$(OUTDIR)\netsvcs.dll"
-
-CLEAN :
- -@erase ".\debug\vc40.pdb"
- -@erase ".\debug\vc40.idb"
- -@erase "..\..\ace\netsvcs.dll"
- -@erase ".\debug\Token_Handler.obj"
- -@erase ".\debug\TS_Server_Handler.obj"
- -@erase ".\debug\Client_Logging_Handler.obj"
- -@erase ".\debug\Name_Handler.obj"
- -@erase ".\debug\Logging_Strategy.obj"
- -@erase ".\debug\TS_Clerk_Handler.obj"
- -@erase ".\debug\Server_Logging_Handler.obj"
- -@erase "..\..\ace\netsvcs.ilk"
- -@erase "..\..\ace\netsvcs.lib"
- -@erase "..\..\ace\netsvcs.exp"
- -@erase "..\..\ace\netsvcs.pdb"
-
-"$(OUTDIR)" :
- if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
-
-"$(INTDIR)" :
- if not exist "$(INTDIR)/$(NULL)" mkdir "$(INTDIR)"
-
-# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /c
-# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /c
-CPP_PROJ=/nologo /MDd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS"\
- /Fp"$(INTDIR)/netsvcs.pch" /YX /Fo"$(INTDIR)/" /Fd"$(INTDIR)/" /c
-CPP_OBJS=.\debug/
-CPP_SBRS=
-# ADD BASE MTL /nologo /D "_DEBUG" /win32
-# ADD MTL /nologo /D "_DEBUG" /win32
-MTL_PROJ=/nologo /D "_DEBUG" /win32
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-BSC32_FLAGS=/nologo /o"$(OUTDIR)/netsvcs.bsc"
-BSC32_SBRS=
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386
-# ADD LINK32 wsock32.lib ace.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386
-LINK32_FLAGS=wsock32.lib ace.lib kernel32.lib user32.lib gdi32.lib winspool.lib\
- comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib\
- odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /incremental:yes\
- /pdb:"$(OUTDIR)/netsvcs.pdb" /debug /machine:I386 /out:"$(OUTDIR)/netsvcs.dll"\
- /implib:"$(OUTDIR)/netsvcs.lib"
-LINK32_OBJS= \
- "$(INTDIR)/Token_Handler.obj" \
- "$(INTDIR)/TS_Server_Handler.obj" \
- "$(INTDIR)/Client_Logging_Handler.obj" \
- "$(INTDIR)/Name_Handler.obj" \
- "$(INTDIR)/Logging_Strategy.obj" \
- "$(INTDIR)/TS_Clerk_Handler.obj" \
- "$(INTDIR)/Server_Logging_Handler.obj"
-
-"$(OUTDIR)\netsvcs.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
- $(LINK32) @<<
- $(LINK32_FLAGS) $(LINK32_OBJS)
-<<
-
-!ENDIF
-
-.c{$(CPP_OBJS)}.obj:
- $(CPP) $(CPP_PROJ) $<
-
-.cpp{$(CPP_OBJS)}.obj:
- $(CPP) $(CPP_PROJ) $<
-
-.cxx{$(CPP_OBJS)}.obj:
- $(CPP) $(CPP_PROJ) $<
-
-.c{$(CPP_SBRS)}.sbr:
- $(CPP) $(CPP_PROJ) $<
-
-.cpp{$(CPP_SBRS)}.sbr:
- $(CPP) $(CPP_PROJ) $<
-
-.cxx{$(CPP_SBRS)}.sbr:
- $(CPP) $(CPP_PROJ) $<
-
-################################################################################
-# Begin Target
-
-# Name "netsvcs - Win32 Release"
-# Name "netsvcs - Win32 Debug"
-
-!IF "$(CFG)" == "netsvcs - Win32 Release"
-
-!ELSEIF "$(CFG)" == "netsvcs - Win32 Debug"
-
-!ENDIF
-
-################################################################################
-# Begin Source File
-
-SOURCE=.\Token_Handler.cpp
-DEP_CPP_TOKEN=\
- {$(INCLUDE)}"\ace\Log_Msg.h"\
- {$(INCLUDE)}"\ace\Get_Opt.h"\
- {$(INCLUDE)}"\ace\Acceptor.h"\
- {$(INCLUDE)}"\ace\SOCK_Acceptor.h"\
- {$(INCLUDE)}"\ace\Token_Request_Reply.h"\
- {$(INCLUDE)}"\ace\Token_Collection.h"\
- {$(INCLUDE)}"\ace\Local_Tokens.h"\
- ".\Token_Handler.h"\
- {$(INCLUDE)}"\ace\Log_Record.h"\
- {$(INCLUDE)}"\ace\ACE.h"\
- {$(INCLUDE)}"\ace\Log_Priority.h"\
- {$(INCLUDE)}"\ace\Log_Record.i"\
- {$(INCLUDE)}"\ace\OS.h"\
- {$(INCLUDE)}"\ace\ACE.i"\
- {$(INCLUDE)}"\ace\Time_Value.h"\
- {$(INCLUDE)}"\ace\stdcpp.h"\
- {$(INCLUDE)}"\ace\ws2tcpip.h"\
- {$(INCLUDE)}"\ace\Trace.h"\
- {$(INCLUDE)}"\ace\OS.i"\
- {$(INCLUDE)}"\ace\config.h"\
- {$(INCLUDE)}"\ace\Time_Value.i"\
- {$(INCLUDE)}"\ace\Get_Opt.i"\
- {$(INCLUDE)}"\ace\Service_Config.h"\
- {$(INCLUDE)}"\ace\Service_Object.h"\
- {$(INCLUDE)}"\ace\Svc_Handler.h"\
- {$(INCLUDE)}"\ace\Strategies.h"\
- {$(INCLUDE)}"\ace\Acceptor.i"\
- {$(INCLUDE)}"\ace\Acceptor.cpp"\
- {$(INCLUDE)}"\ace\Thread_Manager.h"\
- {$(INCLUDE)}"\ace\Set.h"\
- {$(INCLUDE)}"\ace\Proactor.h"\
- {$(INCLUDE)}"\ace\ReactorEx.h"\
- {$(INCLUDE)}"\ace\Service_Config.i"\
- {$(INCLUDE)}"\ace\Reactor.h"\
- {$(INCLUDE)}"\ace\Svc_Conf_Tokens.h"\
- {$(INCLUDE)}"\ace\Thread.h"\
- {$(INCLUDE)}"\ace\Synch.h"\
- {$(INCLUDE)}"\ace\Thread_Manager.i"\
- {$(INCLUDE)}"\ace\Thread.i"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Complex.h"\
- {$(INCLUDE)}"\ace\Synch.i"\
- {$(INCLUDE)}"\ace\Synch_T.h"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Simple.h"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Complex.i"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Simple.i"\
- {$(INCLUDE)}"\ace\Event_Handler.h"\
- {$(INCLUDE)}"\ace\Synch_T.i"\
- {$(INCLUDE)}"\ace\Synch_T.cpp"\
- {$(INCLUDE)}"\ace\Event_Handler.i"\
- {$(INCLUDE)}"\ace\Set.i"\
- {$(INCLUDE)}"\ace\Set.cpp"\
- {$(INCLUDE)}"\ace\Message_Block.h"\
- {$(INCLUDE)}"\ace\Timer_Queue.h"\
- {$(INCLUDE)}"\ace\Proactor.i"\
- {$(INCLUDE)}"\ace\Malloc.h"\
- {$(INCLUDE)}"\ace\Message_Block.i"\
- {$(INCLUDE)}"\ace\Malloc.i"\
- {$(INCLUDE)}"\ace\Malloc_T.h"\
- {$(INCLUDE)}"\ace\Memory_Pool.h"\
- {$(INCLUDE)}"\ace\Malloc_T.i"\
- {$(INCLUDE)}"\ace\Malloc_T.cpp"\
- {$(INCLUDE)}"\ace\Signal.h"\
- {$(INCLUDE)}"\ace\Mem_Map.h"\
- {$(INCLUDE)}"\ace\Memory_Pool.i"\
- {$(INCLUDE)}"\ace\Signal.i"\
- {$(INCLUDE)}"\ace\Mem_Map.i"\
- {$(INCLUDE)}"\ace\Timer_Queue.i"\
- {$(INCLUDE)}"\ace\Token.h"\
- {$(INCLUDE)}"\ace\ReactorEx.i"\
- {$(INCLUDE)}"\ace\Token.i"\
- {$(INCLUDE)}"\ace\Handle_Set.h"\
- {$(INCLUDE)}"\ace\Pipe.h"\
- {$(INCLUDE)}"\ace\SOCK_Stream.h"\
- {$(INCLUDE)}"\ace\Reactor.i"\
- {$(INCLUDE)}"\ace\Handle_Set.i"\
- {$(INCLUDE)}"\ace\Pipe.i"\
- {$(INCLUDE)}"\ace\SOCK_IO.h"\
- {$(INCLUDE)}"\ace\INET_Addr.h"\
- {$(INCLUDE)}"\ace\SOCK_Stream.i"\
- {$(INCLUDE)}"\ace\SOCK.h"\
- {$(INCLUDE)}"\ace\SOCK_IO.i"\
- {$(INCLUDE)}"\ace\Addr.h"\
- {$(INCLUDE)}"\ace\IPC_SAP.h"\
- {$(INCLUDE)}"\ace\SOCK.i"\
- {$(INCLUDE)}"\ace\Addr.i"\
- {$(INCLUDE)}"\ace\IPC_SAP.i"\
- {$(INCLUDE)}"\ace\INET_Addr.i"\
- {$(INCLUDE)}"\ace\Shared_Object.h"\
- {$(INCLUDE)}"\ace\Service_Object.i"\
- {$(INCLUDE)}"\ace\Shared_Object.i"\
- {$(INCLUDE)}"\ace\Synch_Options.h"\
- {$(INCLUDE)}"\ace\Task.h"\
- {$(INCLUDE)}"\ace\Svc_Handler.i"\
- {$(INCLUDE)}"\ace\Svc_Handler.cpp"\
- {$(INCLUDE)}"\ace\Task.i"\
- {$(INCLUDE)}"\ace\Task_T.h"\
- {$(INCLUDE)}"\ace\Message_Queue.h"\
- {$(INCLUDE)}"\ace\Task_T.i"\
- {$(INCLUDE)}"\ace\Task_T.cpp"\
- {$(INCLUDE)}"\ace\IO_Cntl_Msg.h"\
- {$(INCLUDE)}"\ace\Message_Queue.i"\
- {$(INCLUDE)}"\ace\Message_Queue.cpp"\
- {$(INCLUDE)}"\ace\Module.h"\
- {$(INCLUDE)}"\ace\Module.i"\
- {$(INCLUDE)}"\ace\Module.cpp"\
- {$(INCLUDE)}"\ace\Stream_Modules.h"\
- {$(INCLUDE)}"\ace\Stream_Modules.i"\
- {$(INCLUDE)}"\ace\Stream_Modules.cpp"\
- {$(INCLUDE)}"\ace\Dynamic.h"\
- {$(INCLUDE)}"\ace\Dynamic.i"\
- {$(INCLUDE)}"\ace\Strategies.cpp"\
- {$(INCLUDE)}"\ace\SOCK_Acceptor.i"\
- {$(INCLUDE)}"\ace\Token_Request_Reply.i"\
- {$(INCLUDE)}"\ace\Map_Manager.h"\
- {$(INCLUDE)}"\ace\SString.h"\
- {$(INCLUDE)}"\ace\Token_Collection.i"\
- {$(INCLUDE)}"\ace\Map_Manager.i"\
- {$(INCLUDE)}"\ace\Map_Manager.cpp"\
- {$(INCLUDE)}"\ace\SString.i"\
- {$(INCLUDE)}"\ace\Stack.h"\
- {$(INCLUDE)}"\ace\Local_Tokens.i"\
- {$(INCLUDE)}"\ace\Stack.i"\
- {$(INCLUDE)}"\ace\Stack.cpp"\
-
-
-"$(INTDIR)\Token_Handler.obj" : $(SOURCE) $(DEP_CPP_TOKEN) "$(INTDIR)"
-
-
-# End Source File
-################################################################################
-# Begin Source File
-
-SOURCE=.\TS_Clerk_Handler.cpp
-DEP_CPP_TS_CL=\
- {$(INCLUDE)}"\ace\Service_Config.h"\
- {$(INCLUDE)}"\ace\Connector.h"\
- {$(INCLUDE)}"\ace\Log_Msg.h"\
- {$(INCLUDE)}"\ace\Get_Opt.h"\
- {$(INCLUDE)}"\ace\SOCK_Connector.h"\
- {$(INCLUDE)}"\ace\SOCK_Stream.h"\
- {$(INCLUDE)}"\ace\Svc_Handler.h"\
- {$(INCLUDE)}"\ace\Time_Value.h"\
- {$(INCLUDE)}"\ace\Time_Request_Reply.h"\
- {$(INCLUDE)}"\ace\OS.h"\
- {$(INCLUDE)}"\ace\Malloc.h"\
- ".\TS_Clerk_Handler.h"\
- {$(INCLUDE)}"\ace\Service_Object.h"\
- {$(INCLUDE)}"\ace\Thread_Manager.h"\
- {$(INCLUDE)}"\ace\Set.h"\
- {$(INCLUDE)}"\ace\Proactor.h"\
- {$(INCLUDE)}"\ace\ReactorEx.h"\
- {$(INCLUDE)}"\ace\Service_Config.i"\
- {$(INCLUDE)}"\ace\Reactor.h"\
- {$(INCLUDE)}"\ace\Svc_Conf_Tokens.h"\
- {$(INCLUDE)}"\ace\Shared_Object.h"\
- {$(INCLUDE)}"\ace\Event_Handler.h"\
- {$(INCLUDE)}"\ace\Service_Object.i"\
- {$(INCLUDE)}"\ace\ACE.h"\
- {$(INCLUDE)}"\ace\Shared_Object.i"\
- {$(INCLUDE)}"\ace\ACE.i"\
- {$(INCLUDE)}"\ace\Event_Handler.i"\
- {$(INCLUDE)}"\ace\Thread.h"\
- {$(INCLUDE)}"\ace\Synch.h"\
- {$(INCLUDE)}"\ace\Thread_Manager.i"\
- {$(INCLUDE)}"\ace\Thread.i"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Complex.h"\
- {$(INCLUDE)}"\ace\Synch.i"\
- {$(INCLUDE)}"\ace\Synch_T.h"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Simple.h"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Complex.i"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Simple.i"\
- {$(INCLUDE)}"\ace\Trace.h"\
- {$(INCLUDE)}"\ace\Synch_T.i"\
- {$(INCLUDE)}"\ace\Synch_T.cpp"\
- {$(INCLUDE)}"\ace\Set.i"\
- {$(INCLUDE)}"\ace\Set.cpp"\
- {$(INCLUDE)}"\ace\Message_Block.h"\
- {$(INCLUDE)}"\ace\Timer_Queue.h"\
- {$(INCLUDE)}"\ace\Proactor.i"\
- {$(INCLUDE)}"\ace\Message_Block.i"\
- {$(INCLUDE)}"\ace\Timer_Queue.i"\
- {$(INCLUDE)}"\ace\Token.h"\
- {$(INCLUDE)}"\ace\Local_Tokens.h"\
- {$(INCLUDE)}"\ace\ReactorEx.i"\
- {$(INCLUDE)}"\ace\Token.i"\
- {$(INCLUDE)}"\ace\Stack.h"\
- {$(INCLUDE)}"\ace\Synch_Options.h"\
- {$(INCLUDE)}"\ace\Map_Manager.h"\
- {$(INCLUDE)}"\ace\Local_Tokens.i"\
- {$(INCLUDE)}"\ace\Stack.i"\
- {$(INCLUDE)}"\ace\Stack.cpp"\
- {$(INCLUDE)}"\ace\Map_Manager.i"\
- {$(INCLUDE)}"\ace\Map_Manager.cpp"\
- {$(INCLUDE)}"\ace\Handle_Set.h"\
- {$(INCLUDE)}"\ace\Signal.h"\
- {$(INCLUDE)}"\ace\Pipe.h"\
- {$(INCLUDE)}"\ace\Reactor.i"\
- {$(INCLUDE)}"\ace\Handle_Set.i"\
- {$(INCLUDE)}"\ace\Signal.i"\
- {$(INCLUDE)}"\ace\Pipe.i"\
- {$(INCLUDE)}"\ace\Strategies.h"\
- {$(INCLUDE)}"\ace\Connector.i"\
- {$(INCLUDE)}"\ace\Connector.cpp"\
- {$(INCLUDE)}"\ace\Strategies.cpp"\
- {$(INCLUDE)}"\ace\Log_Record.h"\
- {$(INCLUDE)}"\ace\Log_Priority.h"\
- {$(INCLUDE)}"\ace\Log_Record.i"\
- {$(INCLUDE)}"\ace\Get_Opt.i"\
- {$(INCLUDE)}"\ace\SOCK_Connector.i"\
- {$(INCLUDE)}"\ace\SOCK_IO.h"\
- {$(INCLUDE)}"\ace\INET_Addr.h"\
- {$(INCLUDE)}"\ace\SOCK_Stream.i"\
- {$(INCLUDE)}"\ace\SOCK.h"\
- {$(INCLUDE)}"\ace\SOCK_IO.i"\
- {$(INCLUDE)}"\ace\Addr.h"\
- {$(INCLUDE)}"\ace\IPC_SAP.h"\
- {$(INCLUDE)}"\ace\SOCK.i"\
- {$(INCLUDE)}"\ace\Addr.i"\
- {$(INCLUDE)}"\ace\IPC_SAP.i"\
- {$(INCLUDE)}"\ace\INET_Addr.i"\
- {$(INCLUDE)}"\ace\Task.h"\
- {$(INCLUDE)}"\ace\Svc_Handler.i"\
- {$(INCLUDE)}"\ace\Svc_Handler.cpp"\
- {$(INCLUDE)}"\ace\Task.i"\
- {$(INCLUDE)}"\ace\Task_T.h"\
- {$(INCLUDE)}"\ace\Message_Queue.h"\
- {$(INCLUDE)}"\ace\Task_T.i"\
- {$(INCLUDE)}"\ace\Task_T.cpp"\
- {$(INCLUDE)}"\ace\IO_Cntl_Msg.h"\
- {$(INCLUDE)}"\ace\Message_Queue.i"\
- {$(INCLUDE)}"\ace\Message_Queue.cpp"\
- {$(INCLUDE)}"\ace\Module.h"\
- {$(INCLUDE)}"\ace\Module.i"\
- {$(INCLUDE)}"\ace\Module.cpp"\
- {$(INCLUDE)}"\ace\Stream_Modules.h"\
- {$(INCLUDE)}"\ace\Stream_Modules.i"\
- {$(INCLUDE)}"\ace\Stream_Modules.cpp"\
- {$(INCLUDE)}"\ace\Dynamic.h"\
- {$(INCLUDE)}"\ace\Dynamic.i"\
- {$(INCLUDE)}"\ace\config.h"\
- {$(INCLUDE)}"\ace\Time_Value.i"\
- {$(INCLUDE)}"\ace\SString.h"\
- {$(INCLUDE)}"\ace\SString.i"\
- {$(INCLUDE)}"\ace\stdcpp.h"\
- {$(INCLUDE)}"\ace\ws2tcpip.h"\
- {$(INCLUDE)}"\ace\OS.i"\
- {$(INCLUDE)}"\ace\Malloc.i"\
- {$(INCLUDE)}"\ace\Malloc_T.h"\
- {$(INCLUDE)}"\ace\Memory_Pool.h"\
- {$(INCLUDE)}"\ace\Malloc_T.i"\
- {$(INCLUDE)}"\ace\Malloc_T.cpp"\
- {$(INCLUDE)}"\ace\Mem_Map.h"\
- {$(INCLUDE)}"\ace\Memory_Pool.i"\
- {$(INCLUDE)}"\ace\Mem_Map.i"\
-
-
-"$(INTDIR)\TS_Clerk_Handler.obj" : $(SOURCE) $(DEP_CPP_TS_CL) "$(INTDIR)"
-
-
-# End Source File
-################################################################################
-# Begin Source File
-
-SOURCE=.\TS_Server_Handler.cpp
-DEP_CPP_TS_SE=\
- {$(INCLUDE)}"\ace\SString.h"\
- {$(INCLUDE)}"\ace\Set.h"\
- {$(INCLUDE)}"\ace\Get_Opt.h"\
- {$(INCLUDE)}"\ace\Acceptor.h"\
- {$(INCLUDE)}"\ace\SOCK_Acceptor.h"\
- {$(INCLUDE)}"\ace\SOCK_Stream.h"\
- {$(INCLUDE)}"\ace\Time_Request_Reply.h"\
- ".\TS_Server_Handler.h"\
- {$(INCLUDE)}"\ace\ACE.h"\
- {$(INCLUDE)}"\ace\SString.i"\
- {$(INCLUDE)}"\ace\OS.h"\
- {$(INCLUDE)}"\ace\ACE.i"\
- {$(INCLUDE)}"\ace\Time_Value.h"\
- {$(INCLUDE)}"\ace\stdcpp.h"\
- {$(INCLUDE)}"\ace\ws2tcpip.h"\
- {$(INCLUDE)}"\ace\Trace.h"\
- {$(INCLUDE)}"\ace\OS.i"\
- {$(INCLUDE)}"\ace\config.h"\
- {$(INCLUDE)}"\ace\Time_Value.i"\
- {$(INCLUDE)}"\ace\Log_Msg.h"\
- {$(INCLUDE)}"\ace\Log_Record.h"\
- {$(INCLUDE)}"\ace\Log_Priority.h"\
- {$(INCLUDE)}"\ace\Log_Record.i"\
- {$(INCLUDE)}"\ace\Set.i"\
- {$(INCLUDE)}"\ace\Set.cpp"\
- {$(INCLUDE)}"\ace\Get_Opt.i"\
- {$(INCLUDE)}"\ace\Service_Config.h"\
- {$(INCLUDE)}"\ace\Service_Object.h"\
- {$(INCLUDE)}"\ace\Svc_Handler.h"\
- {$(INCLUDE)}"\ace\Strategies.h"\
- {$(INCLUDE)}"\ace\Acceptor.i"\
- {$(INCLUDE)}"\ace\Acceptor.cpp"\
- {$(INCLUDE)}"\ace\Thread_Manager.h"\
- {$(INCLUDE)}"\ace\Proactor.h"\
- {$(INCLUDE)}"\ace\ReactorEx.h"\
- {$(INCLUDE)}"\ace\Service_Config.i"\
- {$(INCLUDE)}"\ace\Reactor.h"\
- {$(INCLUDE)}"\ace\Svc_Conf_Tokens.h"\
- {$(INCLUDE)}"\ace\Thread.h"\
- {$(INCLUDE)}"\ace\Synch.h"\
- {$(INCLUDE)}"\ace\Thread_Manager.i"\
- {$(INCLUDE)}"\ace\Thread.i"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Complex.h"\
- {$(INCLUDE)}"\ace\Synch.i"\
- {$(INCLUDE)}"\ace\Synch_T.h"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Simple.h"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Complex.i"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Simple.i"\
- {$(INCLUDE)}"\ace\Event_Handler.h"\
- {$(INCLUDE)}"\ace\Synch_T.i"\
- {$(INCLUDE)}"\ace\Synch_T.cpp"\
- {$(INCLUDE)}"\ace\Event_Handler.i"\
- {$(INCLUDE)}"\ace\Message_Block.h"\
- {$(INCLUDE)}"\ace\Timer_Queue.h"\
- {$(INCLUDE)}"\ace\Proactor.i"\
- {$(INCLUDE)}"\ace\Malloc.h"\
- {$(INCLUDE)}"\ace\Message_Block.i"\
- {$(INCLUDE)}"\ace\Malloc.i"\
- {$(INCLUDE)}"\ace\Malloc_T.h"\
- {$(INCLUDE)}"\ace\Memory_Pool.h"\
- {$(INCLUDE)}"\ace\Malloc_T.i"\
- {$(INCLUDE)}"\ace\Malloc_T.cpp"\
- {$(INCLUDE)}"\ace\Signal.h"\
- {$(INCLUDE)}"\ace\Mem_Map.h"\
- {$(INCLUDE)}"\ace\Memory_Pool.i"\
- {$(INCLUDE)}"\ace\Signal.i"\
- {$(INCLUDE)}"\ace\Mem_Map.i"\
- {$(INCLUDE)}"\ace\Timer_Queue.i"\
- {$(INCLUDE)}"\ace\Token.h"\
- {$(INCLUDE)}"\ace\Local_Tokens.h"\
- {$(INCLUDE)}"\ace\ReactorEx.i"\
- {$(INCLUDE)}"\ace\Token.i"\
- {$(INCLUDE)}"\ace\Stack.h"\
- {$(INCLUDE)}"\ace\Synch_Options.h"\
- {$(INCLUDE)}"\ace\Map_Manager.h"\
- {$(INCLUDE)}"\ace\Local_Tokens.i"\
- {$(INCLUDE)}"\ace\Stack.i"\
- {$(INCLUDE)}"\ace\Stack.cpp"\
- {$(INCLUDE)}"\ace\Map_Manager.i"\
- {$(INCLUDE)}"\ace\Map_Manager.cpp"\
- {$(INCLUDE)}"\ace\Handle_Set.h"\
- {$(INCLUDE)}"\ace\Pipe.h"\
- {$(INCLUDE)}"\ace\Reactor.i"\
- {$(INCLUDE)}"\ace\Handle_Set.i"\
- {$(INCLUDE)}"\ace\Pipe.i"\
- {$(INCLUDE)}"\ace\Shared_Object.h"\
- {$(INCLUDE)}"\ace\Service_Object.i"\
- {$(INCLUDE)}"\ace\Shared_Object.i"\
- {$(INCLUDE)}"\ace\Task.h"\
- {$(INCLUDE)}"\ace\Svc_Handler.i"\
- {$(INCLUDE)}"\ace\Svc_Handler.cpp"\
- {$(INCLUDE)}"\ace\Task.i"\
- {$(INCLUDE)}"\ace\Task_T.h"\
- {$(INCLUDE)}"\ace\Message_Queue.h"\
- {$(INCLUDE)}"\ace\Task_T.i"\
- {$(INCLUDE)}"\ace\Task_T.cpp"\
- {$(INCLUDE)}"\ace\IO_Cntl_Msg.h"\
- {$(INCLUDE)}"\ace\Message_Queue.i"\
- {$(INCLUDE)}"\ace\Message_Queue.cpp"\
- {$(INCLUDE)}"\ace\Module.h"\
- {$(INCLUDE)}"\ace\Module.i"\
- {$(INCLUDE)}"\ace\Module.cpp"\
- {$(INCLUDE)}"\ace\Stream_Modules.h"\
- {$(INCLUDE)}"\ace\Stream_Modules.i"\
- {$(INCLUDE)}"\ace\Stream_Modules.cpp"\
- {$(INCLUDE)}"\ace\Dynamic.h"\
- {$(INCLUDE)}"\ace\Dynamic.i"\
- {$(INCLUDE)}"\ace\Strategies.cpp"\
- {$(INCLUDE)}"\ace\SOCK_Acceptor.i"\
- {$(INCLUDE)}"\ace\SOCK_IO.h"\
- {$(INCLUDE)}"\ace\INET_Addr.h"\
- {$(INCLUDE)}"\ace\SOCK_Stream.i"\
- {$(INCLUDE)}"\ace\SOCK.h"\
- {$(INCLUDE)}"\ace\SOCK_IO.i"\
- {$(INCLUDE)}"\ace\Addr.h"\
- {$(INCLUDE)}"\ace\IPC_SAP.h"\
- {$(INCLUDE)}"\ace\SOCK.i"\
- {$(INCLUDE)}"\ace\Addr.i"\
- {$(INCLUDE)}"\ace\IPC_SAP.i"\
- {$(INCLUDE)}"\ace\INET_Addr.i"\
-
-
-"$(INTDIR)\TS_Server_Handler.obj" : $(SOURCE) $(DEP_CPP_TS_SE) "$(INTDIR)"
-
-
-# End Source File
-################################################################################
-# Begin Source File
-
-SOURCE=.\Server_Logging_Handler.cpp
-DEP_CPP_SERVE=\
- {$(INCLUDE)}"\ace\Synch.h"\
- {$(INCLUDE)}"\ace\TLI_Acceptor.h"\
- {$(INCLUDE)}"\ace\SOCK_Acceptor.h"\
- {$(INCLUDE)}"\ace\Log_Msg.h"\
- {$(INCLUDE)}"\ace\Get_Opt.h"\
- {$(INCLUDE)}"\ace\Acceptor.h"\
- ".\Server_Logging_Handler.h"\
- {$(INCLUDE)}"\ace\ACE.h"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Complex.h"\
- {$(INCLUDE)}"\ace\Synch.i"\
- {$(INCLUDE)}"\ace\Synch_T.h"\
- {$(INCLUDE)}"\ace\OS.h"\
- {$(INCLUDE)}"\ace\ACE.i"\
- {$(INCLUDE)}"\ace\Time_Value.h"\
- {$(INCLUDE)}"\ace\stdcpp.h"\
- {$(INCLUDE)}"\ace\ws2tcpip.h"\
- {$(INCLUDE)}"\ace\Trace.h"\
- {$(INCLUDE)}"\ace\OS.i"\
- {$(INCLUDE)}"\ace\config.h"\
- {$(INCLUDE)}"\ace\Time_Value.i"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Simple.h"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Complex.i"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Simple.i"\
- {$(INCLUDE)}"\ace\Event_Handler.h"\
- {$(INCLUDE)}"\ace\Synch_T.i"\
- {$(INCLUDE)}"\ace\Synch_T.cpp"\
- {$(INCLUDE)}"\ace\Event_Handler.i"\
- {$(INCLUDE)}"\ace\Thread.h"\
- {$(INCLUDE)}"\ace\Thread.i"\
- {$(INCLUDE)}"\ace\TLI.h"\
- {$(INCLUDE)}"\ace\TLI_Stream.h"\
- {$(INCLUDE)}"\ace\TLI_Acceptor.i"\
- {$(INCLUDE)}"\ace\IPC_SAP.h"\
- {$(INCLUDE)}"\ace\Addr.h"\
- {$(INCLUDE)}"\ace\TLI.i"\
- {$(INCLUDE)}"\ace\IPC_SAP.i"\
- {$(INCLUDE)}"\ace\Addr.i"\
- {$(INCLUDE)}"\ace\INET_Addr.h"\
- {$(INCLUDE)}"\ace\TLI_Stream.i"\
- {$(INCLUDE)}"\ace\INET_Addr.i"\
- {$(INCLUDE)}"\ace\SOCK_Stream.h"\
- {$(INCLUDE)}"\ace\SOCK_Acceptor.i"\
- {$(INCLUDE)}"\ace\SOCK_IO.h"\
- {$(INCLUDE)}"\ace\SOCK_Stream.i"\
- {$(INCLUDE)}"\ace\SOCK.h"\
- {$(INCLUDE)}"\ace\SOCK_IO.i"\
- {$(INCLUDE)}"\ace\SOCK.i"\
- {$(INCLUDE)}"\ace\Log_Record.h"\
- {$(INCLUDE)}"\ace\Log_Priority.h"\
- {$(INCLUDE)}"\ace\Log_Record.i"\
- {$(INCLUDE)}"\ace\Get_Opt.i"\
- {$(INCLUDE)}"\ace\Service_Config.h"\
- {$(INCLUDE)}"\ace\Service_Object.h"\
- {$(INCLUDE)}"\ace\Svc_Handler.h"\
- {$(INCLUDE)}"\ace\Strategies.h"\
- {$(INCLUDE)}"\ace\Acceptor.i"\
- {$(INCLUDE)}"\ace\Acceptor.cpp"\
- {$(INCLUDE)}"\ace\Thread_Manager.h"\
- {$(INCLUDE)}"\ace\Set.h"\
- {$(INCLUDE)}"\ace\Proactor.h"\
- {$(INCLUDE)}"\ace\ReactorEx.h"\
- {$(INCLUDE)}"\ace\Service_Config.i"\
- {$(INCLUDE)}"\ace\Reactor.h"\
- {$(INCLUDE)}"\ace\Svc_Conf_Tokens.h"\
- {$(INCLUDE)}"\ace\Thread_Manager.i"\
- {$(INCLUDE)}"\ace\Set.i"\
- {$(INCLUDE)}"\ace\Set.cpp"\
- {$(INCLUDE)}"\ace\Message_Block.h"\
- {$(INCLUDE)}"\ace\Timer_Queue.h"\
- {$(INCLUDE)}"\ace\Proactor.i"\
- {$(INCLUDE)}"\ace\Malloc.h"\
- {$(INCLUDE)}"\ace\Message_Block.i"\
- {$(INCLUDE)}"\ace\Malloc.i"\
- {$(INCLUDE)}"\ace\Malloc_T.h"\
- {$(INCLUDE)}"\ace\Memory_Pool.h"\
- {$(INCLUDE)}"\ace\Malloc_T.i"\
- {$(INCLUDE)}"\ace\Malloc_T.cpp"\
- {$(INCLUDE)}"\ace\Signal.h"\
- {$(INCLUDE)}"\ace\Mem_Map.h"\
- {$(INCLUDE)}"\ace\Memory_Pool.i"\
- {$(INCLUDE)}"\ace\Signal.i"\
- {$(INCLUDE)}"\ace\Mem_Map.i"\
- {$(INCLUDE)}"\ace\Timer_Queue.i"\
- {$(INCLUDE)}"\ace\Token.h"\
- {$(INCLUDE)}"\ace\Local_Tokens.h"\
- {$(INCLUDE)}"\ace\ReactorEx.i"\
- {$(INCLUDE)}"\ace\Token.i"\
- {$(INCLUDE)}"\ace\Stack.h"\
- {$(INCLUDE)}"\ace\Synch_Options.h"\
- {$(INCLUDE)}"\ace\Map_Manager.h"\
- {$(INCLUDE)}"\ace\Local_Tokens.i"\
- {$(INCLUDE)}"\ace\Stack.i"\
- {$(INCLUDE)}"\ace\Stack.cpp"\
- {$(INCLUDE)}"\ace\Map_Manager.i"\
- {$(INCLUDE)}"\ace\Map_Manager.cpp"\
- {$(INCLUDE)}"\ace\Handle_Set.h"\
- {$(INCLUDE)}"\ace\Pipe.h"\
- {$(INCLUDE)}"\ace\Reactor.i"\
- {$(INCLUDE)}"\ace\Handle_Set.i"\
- {$(INCLUDE)}"\ace\Pipe.i"\
- {$(INCLUDE)}"\ace\Shared_Object.h"\
- {$(INCLUDE)}"\ace\Service_Object.i"\
- {$(INCLUDE)}"\ace\Shared_Object.i"\
- {$(INCLUDE)}"\ace\Task.h"\
- {$(INCLUDE)}"\ace\Svc_Handler.i"\
- {$(INCLUDE)}"\ace\Svc_Handler.cpp"\
- {$(INCLUDE)}"\ace\Task.i"\
- {$(INCLUDE)}"\ace\Task_T.h"\
- {$(INCLUDE)}"\ace\Message_Queue.h"\
- {$(INCLUDE)}"\ace\Task_T.i"\
- {$(INCLUDE)}"\ace\Task_T.cpp"\
- {$(INCLUDE)}"\ace\IO_Cntl_Msg.h"\
- {$(INCLUDE)}"\ace\Message_Queue.i"\
- {$(INCLUDE)}"\ace\Message_Queue.cpp"\
- {$(INCLUDE)}"\ace\Module.h"\
- {$(INCLUDE)}"\ace\Module.i"\
- {$(INCLUDE)}"\ace\Module.cpp"\
- {$(INCLUDE)}"\ace\Stream_Modules.h"\
- {$(INCLUDE)}"\ace\Stream_Modules.i"\
- {$(INCLUDE)}"\ace\Stream_Modules.cpp"\
- {$(INCLUDE)}"\ace\Dynamic.h"\
- {$(INCLUDE)}"\ace\Dynamic.i"\
- {$(INCLUDE)}"\ace\Strategies.cpp"\
-
-
-"$(INTDIR)\Server_Logging_Handler.obj" : $(SOURCE) $(DEP_CPP_SERVE) "$(INTDIR)"
-
-
-# End Source File
-################################################################################
-# Begin Source File
-
-SOURCE=.\Name_Handler.cpp
-DEP_CPP_NAME_=\
- {$(INCLUDE)}"\ace\SString.h"\
- {$(INCLUDE)}"\ace\Set.h"\
- {$(INCLUDE)}"\ace\Get_Opt.h"\
- {$(INCLUDE)}"\ace\Naming_Context.h"\
- {$(INCLUDE)}"\ace\Acceptor.h"\
- {$(INCLUDE)}"\ace\SOCK_Acceptor.h"\
- {$(INCLUDE)}"\ace\SOCK_Stream.h"\
- {$(INCLUDE)}"\ace\Name_Request_Reply.h"\
- ".\Name_Handler.h"\
- {$(INCLUDE)}"\ace\ACE.h"\
- {$(INCLUDE)}"\ace\SString.i"\
- {$(INCLUDE)}"\ace\OS.h"\
- {$(INCLUDE)}"\ace\ACE.i"\
- {$(INCLUDE)}"\ace\Time_Value.h"\
- {$(INCLUDE)}"\ace\stdcpp.h"\
- {$(INCLUDE)}"\ace\ws2tcpip.h"\
- {$(INCLUDE)}"\ace\Trace.h"\
- {$(INCLUDE)}"\ace\OS.i"\
- {$(INCLUDE)}"\ace\config.h"\
- {$(INCLUDE)}"\ace\Time_Value.i"\
- {$(INCLUDE)}"\ace\Log_Msg.h"\
- {$(INCLUDE)}"\ace\Log_Record.h"\
- {$(INCLUDE)}"\ace\Log_Priority.h"\
- {$(INCLUDE)}"\ace\Log_Record.i"\
- {$(INCLUDE)}"\ace\Set.i"\
- {$(INCLUDE)}"\ace\Set.cpp"\
- {$(INCLUDE)}"\ace\Get_Opt.i"\
- {$(INCLUDE)}"\ace\Service_Object.h"\
- {$(INCLUDE)}"\ace\Name_Proxy.h"\
- {$(INCLUDE)}"\ace\Name_Space.h"\
- {$(INCLUDE)}"\ace\Shared_Object.h"\
- {$(INCLUDE)}"\ace\Event_Handler.h"\
- {$(INCLUDE)}"\ace\Service_Object.i"\
- {$(INCLUDE)}"\ace\Shared_Object.i"\
- {$(INCLUDE)}"\ace\Event_Handler.i"\
- {$(INCLUDE)}"\ace\INET_Addr.h"\
- {$(INCLUDE)}"\ace\SOCK_Connector.h"\
- {$(INCLUDE)}"\ace\Service_Config.h"\
- {$(INCLUDE)}"\ace\Synch_Options.h"\
- {$(INCLUDE)}"\ace\Addr.h"\
- {$(INCLUDE)}"\ace\INET_Addr.i"\
- {$(INCLUDE)}"\ace\Addr.i"\
- {$(INCLUDE)}"\ace\SOCK_Connector.i"\
- {$(INCLUDE)}"\ace\Thread_Manager.h"\
- {$(INCLUDE)}"\ace\Proactor.h"\
- {$(INCLUDE)}"\ace\ReactorEx.h"\
- {$(INCLUDE)}"\ace\Service_Config.i"\
- {$(INCLUDE)}"\ace\Reactor.h"\
- {$(INCLUDE)}"\ace\Svc_Conf_Tokens.h"\
- {$(INCLUDE)}"\ace\Thread.h"\
- {$(INCLUDE)}"\ace\Synch.h"\
- {$(INCLUDE)}"\ace\Thread_Manager.i"\
- {$(INCLUDE)}"\ace\Thread.i"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Complex.h"\
- {$(INCLUDE)}"\ace\Synch.i"\
- {$(INCLUDE)}"\ace\Synch_T.h"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Simple.h"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Complex.i"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Simple.i"\
- {$(INCLUDE)}"\ace\Synch_T.i"\
- {$(INCLUDE)}"\ace\Synch_T.cpp"\
- {$(INCLUDE)}"\ace\Message_Block.h"\
- {$(INCLUDE)}"\ace\Timer_Queue.h"\
- {$(INCLUDE)}"\ace\Proactor.i"\
- {$(INCLUDE)}"\ace\Malloc.h"\
- {$(INCLUDE)}"\ace\Message_Block.i"\
- {$(INCLUDE)}"\ace\Malloc.i"\
- {$(INCLUDE)}"\ace\Malloc_T.h"\
- {$(INCLUDE)}"\ace\Memory_Pool.h"\
- {$(INCLUDE)}"\ace\Malloc_T.i"\
- {$(INCLUDE)}"\ace\Malloc_T.cpp"\
- {$(INCLUDE)}"\ace\Signal.h"\
- {$(INCLUDE)}"\ace\Mem_Map.h"\
- {$(INCLUDE)}"\ace\Memory_Pool.i"\
- {$(INCLUDE)}"\ace\Signal.i"\
- {$(INCLUDE)}"\ace\Mem_Map.i"\
- {$(INCLUDE)}"\ace\Timer_Queue.i"\
- {$(INCLUDE)}"\ace\Token.h"\
- {$(INCLUDE)}"\ace\Local_Tokens.h"\
- {$(INCLUDE)}"\ace\ReactorEx.i"\
- {$(INCLUDE)}"\ace\Token.i"\
- {$(INCLUDE)}"\ace\Stack.h"\
- {$(INCLUDE)}"\ace\Map_Manager.h"\
- {$(INCLUDE)}"\ace\Local_Tokens.i"\
- {$(INCLUDE)}"\ace\Stack.i"\
- {$(INCLUDE)}"\ace\Stack.cpp"\
- {$(INCLUDE)}"\ace\Map_Manager.i"\
- {$(INCLUDE)}"\ace\Map_Manager.cpp"\
- {$(INCLUDE)}"\ace\Handle_Set.h"\
- {$(INCLUDE)}"\ace\Pipe.h"\
- {$(INCLUDE)}"\ace\Reactor.i"\
- {$(INCLUDE)}"\ace\Handle_Set.i"\
- {$(INCLUDE)}"\ace\Pipe.i"\
- {$(INCLUDE)}"\ace\Svc_Handler.h"\
- {$(INCLUDE)}"\ace\Strategies.h"\
- {$(INCLUDE)}"\ace\Acceptor.i"\
- {$(INCLUDE)}"\ace\Acceptor.cpp"\
- {$(INCLUDE)}"\ace\Task.h"\
- {$(INCLUDE)}"\ace\Svc_Handler.i"\
- {$(INCLUDE)}"\ace\Svc_Handler.cpp"\
- {$(INCLUDE)}"\ace\Task.i"\
- {$(INCLUDE)}"\ace\Task_T.h"\
- {$(INCLUDE)}"\ace\Message_Queue.h"\
- {$(INCLUDE)}"\ace\Task_T.i"\
- {$(INCLUDE)}"\ace\Task_T.cpp"\
- {$(INCLUDE)}"\ace\IO_Cntl_Msg.h"\
- {$(INCLUDE)}"\ace\Message_Queue.i"\
- {$(INCLUDE)}"\ace\Message_Queue.cpp"\
- {$(INCLUDE)}"\ace\Module.h"\
- {$(INCLUDE)}"\ace\Module.i"\
- {$(INCLUDE)}"\ace\Module.cpp"\
- {$(INCLUDE)}"\ace\Stream_Modules.h"\
- {$(INCLUDE)}"\ace\Stream_Modules.i"\
- {$(INCLUDE)}"\ace\Stream_Modules.cpp"\
- {$(INCLUDE)}"\ace\Dynamic.h"\
- {$(INCLUDE)}"\ace\Dynamic.i"\
- {$(INCLUDE)}"\ace\Strategies.cpp"\
- {$(INCLUDE)}"\ace\SOCK_Acceptor.i"\
- {$(INCLUDE)}"\ace\SOCK_IO.h"\
- {$(INCLUDE)}"\ace\SOCK_Stream.i"\
- {$(INCLUDE)}"\ace\SOCK.h"\
- {$(INCLUDE)}"\ace\SOCK_IO.i"\
- {$(INCLUDE)}"\ace\IPC_SAP.h"\
- {$(INCLUDE)}"\ace\SOCK.i"\
- {$(INCLUDE)}"\ace\IPC_SAP.i"\
-
-
-"$(INTDIR)\Name_Handler.obj" : $(SOURCE) $(DEP_CPP_NAME_) "$(INTDIR)"
-
-
-# End Source File
-################################################################################
-# Begin Source File
-
-SOURCE=.\Client_Logging_Handler.cpp
-DEP_CPP_CLIEN=\
- {$(INCLUDE)}"\ace\Service_Config.h"\
- {$(INCLUDE)}"\ace\Connector.h"\
- {$(INCLUDE)}"\ace\Log_Msg.h"\
- {$(INCLUDE)}"\ace\Get_Opt.h"\
- {$(INCLUDE)}"\ace\SOCK_Connector.h"\
- {$(INCLUDE)}"\ace\SOCK_Stream.h"\
- {$(INCLUDE)}"\ace\FIFO_Recv_Msg.h"\
- ".\Client_Logging_Handler.h"\
- {$(INCLUDE)}"\ace\Service_Object.h"\
- {$(INCLUDE)}"\ace\Thread_Manager.h"\
- {$(INCLUDE)}"\ace\Set.h"\
- {$(INCLUDE)}"\ace\Proactor.h"\
- {$(INCLUDE)}"\ace\ReactorEx.h"\
- {$(INCLUDE)}"\ace\Service_Config.i"\
- {$(INCLUDE)}"\ace\Reactor.h"\
- {$(INCLUDE)}"\ace\Svc_Conf_Tokens.h"\
- {$(INCLUDE)}"\ace\Shared_Object.h"\
- {$(INCLUDE)}"\ace\Event_Handler.h"\
- {$(INCLUDE)}"\ace\Service_Object.i"\
- {$(INCLUDE)}"\ace\ACE.h"\
- {$(INCLUDE)}"\ace\Shared_Object.i"\
- {$(INCLUDE)}"\ace\OS.h"\
- {$(INCLUDE)}"\ace\ACE.i"\
- {$(INCLUDE)}"\ace\Time_Value.h"\
- {$(INCLUDE)}"\ace\stdcpp.h"\
- {$(INCLUDE)}"\ace\ws2tcpip.h"\
- {$(INCLUDE)}"\ace\Trace.h"\
- {$(INCLUDE)}"\ace\OS.i"\
- {$(INCLUDE)}"\ace\config.h"\
- {$(INCLUDE)}"\ace\Time_Value.i"\
- {$(INCLUDE)}"\ace\Event_Handler.i"\
- {$(INCLUDE)}"\ace\Thread.h"\
- {$(INCLUDE)}"\ace\Synch.h"\
- {$(INCLUDE)}"\ace\Thread_Manager.i"\
- {$(INCLUDE)}"\ace\Thread.i"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Complex.h"\
- {$(INCLUDE)}"\ace\Synch.i"\
- {$(INCLUDE)}"\ace\Synch_T.h"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Simple.h"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Complex.i"\
- {$(INCLUDE)}"\ace\SV_Semaphore_Simple.i"\
- {$(INCLUDE)}"\ace\Synch_T.i"\
- {$(INCLUDE)}"\ace\Synch_T.cpp"\
- {$(INCLUDE)}"\ace\Set.i"\
- {$(INCLUDE)}"\ace\Set.cpp"\
- {$(INCLUDE)}"\ace\Message_Block.h"\
- {$(INCLUDE)}"\ace\Timer_Queue.h"\
- {$(INCLUDE)}"\ace\Proactor.i"\
- {$(INCLUDE)}"\ace\Malloc.h"\
- {$(INCLUDE)}"\ace\Message_Block.i"\
- {$(INCLUDE)}"\ace\Malloc.i"\
- {$(INCLUDE)}"\ace\Malloc_T.h"\
- {$(INCLUDE)}"\ace\Memory_Pool.h"\
- {$(INCLUDE)}"\ace\Malloc_T.i"\
- {$(INCLUDE)}"\ace\Malloc_T.cpp"\
- {$(INCLUDE)}"\ace\Signal.h"\
- {$(INCLUDE)}"\ace\Mem_Map.h"\
- {$(INCLUDE)}"\ace\Memory_Pool.i"\
- {$(INCLUDE)}"\ace\Signal.i"\
- {$(INCLUDE)}"\ace\Mem_Map.i"\
- {$(INCLUDE)}"\ace\Timer_Queue.i"\
- {$(INCLUDE)}"\ace\Token.h"\
- {$(INCLUDE)}"\ace\Local_Tokens.h"\
- {$(INCLUDE)}"\ace\ReactorEx.i"\
- {$(INCLUDE)}"\ace\Token.i"\
- {$(INCLUDE)}"\ace\Stack.h"\
- {$(INCLUDE)}"\ace\Synch_Options.h"\
- {$(INCLUDE)}"\ace\Map_Manager.h"\
- {$(INCLUDE)}"\ace\Local_Tokens.i"\
- {$(INCLUDE)}"\ace\Stack.i"\
- {$(INCLUDE)}"\ace\Stack.cpp"\
- {$(INCLUDE)}"\ace\Map_Manager.i"\
- {$(INCLUDE)}"\ace\Map_Manager.cpp"\
- {$(INCLUDE)}"\ace\Handle_Set.h"\
- {$(INCLUDE)}"\ace\Pipe.h"\
- {$(INCLUDE)}"\ace\Reactor.i"\
- {$(INCLUDE)}"\ace\Handle_Set.i"\
- {$(INCLUDE)}"\ace\Pipe.i"\
- {$(INCLUDE)}"\ace\Svc_Handler.h"\
- {$(INCLUDE)}"\ace\Strategies.h"\
- {$(INCLUDE)}"\ace\Connector.i"\
- {$(INCLUDE)}"\ace\Connector.cpp"\
- {$(INCLUDE)}"\ace\Task.h"\
- {$(INCLUDE)}"\ace\Svc_Handler.i"\
- {$(INCLUDE)}"\ace\Svc_Handler.cpp"\
- {$(INCLUDE)}"\ace\Task.i"\
- {$(INCLUDE)}"\ace\Task_T.h"\
- {$(INCLUDE)}"\ace\Message_Queue.h"\
- {$(INCLUDE)}"\ace\Task_T.i"\
- {$(INCLUDE)}"\ace\Task_T.cpp"\
- {$(INCLUDE)}"\ace\IO_Cntl_Msg.h"\
- {$(INCLUDE)}"\ace\Message_Queue.i"\
- {$(INCLUDE)}"\ace\Message_Queue.cpp"\
- {$(INCLUDE)}"\ace\Module.h"\
- {$(INCLUDE)}"\ace\Module.i"\
- {$(INCLUDE)}"\ace\Module.cpp"\
- {$(INCLUDE)}"\ace\Stream_Modules.h"\
- {$(INCLUDE)}"\ace\Stream_Modules.i"\
- {$(INCLUDE)}"\ace\Stream_Modules.cpp"\
- {$(INCLUDE)}"\ace\Dynamic.h"\
- {$(INCLUDE)}"\ace\Dynamic.i"\
- {$(INCLUDE)}"\ace\Strategies.cpp"\
- {$(INCLUDE)}"\ace\Log_Record.h"\
- {$(INCLUDE)}"\ace\Log_Priority.h"\
- {$(INCLUDE)}"\ace\Log_Record.i"\
- {$(INCLUDE)}"\ace\Get_Opt.i"\
- {$(INCLUDE)}"\ace\SOCK_Connector.i"\
- {$(INCLUDE)}"\ace\SOCK_IO.h"\
- {$(INCLUDE)}"\ace\INET_Addr.h"\
- {$(INCLUDE)}"\ace\SOCK_Stream.i"\
- {$(INCLUDE)}"\ace\SOCK.h"\
- {$(INCLUDE)}"\ace\SOCK_IO.i"\
- {$(INCLUDE)}"\ace\Addr.h"\
- {$(INCLUDE)}"\ace\IPC_SAP.h"\
- {$(INCLUDE)}"\ace\SOCK.i"\
- {$(INCLUDE)}"\ace\Addr.i"\
- {$(INCLUDE)}"\ace\IPC_SAP.i"\
- {$(INCLUDE)}"\ace\INET_Addr.i"\
- {$(INCLUDE)}"\ace\FIFO_Recv.h"\
- {$(INCLUDE)}"\ace\FIFO_Recv_Msg.i"\
- {$(INCLUDE)}"\ace\FIFO.h"\
- {$(INCLUDE)}"\ace\FIFO_Recv.i"\
- {$(INCLUDE)}"\ace\FIFO.i"\
-
-
-"$(INTDIR)\Client_Logging_Handler.obj" : $(SOURCE) $(DEP_CPP_CLIEN) "$(INTDIR)"
-
-
-# End Source File
-################################################################################
-# Begin Source File
-
-SOURCE=.\Logging_Strategy.cpp
-DEP_CPP_LOGGI=\
- {$(INCLUDE)}"\ace\Get_Opt.h"\
- {$(INCLUDE)}"\ace\Log_Msg.h"\
- {$(INCLUDE)}"\ace\Service_Object.h"\
- ".\Logging_Strategy.h"\
- {$(INCLUDE)}"\ace\ACE.h"\
- {$(INCLUDE)}"\ace\Get_Opt.i"\
- {$(INCLUDE)}"\ace\OS.h"\
- {$(INCLUDE)}"\ace\ACE.i"\
- {$(INCLUDE)}"\ace\Time_Value.h"\
- {$(INCLUDE)}"\ace\stdcpp.h"\
- {$(INCLUDE)}"\ace\ws2tcpip.h"\
- {$(INCLUDE)}"\ace\Trace.h"\
- {$(INCLUDE)}"\ace\OS.i"\
- {$(INCLUDE)}"\ace\config.h"\
- {$(INCLUDE)}"\ace\Time_Value.i"\
- {$(INCLUDE)}"\ace\Log_Record.h"\
- {$(INCLUDE)}"\ace\Log_Priority.h"\
- {$(INCLUDE)}"\ace\Log_Record.i"\
- {$(INCLUDE)}"\ace\Shared_Object.h"\
- {$(INCLUDE)}"\ace\Event_Handler.h"\
- {$(INCLUDE)}"\ace\Service_Object.i"\
- {$(INCLUDE)}"\ace\Shared_Object.i"\
- {$(INCLUDE)}"\ace\Event_Handler.i"\
-
-
-"$(INTDIR)\Logging_Strategy.obj" : $(SOURCE) $(DEP_CPP_LOGGI) "$(INTDIR)"
-
-
-# End Source File
-# End Target
-# End Project
-################################################################################
diff --git a/netsvcs/lib/netsvcs.mdp b/netsvcs/lib/netsvcs.mdp
deleted file mode 100644
index f1d293ca6ae..00000000000
--- a/netsvcs/lib/netsvcs.mdp
+++ /dev/null
Binary files differ