From 1e4884f615b20946411a74e41eb9c6aa65e2d5f3 Mon Sep 17 00:00:00 2001 From: Adam Langley Date: Thu, 24 Sep 2015 10:57:52 -0700 Subject: external/boringssl: sync with upstream. This change imports the current version of BoringSSL. The only local change now is that |BORINGSSL_201509| is defined in base.h. This allows this change to be made without (hopefully) breaking the build. This change will need https://android-review.googlesource.com/172744 to be landed afterwards to update a test. Change-Id: I6d1f463f7785a2423bd846305af91c973c326104 --- src/tool/args.cc | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'src/tool/args.cc') diff --git a/src/tool/args.cc b/src/tool/args.cc index a164476..9ec18a3 100644 --- a/src/tool/args.cc +++ b/src/tool/args.cc @@ -15,7 +15,9 @@ #include #include +#include #include +#include #include #include "internal.h" @@ -75,3 +77,28 @@ void PrintUsage(const struct argument *templates) { fprintf(stderr, "%s\t%s\n", templ->name, templ->description); } } + +bool GetUnsigned(unsigned *out, const std::string &arg_name, + unsigned default_value, + const std::map &args) { + const auto &it = args.find(arg_name); + if (it == args.end()) { + *out = default_value; + return true; + } + + const std::string &value = it->second; + if (value.empty()) { + return false; + } + + char *endptr; + unsigned long int num = strtoul(value.c_str(), &endptr, 10); + if (*endptr || + num > UINT_MAX) { + return false; + } + + *out = num; + return true; +} -- cgit v1.1