From 938cc3190213cca03c3e97e6617c5902a6930c39 Mon Sep 17 00:00:00 2001 From: Roland Jax Date: Mon, 2 Jun 2014 23:01:15 +0200 Subject: [PATCH] class Appl: parseArgs enhanced; ebusd_send for hex command implemented. --- tools/ebusd_send.cpp | 19 +++++++++++++++---- utils/appl.cpp | 8 ++++++++ 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/tools/ebusd_send.cpp b/tools/ebusd_send.cpp index 60cfdb46..51a14a8b 100644 --- a/tools/ebusd_send.cpp +++ b/tools/ebusd_send.cpp @@ -58,14 +58,25 @@ int main(int argc, char* argv[]) exit(EXIT_SUCCESS); } - std::cout << "1: " << A.getArg(1) << std::endl; - std::cout << "2: " << A.getArg(2) << std::endl; - TCPClient* client = new TCPClient(); TCPSocket* socket = client->connect(A.getParam("p_server"), A.getParam("p_port")); if (socket != NULL) { - socket->send("help", 4); + std::string message("hex "); + message += A.getArg(1); + message += " "; + message += A.getArg(2); + + socket->send(message.c_str(), message.size()); + + char data[256]; + size_t datalen; + + datalen = socket->recv(data, sizeof(data)-1); + data[datalen] = '\0'; + + std::cout << data; + delete socket; } diff --git a/utils/appl.cpp b/utils/appl.cpp index 53e88acc..009104f4 100644 --- a/utils/appl.cpp +++ b/utils/appl.cpp @@ -118,6 +118,14 @@ bool Appl::parseArgs(int argc, char* argv[]) } } + + // check args + if (m_argNum > 0) { + for (int i = 0; i <= m_argNum; i++) + if (m_argv[m_argc - 1 - i].rfind("-", 0) != std::string::npos) + return false; + } + return true; }