]> granicus.if.org Git - pdns/commitdiff
rec NSID: guard the call to gethostname
authorPieter Lexis <pieter.lexis@powerdns.com>
Tue, 20 Feb 2018 09:23:30 +0000 (10:23 +0100)
committerPieter Lexis <pieter.lexis@powerdns.com>
Wed, 30 May 2018 08:00:50 +0000 (10:00 +0200)
pdns/pdns_recursor.cc

index d93cd4ce5d2cc23eb5c47fe96a7ca82cdbae337e..af0944ba251bab19e14e813e98c8da62649ca0a6 100644 (file)
@@ -3209,8 +3209,11 @@ static int serviceMain(int argc, char*argv[])
   SyncRes::s_rootNXTrust = ::arg().mustDo( "root-nx-trust");
   if(SyncRes::s_serverID.empty()) {
     char tmp[128];
-    gethostname(tmp, sizeof(tmp)-1);
-    SyncRes::s_serverID=tmp;
+    if (gethostname(tmp, sizeof(tmp)-1) == 0){
+      SyncRes::s_serverID = tmp;
+    } else {
+      L<<Logger::Warning<<"Unable to get the hostname, NSID and id.server values will be empty: "<<strerror(errno)<<endl;
+    }
   }
 
   SyncRes::s_ecsipv4limit = ::arg().asNum("ecs-ipv4-bits");