You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by mt...@apache.org on 2010/05/18 17:23:45 UTC

svn commit: r945696 - in /trafficserver/traffic/trunk: example/app-template/ iocore/hostdb/ librecords/ proxy/ proxy/logging/ proxy/mgmt2/ proxy/mgmt2/cop/ proxy/mgmt2/web2/

Author: mturk
Date: Tue May 18 15:23:45 2010
New Revision: 945696

URL: http://svn.apache.org/viewvc?rev=945696&view=rev
Log:
Rename local_state_dir to runtime_dir which mimicks the layout and bring back SYSUSER defines where needed

Modified:
    trafficserver/traffic/trunk/example/app-template/app-template.cc
    trafficserver/traffic/trunk/iocore/hostdb/HostDB.cc
    trafficserver/traffic/trunk/librecords/I_RecDefs.h
    trafficserver/traffic/trunk/proxy/Initialize.cc
    trafficserver/traffic/trunk/proxy/Main.cc
    trafficserver/traffic/trunk/proxy/Makefile.am
    trafficserver/traffic/trunk/proxy/StatSystem.cc
    trafficserver/traffic/trunk/proxy/logging/LogStandalone.cc
    trafficserver/traffic/trunk/proxy/mgmt2/BaseRecords.cc
    trafficserver/traffic/trunk/proxy/mgmt2/LMRecords.h
    trafficserver/traffic/trunk/proxy/mgmt2/LocalManager.cc
    trafficserver/traffic/trunk/proxy/mgmt2/Main.cc
    trafficserver/traffic/trunk/proxy/mgmt2/Makefile.am
    trafficserver/traffic/trunk/proxy/mgmt2/cop/Makefile.am
    trafficserver/traffic/trunk/proxy/mgmt2/cop/TrafficCop.cc
    trafficserver/traffic/trunk/proxy/mgmt2/web2/WebIntrMain.cc

Modified: trafficserver/traffic/trunk/example/app-template/app-template.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/example/app-template/app-template.cc?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/example/app-template/app-template.cc (original)
+++ trafficserver/traffic/trunk/example/app-template/app-template.cc Tue May 18 15:23:45 2010
@@ -53,7 +53,7 @@ int system_num_of_net_threads = DEFAULT_
 int system_num_of_udp_threads = DEFAULT_NUMBER_OF_UDP_THREADS;
 
 char system_root_dir[PATH_NAME_MAX + 1]         = DEFAULT_ROOT_DIRECTORY;
-char system_local_state_dir[PATH_NAME_MAX + 1]  = DEFAULT_LOCAL_STATE_DIRECTORY;
+char system_runtime_dir[PATH_NAME_MAX + 1]  = DEFAULT_LOCAL_STATE_DIRECTORY;
 char system_config_directory[PATH_NAME_MAX + 1] = DEFAULT_SYSTEM_CONFIG_DIRECTORY;
 char system_log_dir[PATH_NAME_MAX + 1]          = DEFAULT_LOG_DIRECTORY;
 
@@ -215,7 +215,7 @@ int main(int argc, char * argv[])
   if (0 == get_ts_directory(ts_path,sizeof(ts_path))) {
     ink_strncpy(system_root_dir, ts_path, sizeof(system_root_dir));
     ink_snprintf(system_config_directory, sizeof(system_config_directory), "%s/etc/trafficserver", system_root_dir);
-    ink_snprintf(system_local_state_dir, sizeof(system_local_state_dir), "%s/var/trafficserver", system_root_dir);
+    ink_snprintf(system_runtime_dir, sizeof(system_local_state_dir), "%s/var/trafficserver", system_root_dir);
     ink_snprintf(system_log_dir, sizeof(system_log_dir), "%s/var/log/trafficserver", system_root_dir);
   }
 

