summaryrefslogtreecommitdiff
path: root/ACE/protocols/tests/HTBP/Send_Large_Msg/client.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/protocols/tests/HTBP/Send_Large_Msg/client.cpp')
-rw-r--r--ACE/protocols/tests/HTBP/Send_Large_Msg/client.cpp92
1 files changed, 68 insertions, 24 deletions
diff --git a/ACE/protocols/tests/HTBP/Send_Large_Msg/client.cpp b/ACE/protocols/tests/HTBP/Send_Large_Msg/client.cpp
index 62cd9140da8..cf97a18eb78 100644
--- a/ACE/protocols/tests/HTBP/Send_Large_Msg/client.cpp
+++ b/ACE/protocols/tests/HTBP/Send_Large_Msg/client.cpp
@@ -1,7 +1,5 @@
// $Id$
-#include "tests/test_config.h"
-
#include "ace/HTBP/HTBP_Session.h"
#include "ace/HTBP/HTBP_Stream.h"
#include "ace/HTBP/HTBP_Addr.h"
@@ -9,34 +7,65 @@
#include "ace/HTBP/HTBP_Environment.h"
#include "ace/Log_Msg.h"
+#include "ace/Get_Opt.h"
const ssize_t Send_Size = 4*1024;
const size_t Loops = 10;
const size_t Total_Size = Send_Size * Loops;
+const ACE_TCHAR * remote_host = 0;
+const ACE_TCHAR * config_file = 0;
+unsigned remote_port = 8088;
int
-ACE_TMAIN (int argc, ACE_TCHAR *argv[])
+parse_args (int argc, char *argv[])
{
- ACE_START_TEST (ACE_TEXT ("HTBP_Send_Large_Msg_client"));
+ ACE_Get_Opt get_opts (argc, argv, "p:h:c:");
+ int c;
+
+ while ((c = get_opts ()) != -1)
+ switch (c)
+ {
+ case 'p':
+ remote_port = static_cast<unsigned>(ACE_OS::atoi (get_opts.opt_arg()));
+ case 'h':
+ remote_host = get_opts.opt_arg ();
+ break;
+ case 'c':
+ config_file = get_opts.opt_arg ();
+ break;
+ case '?':
+ default:
+ ACE_ERROR_RETURN ((LM_ERROR,
+ ACE_TEXT ("usage: %s ")
+ ACE_TEXT ("-h remote_host ")
+ ACE_TEXT ("-p remote_port ")
+ ACE_TEXT ("-c config_file ")
+ ACE_TEXT ("\n"),
+ argv [0]),
+ -1);
+ }
+ // Indicates sucessful parsing of the command line
+ return 0;
+}
+int
+ACE_TMAIN (int argc, ACE_TCHAR *argv[])
+{
ACE_OS::socket_init (ACE_WSOCK_VERSION);
- if (argc < 2)
+ if (parse_args(argc, argv) != 0)
+ return 1;
+ if (remote_host == 0)
ACE_ERROR_RETURN ((LM_ERROR,
- "Usage: client <remote host>\n"),
- 0);
- ACE::HTBP::Environment env;
-#if 0 // this should be a taken from a command line argument
- env.import_config (ACE_TEXT("../HTBP_Config.conf"));
-#endif /* 0 */
+ ACE_TEXT ("Client: No remote host specified\n")),1);
+ ACE::HTBP::Environment env;
+ if (config_file != 0)
+ env.import_config (config_file);
ACE::HTBP::ID_Requestor req (&env);
ACE::HTBP::Addr local(ACE_TEXT_ALWAYS_CHAR(req.get_HTID()));
- unsigned remote_port = 8088;
- const ACE_TCHAR * remote_host = argv[1];
-
unsigned proxy_port = 0;
ACE_TString proxy_host;
@@ -44,6 +73,7 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[])
env.get_proxy_host(proxy_host) != 0)
{
ACE_DEBUG ((LM_DEBUG,
+ ACE_TEXT("(%P|%t) Client: ")
ACE_TEXT("no proxy address in ")
ACE_TEXT("config, using direct connect\n")));
proxy_port = remote_port;
@@ -59,7 +89,9 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[])
&proxy);
ACE::HTBP::Stream *stream = new ACE::HTBP::Stream(&session);
- ACE_DEBUG ((LM_DEBUG,ACE_TEXT("Sending message\n")));
+ ACE_DEBUG ((LM_DEBUG,
+ ACE_TEXT("(%P|%t) Client: ")
+ ACE_TEXT("Sending message\n")));
char buffer[Send_Size];
ACE_OS::memset (buffer,'a',Send_Size);
ssize_t n = 0;
@@ -70,14 +102,22 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[])
{
n += stream->send (buffer+n,Send_Size);
ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT("Sending %d of %d\n"), n, Send_Size));
+ ACE_TEXT("(%P|%t) Client: ")
+ ACE_TEXT("Sending %d of %d\n"),
+ n, Send_Size));
}
if (n == -1 && errno != 0)
{
- ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT("%p\n %d"),
- ACE_TEXT("stream send"), errno), -1);
+ ACE_ERROR_RETURN ((LM_ERROR,
+ ACE_TEXT("(%P|%t) Client: ")
+ ACE_TEXT("%p\n %d"),
+ ACE_TEXT("stream send"), errno),
+ -1);
}
- ACE_DEBUG ((LM_DEBUG, ACE_TEXT("In round %d, send returned %d\n"), i, n));
+ ACE_DEBUG ((LM_DEBUG,
+ ACE_TEXT("(%P|%t) Client: ")
+ ACE_TEXT("In round %d, send returned %d\n"),
+ i, n));
}
buffer[0] = 0;
@@ -87,12 +127,16 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[])
if (errno == EWOULDBLOCK)
n = stream->recv (buffer,1000);
else
- ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT("%p\n"),
- ACE_TEXT("stream.recv")),-1);
+ ACE_ERROR_RETURN ((LM_ERROR,
+ ACE_TEXT("(%P|%t) Client: ")
+ ACE_TEXT("%p\n"),
+ ACE_TEXT("stream.recv")),
+ -1);
}
- ACE_DEBUG ((LM_DEBUG, ACE_TEXT("received %d, %s\n"),n,buffer));
-
- ACE_END_TEST;
+ ACE_DEBUG ((LM_DEBUG,
+ ACE_TEXT("(%P|%t) Client: ")
+ ACE_TEXT("received %d, %s\n"),
+ n,buffer));
return 0;
}