1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "cloud_print/gcp20/prototype/gcp20_switches.h"
7 #include "base/files/file_path.h"
8 #include "base/path_service.h"
12 const char kDisableConfirmation[] = "disable-confirmation";
13 const char kDisableIpv4[] = "disable-ipv4";
14 const char kDisableIpv6[] = "disable-ipv6";
15 const char kDisableMethodCheck[] = "disable-method-check";
16 const char kDisableXTocken[] = "disable-x-token";
17 const char kDomainName[] = "domain-name";
18 const char kExtendedResponce[] = "extended-response";
19 const char kHelpShort[] = "h";
20 const char kHelp[] = "help";
21 const char kHttpPort[] = "http-port";
22 const char kNoAnnouncement[] = "no-announcement";
23 const char kServiceName[] = "service-name";
24 const char kSimulatePrintingErrors[] = "simulate-printing-errors";
25 const char kStatePath[] = "state-path";
26 const char kTtl[] = "ttl";
27 const char kUnicastRespond[] = "unicast-respond";
30 const char* const name;
31 const char* const description;
32 const char* const arg;
34 {kDisableConfirmation, "disables confirmation of registration", NULL},
35 {kDisableIpv4, "disables IPv4 support", NULL},
36 {kDisableIpv6, "disables IPv6 support", NULL},
37 {kDisableMethodCheck, "disables HTTP method checking (POST, GET)", NULL},
38 {kDisableXTocken, "disables checking of X-Privet-Token HTTP header", NULL},
39 {kNoAnnouncement, "disables DNS announcements", NULL},
40 {kExtendedResponce, "responds to PTR with additional records", NULL},
41 {kSimulatePrintingErrors, "simulates some errors for local printing", NULL},
43 "DNS responses will be sent in unicast instead of multicast", NULL},
44 {kDomainName, "sets, should ends with '.local'", "DOMAIN"},
45 {kHttpPort, "sets port for HTTP server", "PORT"},
46 {kServiceName, "sets DNS service name", "SERVICE"},
47 {kStatePath, "sets path to file with registration state", "PATH"},
48 {kTtl, "sets TTL for DNS announcements", "TTL"},
53 PathService::Get(base::FILE_EXE, &exe);
54 printf("usage: %s [OPTION]...\n\n", exe.BaseName().MaybeAsASCII().c_str());
55 for (size_t i = 0; i < arraysize(kHelpStrings); ++i) {
56 std::string name = kHelpStrings[i].name;
57 if (kHelpStrings[i].arg) {
59 name += kHelpStrings[i].arg;
62 printf(" --%s%s\n", name.c_str(), kHelpStrings[i].description);
64 printf("\n WARNING: mDNS probing is not implemented\n");
67 } // namespace switches