#include <arpa/inet.h>
#include <string.h>
+#include "stg/common.h"
+#include "stg/netunit.h"
#include "request.h"
-#include "common.h"
-#include "netunit.h"
#define FN_LEN (512)
#define REQ_STR_LEN (300)
char fileName[FN_LEN];
char strReq[2048];
-//int ParseReply(void * data, SLIST * ans);
int ParseReply(void * data, list<string> * ans);
struct option long_options[] = {
//-----------------------------------------------------------------------------
void CreateRequest(REQUEST * req, char * r)
{
-char str[10024];
r[0] = 0;
-if (!req->strReq.res_empty())
+if (!req->strReq.empty())
{
+ char str[10024];
sprintf(str, "%s", req->strReq.const_data().c_str());
strcat(r, str);
return;
} else
{
- FILE *f;
- f = NULL;
- f = fopen(fileName, "rt");
+ FILE *f = fopen(fileName, "rt");
if (!f)
{
printf("Can't open request file\n");
//-----------------------------------------------------------------------------
int Process(REQUEST * r)
{
-char errorMsg[MAX_ERR_STR_LEN];
int ret;
char str[2048];
NETTRANSACT nt;
nt.SetServer(r->server.const_data().c_str());
-nt.SetServerPort(r->port);
+nt.SetServerPort(r->port.const_data());
nt.SetLogin(r->admLogin.const_data().c_str());
nt.SetPassword(r->admPasswd.const_data().c_str());
nt.SetRxCallback(NULL, ParseReply);
if ((ret = nt.Connect()) != st_ok)
{
- strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN);
- printf("%s", errorMsg);
+ printf("%s\n", nt.GetError().c_str());
return ret;
}
if ((ret = nt.Transact(str)) != st_ok)
{
- strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN);
- printf("%s", errorMsg);
+ printf("%s\n", nt.GetError().c_str());
return ret;
}
if ((ret = nt.Disconnect()) != st_ok)
{
- strncpy(errorMsg, nt.GetError(), MAX_ERR_STR_LEN);
- printf("%s", errorMsg);
+ printf("%s\n", nt.GetError().c_str());
return ret;
}
//-----------------------------------------------------------------------------
int CheckParameters(REQUEST * req)
{
-int a = !req->admLogin.res_empty()
- && !req->admPasswd.res_empty()
- && !req->server.res_empty()
- && !req->port.res_empty();
+int a = !req->admLogin.empty()
+ && !req->admPasswd.empty()
+ && !req->server.empty()
+ && !req->port.empty();
-int b = !req->fileReq.res_empty()
- || !req->strReq.res_empty();
+int b = !req->fileReq.empty()
+ || !req->strReq.empty();
return a && b;
}
printf(" <Message login=\"LOGIN\" msgver=\"1\" msgtype=\"1\" repeat=\"0\" repeatperiod=\"0\" showtime=\"0\" text=\"MESSAGE\" />\n");
}
//---------------------------------------------------------------------------
-int main (int argc, char **argv)
+int main(int argc, char **argv)
{
-int c;
-//int digit_optind = 0;
REQUEST req;
while (1)
{
- //int this_option_optind = optind ? optind : 1;
int option_index = -1;
- c = getopt_long(argc, argv, "s:p:a:w:f:r:", long_options, &option_index);
+ int c = getopt_long(argc, argv, "s:p:a:w:f:r:", long_options, &option_index);
if (c == -1)
break;
case 'p': //port
req.port = ParseServerPort(optarg);
- //req.portReq = 1;
break;
case 'a': //admin
break;
case '?':
- //printf ("Unknown option \n");
break;
default:
if (CheckParameters(&req) == 0)
{
- //printf("Parameter needed\n");
Usage();
exit(PARAMETER_PARSING_ERR_CODE);
}