From 76bc9968ff0ec7d044042f9214fa59efb3146685 Mon Sep 17 00:00:00 2001 From: Adam Ierymenko Date: Wed, 17 Jul 2013 14:10:44 -0400 Subject: New simpler command interface via loopback UDP protected by a crypto token. --- node/Utils.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'node/Utils.cpp') diff --git a/node/Utils.cpp b/node/Utils.cpp index b9db07b9..7b2a17af 100644 --- a/node/Utils.cpp +++ b/node/Utils.cpp @@ -28,6 +28,7 @@ #include #include #include +#include #include "Utils.hpp" #include "Mutex.hpp" @@ -530,4 +531,20 @@ std::string Utils::trim(const std::string &s) return s.substr(start,end - start); } +void Utils::stdsprintf(std::string &s,const char *fmt,...) + throw(std::bad_alloc,std::length_error) +{ + char buf[65536]; + va_list ap; + + va_start(ap,fmt); + int n = vsnprintf(buf,sizeof(buf),fmt,ap); + va_end(ap); + + if ((n >= (int)sizeof(buf))||(n < 0)) + throw std::length_error("printf result too large"); + + s.append(buf); +} + } // namespace ZeroTier -- cgit v1.2.3