Modified: trafficserver/traffic/trunk/iocore/hostdb/HostDB.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/hostdb/HostDB.cc?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/hostdb/HostDB.cc (original)
+++ trafficserver/traffic/trunk/iocore/hostdb/HostDB.cc Tue May 18 15:23:45 2010
@@ -322,7 +322,7 @@ HostDBCache::start(int flags)
   struct stat s;
   int err;
   if ((err = stat(storage_path, &s)) < 0) {
-    ink_strncpy(storage_path,system_local_state_dir,sizeof(storage_path));
+    ink_strncpy(storage_path,system_runtime_dir,sizeof(storage_path));
     if ((err = stat(storage_path, &s)) < 0) {
       Warning("Unable to stat() directory '%s': %d %d, %s", storage_path, err, errno, strerror(errno));
       Warning(" Please set 'proxy.config.hostdb.storage_path' or 'proxy.config.local_state_dir' ");

Modified: trafficserver/traffic/trunk/librecords/I_RecDefs.h
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/librecords/I_RecDefs.h?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/librecords/I_RecDefs.h (original)
+++ trafficserver/traffic/trunk/librecords/I_RecDefs.h Tue May 18 15:23:45 2010
@@ -181,7 +181,7 @@ typedef int (*RecRawStatSyncCb) (const c
 
 // System Defaults
 extern char system_root_dir[PATH_NAME_MAX + 1];
-extern char system_local_state_dir[PATH_NAME_MAX + 1];
+extern char system_runtime_dir[PATH_NAME_MAX + 1];
 extern char system_config_directory[PATH_NAME_MAX + 1];
 extern char system_log_dir[PATH_NAME_MAX + 1];
 

Modified: trafficserver/traffic/trunk/proxy/Initialize.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/Initialize.cc?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/Initialize.cc (original)
+++ trafficserver/traffic/trunk/proxy/Initialize.cc Tue May 18 15:23:45 2010
@@ -117,13 +117,13 @@ init_system_dirs(void)
     }
   }
 
-  if ((err = stat(system_local_state_dir, &s)) < 0) {
+  if ((err = stat(system_runtime_dir, &s)) < 0) {
     // Try 'system_root_dir/var/trafficserver' directory
-    snprintf(system_local_state_dir, sizeof(system_local_state_dir),
+    snprintf(system_runtime_dir, sizeof(system_runtime_dir),
              "%s%s%s%s%s",system_root_dir, DIR_SEP,"var",DIR_SEP,"trafficserver");
-    if ((err = stat(system_local_state_dir, &s)) < 0) {
+    if ((err = stat(system_runtime_dir, &s)) < 0) {
       fprintf(stderr,"unable to stat() local state dir '%s': %d %d, %s\n",
-              system_local_state_dir, err, errno, strerror(errno));
+              system_runtime_dir, err, errno, strerror(errno));
       fprintf(stderr,"please set 'proxy.config.local_state_dir'\n");
       _exit(1);
     }

Modified: trafficserver/traffic/trunk/proxy/Main.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/Main.cc?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/Main.cc (original)
+++ trafficserver/traffic/trunk/proxy/Main.cc Tue May 18 15:23:45 2010
@@ -171,7 +171,7 @@ int remote_management_flag = DEFAULT_REM
 
 char management_directory[PATH_NAME_MAX+1];      // Layout->sysconfdir
 char system_root_dir[PATH_NAME_MAX + 1];         // Layout->prefix
-char system_local_state_dir[PATH_NAME_MAX + 1];  // Layout->localstatedir
+char system_runtime_dir[PATH_NAME_MAX + 1];  // Layout->runtimedir
 char system_config_directory[PATH_NAME_MAX + 1]; // Layout->sysconfdir
 char system_log_dir[PATH_NAME_MAX + 1];          // Layout->logdir
 
@@ -435,7 +435,7 @@ init_dirs(void)
   char buf[PATH_NAME_MAX+1];
 
   ink_strncpy(system_config_directory, Layout::get()->sysconfdir, PATH_NAME_MAX);
-  ink_strncpy(system_local_state_dir, Layout::get()->localstatedir, PATH_NAME_MAX);
+  ink_strncpy(system_runtime_dir, Layout::get()->runtimedir, PATH_NAME_MAX);
   ink_strncpy(system_log_dir, Layout::get()->logdir, PATH_NAME_MAX);
 
   /*
@@ -455,12 +455,12 @@ init_dirs(void)
     }
   }
 
-  if ((err = stat(system_local_state_dir, &s)) < 0) {
+  if ((err = stat(system_runtime_dir, &s)) < 0) {
     REC_ReadConfigString(buf, "proxy.config.local_state_dir", PATH_NAME_MAX);
-    Layout::get()->relative(system_local_state_dir, PATH_NAME_MAX, buf);
-    if ((err = stat(system_local_state_dir, &s)) < 0) {
+    Layout::get()->relative(system_runtime_dir, PATH_NAME_MAX, buf);
+    if ((err = stat(system_runtime_dir, &s)) < 0) {
       fprintf(stderr,"unable to stat() local state dir '%s': %d %d, %s\n",
-              system_local_state_dir, err, errno, strerror(errno));
+              system_runtime_dir, err, errno, strerror(errno));
       fprintf(stderr,"please set 'proxy.config.local_state_dir'\n");
       _exit(1);
     }

Modified: trafficserver/traffic/trunk/proxy/Makefile.am
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/Makefile.am?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/Makefile.am (original)
+++ trafficserver/traffic/trunk/proxy/Makefile.am Tue May 18 15:23:45 2010
@@ -45,10 +45,6 @@ AM_CPPFLAGS = \
   -I$(srcdir)/mgmt2/utils \
   -I$(srcdir)/mgmt2/web2 \
   -I$(srcdir)/api/ts \
-  -DPKGLOGDIR=\"$(pkglogdir)\" \
-  -DPREFIX=\"$(prefix)\" \
-  -DPKGSYSCONFDIR=\"$(pkgsysconfdir)\" \
-  -DPKGLOCALSTATEDIR=\"$(pkglocalstatedir)\" \
   -DPKGSYSUSER=\"$(pkgsysuser)\"
 
 
@@ -408,7 +404,7 @@ install-data-local:
 install-data-hook:
 	-chown -R $(pkgsysuser):$(pkgsysgroup) $(DESTDIR)$(pkgsysconfdir) $(DESTDIR)$(pkgdatadir)
 	-echo $(DESTDIR)$(prefix) > $(DESTDIR)$(sysconfdir)/trafficserver-root
-	-echo "<TS_VERSION> $(PACKAGE_VERSION)" > $(DESTDIR)$(prefix)/etc/trafficserver-release
+	-echo "<TS_VERSION> $(PACKAGE_VERSION)" > $(DESTDIR)$(pkgsysconfdir)trafficserver-release
 
 install-exec-local:
 	$(INSTALL) -d -o $(pkgsysuser) -g $(pkgsysgroup) $(DESTDIR)$(pkglibexecdir)

Modified: trafficserver/traffic/trunk/proxy/StatSystem.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/StatSystem.cc?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/StatSystem.cc (original)
+++ trafficserver/traffic/trunk/proxy/StatSystem.cc Tue May 18 15:23:45 2010
@@ -581,7 +581,7 @@ initialize_all_global_stats()
   // Jira TS-21
   REC_ReadConfigString(local_state_dir, "proxy.config.local_state_dir", PATH_NAME_MAX);
   if ((err = stat(local_state_dir, &s)) < 0) {
-    ink_strncpy(local_state_dir,system_local_state_dir,sizeof(local_state_dir));
+    ink_strncpy(local_state_dir,system_runtime_dir,sizeof(local_state_dir));
     if ((err = stat(local_state_dir, &s)) < 0) {
       Warning("Unable to stat() local state directory '%s': %d %d, %s", local_state_dir, err, errno, strerror(errno));
       Warning(" Please set 'proxy.config.local_state_dir' to allow statistics collection");

Modified: trafficserver/traffic/trunk/proxy/logging/LogStandalone.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/logging/LogStandalone.cc?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/logging/LogStandalone.cc (original)
+++ trafficserver/traffic/trunk/proxy/logging/LogStandalone.cc Tue May 18 15:23:45 2010
@@ -41,13 +41,6 @@
 #include "MgmtUtils.h"
 #include "RecordsConfig.h"
 
-// TODO: consolidate location of these defaults
-#define DEFAULT_ROOT_DIRECTORY            PREFIX
-#define DEFAULT_LOCAL_STATE_DIRECTORY     "var/trafficserver"
-#define DEFAULT_SYSTEM_CONFIG_DIRECTORY   "etc/trafficserver"
-#define DEFAULT_LOG_DIRECTORY             "var/log/trafficserver"
-#define DEFAULT_TS_DIRECTORY_FILE         PREFIX "/etc/traffic_server"
-
 #define LOG_ReadConfigString REC_ReadConfigString
 
 #define HttpBodyFactory		int
@@ -65,11 +58,11 @@ int remote_management_flag = 0;
 int auto_clear_hostdb_flag = 0;
 char proxy_name[DOMAIN_NAME_MAX + 1] = "unknown";
 
-char system_root_dir[PATH_NAME_MAX + 1] = DEFAULT_ROOT_DIRECTORY;
-char system_config_directory[PATH_NAME_MAX + 1] = DEFAULT_SYSTEM_CONFIG_DIRECTORY;
-char system_local_state_dir[PATH_NAME_MAX + 1] = DEFAULT_LOCAL_STATE_DIRECTORY;
-char system_log_dir[PATH_NAME_MAX + 1] = DEFAULT_LOG_DIRECTORY;
-char management_directory[PATH_NAME_MAX + 1] = DEFAULT_SYSTEM_CONFIG_DIRECTORY;
+char system_root_dir[PATH_NAME_MAX + 1] = "";
+char system_config_directory[PATH_NAME_MAX + 1] = "";
+char system_runtime_dir[PATH_NAME_MAX + 1] = "";
+char system_log_dir[PATH_NAME_MAX + 1] = "";
+char management_directory[PATH_NAME_MAX + 1] = "";
 
 char error_tags[1024] = "";
 char action_tags[1024] = "";
@@ -142,19 +135,12 @@ initialize_process_manager()
   if (getenv("PROXY_REMOTE_MGMT")) {
     remote_management_flag = true;
   }
-  //
-  // Remove excess '/'
-  //
-  if (management_directory[strlen(management_directory) - 1] == '/')
-    management_directory[strlen(management_directory) - 1] = 0;
 
-  if ((err = stat(management_directory, &s)) < 0) {
-    // Try 'system_root_dir/etc/trafficserver' directory
-    snprintf(management_directory, sizeof(management_directory),
-             "%s%s%s%s%s",system_root_dir, DIR_SEP,"etc",DIR_SEP,"trafficserver");
+  if (management_directory[0] == '\0') {
+    ink_strncpy(management_directory, Layout::get()->sysconfdir, PATH_NAME_MAX);
     if ((err = stat(management_directory, &s)) < 0) {
       fprintf(stderr,"unable to stat() management path '%s': %d %d, %s\n",
-                management_directory, err, errno, strerror(errno));
+              management_directory, err, errno, strerror(errno));
       fprintf(stderr,"please set management path via command line '-d <managment directory>'\n");
       _exit(1);
     }
@@ -222,24 +208,16 @@ check_lockfile(const char *config_dir, c
 {
   int err;
   pid_t holding_pid;
-  char lockfile[PATH_NAME_MAX + 1];
-  char lockdir[PATH_NAME_MAX] = DEFAULT_LOCAL_STATE_DIRECTORY;
-  struct stat s;
+  char *lockfile = NULL;
 
-  if ((err = stat(lockdir, &s)) < 0) {
-    // Try 'system_root_dir/var/trafficserver' directory
-    snprintf(lockdir, sizeof(lockdir),
-             "%s%s%s%s%s",system_root_dir, DIR_SEP,"var",DIR_SEP,"trafficserver");
-    if ((err = stat(lockdir, &s)) < 0) {
-      fprintf(stderr,"unable to stat() dir'%s': %d %d, %s\n",
-                lockdir, err, errno, strerror(errno));
-      fprintf(stderr," please set correct path in env variable TS_ROOT \n");
-      _exit(1);
-    }
+  struct stat s;
+  if ((err = stat(Layout::get()->runtimedir, &s)) < 0) {
+    fprintf(stderr,"unable to stat() dir'%s': %d %d, %s\n",
+            Layout::get()->runtimedir, err, errno, strerror(errno));
+    fprintf(stderr," please set correct path in env variable TS_ROOT \n");
+    _exit(1);
   }
-  int nn = snprintf(lockfile, sizeof(lockfile),"%s%s%s", lockdir,DIR_SEP,SERVER_LOCK);
-
-  ink_assert(nn > 0);
+  lockfile = Layout::relative_to(Layout::get()->runtimedir, SERVER_LOCK);
 
   Lockfile server_lockfile(lockfile);
   err = server_lockfile.Get(&holding_pid);
@@ -263,6 +241,8 @@ check_lockfile(const char *config_dir, c
     }
     _exit(1);
   }
+  xfree(lockfile);
+
 }
 
 /*-------------------------------------------------------------------------
@@ -339,37 +319,11 @@ init_log_standalone_basic(const char *pg
 int
 get_ts_directory(char *ts_path, size_t ts_path_len)
 {
-  FILE *fp;
-  char *env_path;
   struct stat s;
   int err;
 
-  if ((env_path = getenv("TS_ROOT"))) {
-    ink_strncpy(ts_path, env_path, ts_path_len);
-  } else {
-    if ((fp = fopen(DEFAULT_TS_DIRECTORY_FILE, "r")) != NULL) {
-      if (fgets(ts_path, ts_path_len, fp) == NULL) {
-        fclose(fp);
-        fprintf(stderr,"\nInvalid contents in %s\n",DEFAULT_TS_DIRECTORY_FILE);
-        fprintf(stderr," Please set correct path in env variable TS_ROOT \n");
-        return -1;
-      }
-      // strip newline if it exists
-      int len = strlen(ts_path);
-      if (ts_path[len - 1] == '\n') {
-        ts_path[len - 1] = '\0';
-      }
-      // strip trailing "/" if it exists
-      len = strlen(ts_path);
-      if (ts_path[len - 1] == '/') {
-        ts_path[len - 1] = '\0';
-      }
-
-      fclose(fp);
-    } else {
-      ink_strncpy(ts_path, PREFIX, ts_path_len);
-    }
-  }
+  // TODO: This should probably be logdir?
+  ink_strncpy(ts_path, Layout::get()->prefix, ts_path_len);
 
   if ((err = stat(ts_path, &s)) < 0) {
     fprintf(stderr,"unable to stat() TS PATH '%s': %d %d, %s\n",

Modified: trafficserver/traffic/trunk/proxy/mgmt2/BaseRecords.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/BaseRecords.cc?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/BaseRecords.cc (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/BaseRecords.cc Tue May 18 15:23:45 2010
@@ -29,6 +29,7 @@
  */
 
 #include "inktomi++.h"
+#include "I_Layout.h"
 #include "Main.h"
 #include "Main.h"
 #include "BaseRecords.h"
@@ -122,7 +123,7 @@ BaseRecords::BaseRecords(char *mpath, co
   plugin_data.recs = (Record *) xmalloc(MAX_PLUGIN_RECORDS * sizeof(Record));
 
   /* For now, we are using a dbm for record sharing */
-  snprintf(fpath, sizeof(fpath), "%s%s%s", system_local_state_dir,DIR_SEP,MGMT_DB_FILENAME);
+  Layout::relative_to(fpath, sizeof(fpath), system_runtime_dir, MGMT_DB_FILENAME);
   unlink(fpath);
   record_db = new MgmtDBM(fpath);
 

Modified: trafficserver/traffic/trunk/proxy/mgmt2/LMRecords.h
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/LMRecords.h?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/LMRecords.h (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/LMRecords.h Tue May 18 15:23:45 2010
@@ -47,7 +47,7 @@ public:
   {
     //char fpath[PATH_NAME_MAX];
     time_last_config_change = 0;
-    //snprintf(fpath, sizeof(fpath), "%s%s%s", system_local_state_dir,DIR_SEP,MGMT_DB_FILENAME);
+    //snprintf(fpath, sizeof(fpath), "%s%s%s", system_runtime_dir,DIR_SEP,MGMT_DB_FILENAME);
     //unlink(fpath);
   };
   ~LMRecords() {

Modified: trafficserver/traffic/trunk/proxy/mgmt2/LocalManager.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/LocalManager.cc?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/LocalManager.cc (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/LocalManager.cc Tue May 18 15:23:45 2010
@@ -254,7 +254,7 @@ BaseManager(), run_proxy(proxy_on), reco
     mgmt_log("Bad or missing proxy.config.lm.sem_id value; using default id %d\n", MGMT_SEMID_DEFAULT);
     mgmt_sync_key = MGMT_SEMID_DEFAULT;
   }
-  ink_strncpy(pserver_path, system_local_state_dir, sizeof(pserver_path));
+  ink_strncpy(pserver_path, system_runtime_dir, sizeof(pserver_path));
 
   virt_map = NULL;
 

Modified: trafficserver/traffic/trunk/proxy/mgmt2/Main.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/Main.cc?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/Main.cc (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/Main.cc Tue May 18 15:23:45 2010
@@ -116,7 +116,7 @@ char *xml_path = NULL;
 
 // TODO: Check if really need those
 char system_root_dir[PATH_NAME_MAX + 1];
-char system_local_state_dir[PATH_NAME_MAX + 1];
+char system_runtime_dir[PATH_NAME_MAX + 1];
 char system_config_directory[PATH_NAME_MAX + 1];
 char system_log_dir[PATH_NAME_MAX + 1];
 
@@ -312,7 +312,7 @@ init_dirs(bool use_librecords = true)
   char buf[PATH_NAME_MAX+1];
 
   ink_strncpy(system_config_directory, Layout::get()->sysconfdir, PATH_NAME_MAX);
-  ink_strncpy(system_local_state_dir, Layout::get()->localstatedir, PATH_NAME_MAX);
+  ink_strncpy(system_runtime_dir, Layout::get()->runtimedir, PATH_NAME_MAX);
   ink_strncpy(system_log_dir, Layout::get()->logdir, PATH_NAME_MAX);
 
   if ((err = stat(system_config_directory, &s)) < 0) {
@@ -329,14 +329,14 @@ init_dirs(bool use_librecords = true)
   }
   strcpy(mgmt_path, system_config_directory);
 
-  if ((err = stat(system_local_state_dir, &s)) < 0) {
+  if ((err = stat(system_runtime_dir, &s)) < 0) {
     if (use_librecords) {
       REC_ReadConfigString(buf, "proxy.config.local_state_dir", PATH_NAME_MAX);
-      Layout::get()->relative(system_local_state_dir, PATH_NAME_MAX, buf);
+      Layout::get()->relative(system_runtime_dir, PATH_NAME_MAX, buf);
     }
-    if ((err = stat(system_local_state_dir, &s)) < 0) {
+    if ((err = stat(system_runtime_dir, &s)) < 0) {
       mgmt_elog("unable to stat() local state dir '%s': %d %d, %s\n",
-              system_local_state_dir, err, errno, strerror(errno));
+              system_runtime_dir, err, errno, strerror(errno));
       mgmt_elog("please set 'proxy.config.local_state_dir'\n");
       _exit(1);
     }

Modified: trafficserver/traffic/trunk/proxy/mgmt2/Makefile.am
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/Makefile.am?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/Makefile.am (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/Makefile.am Tue May 18 15:23:45 2010
@@ -34,7 +34,8 @@ AM_CPPFLAGS = \
   -I$(top_srcdir)/proxy/mgmt2/web2 \
   $(iocore_include_dirs) \
   -I$(top_srcdir)/proxy \
-  -I$(top_srcdir)/proxy/hdrs
+  -I$(top_srcdir)/proxy/hdrs \
+  -DPKGSYSUSER=\"$(pkgsysuser)\"
 
 MGMT_DEFS = @MGMT_DEFS@
 DEFS += $(MGMT_DEFS)

Modified: trafficserver/traffic/trunk/proxy/mgmt2/cop/Makefile.am
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/cop/Makefile.am?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/cop/Makefile.am (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/cop/Makefile.am Tue May 18 15:23:45 2010
@@ -26,7 +26,8 @@ AM_CPPFLAGS = \
   -I$(top_srcdir)/proxy/mgmt2/utils \
   -I$(top_srcdir)/proxy/mgmt2/web2 \
   -I$(top_srcdir)/proxy \
-  $(iocore_include_dirs)
+  $(iocore_include_dirs) \
+  -DPKGSYSUSER=\"$(pkgsysuser)\"
 
 MGMT_DEFS = @MGMT_DEFS@
 DEFS += $(MGMT_DEFS)

Modified: trafficserver/traffic/trunk/proxy/mgmt2/cop/TrafficCop.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/cop/TrafficCop.cc?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/cop/TrafficCop.cc (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/cop/TrafficCop.cc Tue May 18 15:23:45 2010
@@ -83,8 +83,8 @@ static char manager_binary[PATH_MAX] = "
 static char server_binary[PATH_MAX] = "traffic_server";
 static char manager_options[OPTIONS_LEN_MAX] = "";
 
-static char log_file[PATH_MAX] = "logs/traffic.out";
-static char bin_path[PATH_MAX] = BINDIR;
+static char log_file[PATH_MAX] = "traffic.out";
+static char bin_path[PATH_MAX];
 
 static int autoconf_port = 8083;
 static int rs_port = 8088;
@@ -649,18 +649,23 @@ read_config()
   read_config_string("proxy.config.manager_binary", manager_binary, sizeof(manager_binary));
   read_config_string("proxy.config.proxy_binary", server_binary, sizeof(server_binary));
   read_config_string("proxy.config.bin_path", bin_path, sizeof(bin_path));
+  if (stat(bin_path, &stat_buf) < 0) {
+    ink_strncpy(Layout::get()->bindir, bin_path, sizeof(bin_path) - 1);
+    if (stat(log_dir, &stat_buf) < 0) {
+      cop_log(COP_FATAL, "could not stat \"%s\"\n", bin_path);
+      cop_log(COP_FATAL, "please set 'proxy.config.bin_path' \n");
+    }
+  }
   read_config_string("proxy.config.log2.logfile_dir", log_dir, sizeof(log_dir));
   if (stat(log_dir, &stat_buf) < 0) {
-    // Try 'root_dir/var/log/trafficserver' directory
-    snprintf(log_dir, sizeof(log_dir), "%s%s%s%s%s%s%s",
-             root_dir, DIR_SEP,"var",DIR_SEP,"log",DIR_SEP,"trafficserver");
+    ink_strncpy(Layout::get()->logdir, log_dir, sizeof(log_dir) - 1);
     if (stat(log_dir, &stat_buf) < 0) {
       cop_log(COP_FATAL, "could not stat \"%s\"\n", log_dir);
       cop_log(COP_FATAL, "please set 'proxy.config.log2.logfile_dir' \n");
     }
   }
   read_config_string("proxy.config.output.logfile", log_filename, sizeof(log_filename));
-  snprintf(log_file, sizeof(log_file), "%s%s%s", log_dir, DIR_SEP, log_filename);
+  Layout::relative_to(log_file, sizeof(log_file), log_dir, log_filename);
   read_config_int("proxy.config.process_manager.mgmt_port", &http_backdoor_port);
   read_config_int("proxy.config.admin.autoconf_port", &autoconf_port);
   read_config_int("proxy.config.cluster.rsport", &rs_port);
@@ -729,15 +734,10 @@ spawn_manager()
     }
   }
 
-  snprintf(prog, sizeof(prog), "%s%s%s", bin_path, DIR_SEP, manager_binary);
+  Layout::relative_to(prog, sizeof(prog), bin_path, manager_binary);
   if (stat(prog, &info) < 0) {
-    // Try 'root_dir/bin_path' directory
-    snprintf(prog, sizeof(prog), "%s%s%s%s", root_dir,bin_path, DIR_SEP, manager_binary);
-    // coverity[fs_check_call]
-    if (stat(prog, &info) < 0) {
-      cop_log(COP_FATAL, "unable to find manager binary \"%s\" [%d '%s']\n", prog, errno, strerror(errno));
-      exit(1);
-    }
+    cop_log(COP_FATAL, "unable to find manager binary \"%s\" [%d '%s']\n", prog, errno, strerror(errno));
+    exit(1);
   }
 
 #ifdef TRACE_LOG_COP

Modified: trafficserver/traffic/trunk/proxy/mgmt2/web2/WebIntrMain.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/web2/WebIntrMain.cc?rev=945696&r1=945695&r2=945696&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/web2/WebIntrMain.cc (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/web2/WebIntrMain.cc Tue May 18 15:23:45 2010
@@ -850,8 +850,8 @@ webIntr_main(void *x)
 
   bzero(api_sock_path, 1024);
   bzero(event_sock_path, 1024);
-  snprintf(api_sock_path, sizeof(api_sock_path), "%s%smgmtapisocket", system_local_state_dir, DIR_SEP);
-  snprintf(event_sock_path, sizeof(event_sock_path), "%s%seventapisocket", system_local_state_dir, DIR_SEP);
+  snprintf(api_sock_path, sizeof(api_sock_path), "%s%smgmtapisocket", system_runtime_dir, DIR_SEP);
+  snprintf(event_sock_path, sizeof(event_sock_path), "%s%seventapisocket", system_runtime_dir, DIR_SEP);
 
   // INKqa12562: MgmtAPI sockets should be created with 775 permission
   mode_t oldmask = umask(S_IWOTH);