]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Do not use NAME_MAX because it is not portable.
authorAlex Rousskov <rousskov@measurement-factory.com>
Wed, 7 Jul 2010 16:41:03 +0000 (10:41 -0600)
committerAlex Rousskov <rousskov@measurement-factory.com>
Wed, 7 Jul 2010 16:41:03 +0000 (10:41 -0600)
src/cache_cf.cc
src/ipc/Kids.cc
src/ipc/Kids.h
src/main.cc

index 88199d85f687342a5d45682f1ec122d33ebdd5dd..4dbdafd482d6cb9d9249480826cc808209d1feab 100644 (file)
@@ -296,7 +296,7 @@ SubstituteMacro(char*& line, int& len, const char* macroName, const char* substS
 static void
 ProcessMacros(char*& line, int& len)
 {
-    SubstituteMacro(line, len, "${process_name}", KidName);
+    SubstituteMacro(line, len, "${process_name}", TheKidName);
     SubstituteMacro(line, len, "${process_number}", xitoa(KidIdentifier));
 }
 
index ad0da3786e3033c3be35c38c65bc65741c429f36..7e15ceb7d6e6a2ca320c679273d7abe16e6fcd9d 100644 (file)
@@ -9,7 +9,7 @@
 #include "ipc/Kids.h"
 
 Kids TheKids;
-char KidName[NAME_MAX];
+KidName TheKidName;
 
 Kids::Kids()
 {
index d2432a9d51ca87bd82892e95d3ba064e7a278aaa..bf7a56c036b2fdb165e30924fba9d3ce78c1c2e7 100644 (file)
@@ -48,7 +48,8 @@ private:
 
 extern Kids TheKids; ///< All kids being maintained
 
-extern char KidName[NAME_MAX]; ///< current Squid process name (e.g., squid2)
+typedef char KidName[64]; ///< Squid process name (e.g., squid2)
+extern KidName TheKidName; ///< current Squid process name
 
 
 #endif /* SQUID_IPC_KIDS_H */
index 3d57d31524193667924a27a80fe1e27291bf9bad..a5704158568d037a46dc6cc757f251d1051988cc 100644 (file)
@@ -1215,11 +1215,12 @@ ConfigureCurrentKid(const char *processName)
     if (processName && processName[0] == '(') {
         if (const char *idStart = strrchr(processName, '-')) {
             KidIdentifier = atoi(idStart + 1);
-            const int nameLen = idStart - (processName + 1);
-            xstrncpy(KidName, processName + 1, nameLen + 1);
+            const size_t nameLen = idStart - (processName + 1);
+            assert(nameLen < sizeof(TheKidName));
+            xstrncpy(TheKidName, processName + 1, nameLen + 1);
         }
     } else {
-        xstrncpy(KidName, APP_SHORTNAME, sizeof(KidName));
+        xstrncpy(TheKidName, APP_SHORTNAME, sizeof(TheKidName));
         KidIdentifier = 0;
     }
 }