|
reSIProcate/stack
9694
|
#include "rutil/Logger.hxx"#include "resip/stack/Uri.hxx"#include "Register.hxx"#include "Registrar.hxx"#include "InviteServer.hxx"#include "InviteClient.hxx"#include "Transceiver.hxx"
Go to the source code of this file.
Defines | |
| #define | RESIPROCATE_SUBSYSTEM Subsystem::SIP |
Functions | |
| void | usage () |
| int | main (int argc, char *argv[]) |
| #define RESIPROCATE_SUBSYSTEM Subsystem::SIP |
| int main | ( | int | argc, |
| char * | argv[] | ||
| ) |
Definition at line 27 of file lg.cxx.
References resip::Symbols::COLON, resip::Log::Cout, resip::ParseBuffer::data(), resip::ParseBuffer::end(), Loadgen::Registrar::go(), Loadgen::InviteServer::go(), Loadgen::InviteClient::go(), Loadgen::Register::go(), resip::Uri::host(), resip::Log::Info, InfoLog, resip::Log::initialize(), resip::ParseBuffer::integer(), resip::ParserCategory::param(), resip::Uri::port(), resip::ParseBuffer::position(), resip::ParseBuffer::skipChar(), resip::ParseBuffer::skipToChar(), and usage().
{
Log::initialize(Log::Cout, Log::Info, argv[0]);
if (!(argc == 3 || argc == 6 || argc == 7))
{
usage();
}
int port = atoi(argv[1]);
if (port == 0)
{
usage();
}
if (Data(argv[2]) == "REG_SEND" || Data(argv[2]) == "INV_SEND")
{
Uri target;
ParseBuffer host(argv[3], strlen(argv[3]));
const char* start = host.position();
host.skipToChar(Symbols::COLON[0]);
if (host.position() == host.end())
{
usage();
}
target.host() = host.data(start);
host.skipChar();
target.port() = host.integer();
target.param(p_transport) = "udp";
InfoLog(<< target);
Transceiver stack(port);
int startExt = atoi(argv[4]);
int endExt = atoi(argv[5]);
if (startExt == 0 || endExt == 0 || startExt > endExt)
{
usage();
}
int numTimes = 0;
if (argc == 7)
{
numTimes = atoi(argv[6]);
if (numTimes == 0)
{
usage();
}
}
if (Data(argv[2]) == "REG_SEND")
{
Register reg(stack, target,
startExt, endExt, numTimes);
reg.go();
}
else
{
InviteClient inv(stack, target,
startExt, endExt, numTimes);
inv.go();
}
}
else if (Data(argv[2]) == "REG_RECEIVE")
{
Transceiver stack(port);
Registrar reg(stack);
reg.go();
}
else if (Data(argv[2]) == "INV_RECEIVE")
{
Transceiver stack(port);
InviteServer inv(stack);
inv.go();
}
else
{
usage();
}
return 0;
}

1.7.5.1