summaryrefslogtreecommitdiffstats
path: root/apps/http-proxy/main.cc
diff options
context:
space:
mode:
authorMauro Sardara <msardara@cisco.com>2020-02-17 17:44:02 +0100
committerMauro Sardara <msardara@cisco.com>2020-02-17 17:47:01 +0100
commitbdb6ed48ba56ec9d7f2cd1ec62beb75593eb6dcb (patch)
tree9c5660d9ee4e32dd33d3d2c3932a832c36810e42 /apps/http-proxy/main.cc
parentc77f6b381fe29331c72f8abc6fdd4a4d3286f87b (diff)
[HICN-524 HICN-526] Add manifest and content lifetime options to hproxy command line
Change-Id: I565e4edb39b2c3d18fd9b2ef8b2a638a53b9eefe Signed-off-by: Mauro Sardara <msardara@cisco.com>
Diffstat (limited to 'apps/http-proxy/main.cc')
-rw-r--r--apps/http-proxy/main.cc25
1 files changed, 17 insertions, 8 deletions
diff --git a/apps/http-proxy/main.cc b/apps/http-proxy/main.cc
index 8dfaec77e..20655071c 100644
--- a/apps/http-proxy/main.cc
+++ b/apps/http-proxy/main.cc
@@ -19,11 +19,11 @@ using namespace transport;
int usage(char* program) {
std::cerr << "ICN Plugin not loaded!" << std::endl;
- std::cerr
- << "USAGE: " << program << "\n"
- << "[HTTP_PREFIX] -a [SERVER_IP_ADDRESS] "
- "-p [SERVER_PORT] -c [CACHE_SIZE] -m [MTU] -P [FIRST_IPv6_WORD_HEX]"
- << std::endl;
+ std::cerr << "USAGE: " << program << "\n"
+ << "[HTTP_PREFIX] -a [SERVER_IP_ADDRESS] "
+ "-p [SERVER_PORT] -c [CACHE_SIZE] -m [MTU] -l [DEFAULT_LIFETIME "
+ "(seconds)] -P [FIRST_IPv6_WORD_HEX] -M (enable manifest)"
+ << std::endl;
return -1;
}
@@ -34,9 +34,11 @@ int main(int argc, char** argv) {
std::string cache_size("50000");
std::string mtu("1500");
std::string first_ipv6_word("b001");
+ std::string default_content_lifetime("7200"); // seconds
+ bool manifest = false;
int opt;
- while ((opt = getopt(argc, argv, "a:p:c:m:P:")) != -1) {
+ while ((opt = getopt(argc, argv, "a:p:c:m:P:l:M")) != -1) {
switch (opt) {
case 'a':
ip_address = optarg;
@@ -53,6 +55,12 @@ int main(int argc, char** argv) {
case 'P':
first_ipv6_word = optarg;
break;
+ case 'l':
+ default_content_lifetime = optarg;
+ break;
+ case 'M':
+ manifest = true;
+ break;
case 'h':
default:
return usage(argv[0]);
@@ -69,8 +77,9 @@ int main(int argc, char** argv) {
std::cout << "Connecting to " << ip_address << " port " << port
<< " Cache size " << cache_size << " Prefix " << prefix << " MTU "
<< mtu << " IPv6 first word " << first_ipv6_word << std::endl;
- transport::AsyncConsumerProducer proxy(prefix, ip_address, port, cache_size,
- mtu, first_ipv6_word);
+ transport::AsyncConsumerProducer proxy(
+ prefix, ip_address, port, cache_size, mtu, first_ipv6_word,
+ std::stoul(default_content_lifetime) * 1000, manifest);
proxy.run();