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/19 14:26:02 UTC
svn commit: r946150 - in /trafficserver/traffic/trunk/proxy/mgmt2:
cli/CliMain.cc cli/CliUtils.cc cli/Makefile.am cli/clientCLI.cc
cli/clientCLI.h cli2/CliMgmtUtils.cc cli2/CliMgmtUtils.h cli2/Makefile.am
cli2/UtilCmds.cc cli2/cliMain.cc
Author: mturk
Date: Wed May 19 12:26:02 2010
New Revision: 946150
URL: http://svn.apache.org/viewvc?rev=946150&view=rev
Log:
TS-345 Cleanup absolue paths and use Layout engine for cli and cli2.
Modified:
trafficserver/traffic/trunk/proxy/mgmt2/cli/CliMain.cc
trafficserver/traffic/trunk/proxy/mgmt2/cli/CliUtils.cc
trafficserver/traffic/trunk/proxy/mgmt2/cli/Makefile.am
trafficserver/traffic/trunk/proxy/mgmt2/cli/clientCLI.cc
trafficserver/traffic/trunk/proxy/mgmt2/cli/clientCLI.h
trafficserver/traffic/trunk/proxy/mgmt2/cli2/CliMgmtUtils.cc
trafficserver/traffic/trunk/proxy/mgmt2/cli2/CliMgmtUtils.h
trafficserver/traffic/trunk/proxy/mgmt2/cli2/Makefile.am
trafficserver/traffic/trunk/proxy/mgmt2/cli2/UtilCmds.cc
trafficserver/traffic/trunk/proxy/mgmt2/cli2/cliMain.cc
Modified: trafficserver/traffic/trunk/proxy/mgmt2/cli/CliMain.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/cli/CliMain.cc?rev=946150&r1=946149&r2=946150&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/cli/CliMain.cc (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/cli/CliMain.cc Wed May 19 12:26:02 2010
@@ -380,13 +380,10 @@ main(int argc, char **argv)
// Connect to Local Manager
#ifndef _WIN32
if (cli->connectToLM() != clientCLI::err_none) {
- char ts_path[PATH_NAME_MAX + 1];
char sock_path[PATH_NAME_MAX + 1];
- if (0 == cli->GetTSDirectory(ts_path, sizeof(ts_path))) {
- snprintf(sock_path, sizeof(sock_path), "%s/var/trafficserver/cli", ts_path);
- } else {
- ink_strncpy(sock_path, clientCLI::defaultSockPath, sizeof(sock_path));
- }
+
+ Layout::relative_to(sock_path, sizeof(sock_path),
+ Layout::get()->runtimedir, clientCLI::defaultSockPath);
cli->setSockPath(sock_path);
if (cli->connectToLM() != clientCLI::err_none) {
fprintf(stderr, "%s: unable to connect to traffic_manager via %s\n", programName, cli->sockPath);
Modified: trafficserver/traffic/trunk/proxy/mgmt2/cli/CliUtils.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/cli/CliUtils.cc?rev=946150&r1=946149&r2=946150&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/cli/CliUtils.cc (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/cli/CliUtils.cc Wed May 19 12:26:02 2010
@@ -31,6 +31,7 @@
#include "ink_unused.h" /* MAGIC_EDITING_TAG */
#include "inktomi++.h"
+#include "I_Layout.h"
#include "CliUtils.h"
#include "clientCLI.h"
#include "MgmtSocket.h"
@@ -303,37 +304,10 @@ DEFAULT_TS_DIRECTORY_FILE
int
GetTSDirectory(char *ts_path, size_t ts_path_len)
{
- FILE *fp;
- const 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);
- printf("\nInvalid contents in %s\n",DEFAULT_TS_DIRECTORY_FILE);
- printf(" 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);
- }
- }
+ ink_strncpy(ts_path, Layout::get()->bindir, ts_path_len);
if ((err = stat(ts_path, &s)) < 0) {
printf("unable to stat() TS PATH '%s': %d %d, %s\n",
Modified: trafficserver/traffic/trunk/proxy/mgmt2/cli/Makefile.am
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/cli/Makefile.am?rev=946150&r1=946149&r2=946150&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/cli/Makefile.am (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/cli/Makefile.am Wed May 19 12:26:02 2010
@@ -28,10 +28,7 @@ AM_CPPFLAGS = \
-I$(top_srcdir)/proxy/mgmt2/utils \
-I$(top_srcdir)/proxy/mgmt2/web2 \
-I$(top_srcdir)/proxy \
- $(iocore_include_dirs) \
- -DPREFIX=\"$(prefix)\" \
- -DPKGSYSCONFDIR=\"$(pkgsysconfdir)\" \
- -DPKGLOCALSTATEDIR=\"$(pkglocalstatedir)\"
+ $(iocore_include_dirs)
MGMT_DEFS = @MGMT_DEFS@
DEFS += $(MGMT_DEFS)
Modified: trafficserver/traffic/trunk/proxy/mgmt2/cli/clientCLI.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/cli/clientCLI.cc?rev=946150&r1=946149&r2=946150&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/cli/clientCLI.cc (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/cli/clientCLI.cc Wed May 19 12:26:02 2010
@@ -30,6 +30,7 @@
****************************************************************************/
#include "inktomi++.h"
+#include "I_Layout.h"
#include "Tokenizer.h"
#include "TextBuffer.h"
#include "CliUtils.h" /* cli_read_timeout(), cli_write_timeout(),GetTSDirectory() */
@@ -46,7 +47,7 @@ const char *
#ifndef _WIN32
const char *
- clientCLI::defaultSockPath = DEFAULT_LOCAL_STATE_DIRECTORY "/cli";
+ clientCLI::defaultSockPath = "cli";
#else
const int
clientCLI::defaultCliPort = 9000;
@@ -74,39 +75,10 @@ clientCLI::~clientCLI(void)
int
clientCLI::GetTSDirectory(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);
- }
- }
-
+ ink_strncpy(ts_path, Layout::get()->bindir, ts_path_len);
if ((err = stat(ts_path, &s)) < 0) {
fprintf(stderr,"unable to stat() TS PATH '%s': %d %d, %s\n",
ts_path, err, errno, strerror(errno));
@@ -116,6 +88,7 @@ clientCLI::GetTSDirectory(char *ts_path,
return 0;
}
+
void
clientCLI::setSockPath(const char *path)
{
Modified: trafficserver/traffic/trunk/proxy/mgmt2/cli/clientCLI.h
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/cli/clientCLI.h?rev=946150&r1=946149&r2=946150&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/cli/clientCLI.h (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/cli/clientCLI.h Wed May 19 12:26:02 2010
@@ -35,13 +35,6 @@
#include "ink_platform.h"
#include "inktomi++.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"
-
class textBuffer;
/* Client side part of CLI */
Modified: trafficserver/traffic/trunk/proxy/mgmt2/cli2/CliMgmtUtils.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/cli2/CliMgmtUtils.cc?rev=946150&r1=946149&r2=946150&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/cli2/CliMgmtUtils.cc (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/cli2/CliMgmtUtils.cc Wed May 19 12:26:02 2010
@@ -30,6 +30,7 @@
****************************************************************/
#include "inktomi++.h"
+#include "I_Layout.h"
#include <stdlib.h>
#include <unistd.h>
#include "CliMgmtUtils.h"
@@ -552,39 +553,10 @@ cliCheckIfEnabled(const char *command)
int
GetTSDirectory(char *ts_path, size_t ts_path_len)
{
- FILE *fp;
- char *env_path;
-
- struct stat s;
int err;
+ struct stat s;
- 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);
- Cli_Error("\nInvalid contents in %s\n",DEFAULT_TS_DIRECTORY_FILE);
- Cli_Error(" 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);
- }
- }
-
+ ink_strncpy(ts_path, Layout::get()->bindir, ts_path_len);
if ((err = stat(ts_path, &s)) < 0) {
Cli_Error("unable to stat() TS PATH '%s': %d %d, %s\n",
ts_path, err, errno, strerror(errno));
@@ -598,13 +570,13 @@ GetTSDirectory(char *ts_path, size_t ts_
int
StopTrafficServer()
{
- char ts_path[512];
+ char ts_path[PATH_NAME_MAX + 1];
char stop_ts[1024];
if (GetTSDirectory(ts_path,sizeof(ts_path))) {
return CLI_ERROR;
}
- snprintf(stop_ts, sizeof(stop_ts), "%s/bin/stop_traffic_server", ts_path);
+ snprintf(stop_ts, sizeof(stop_ts), "%s/stop_traffic_server", ts_path);
if (system(stop_ts) == -1)
return CLI_ERROR;
@@ -614,7 +586,7 @@ StopTrafficServer()
int
StartTrafficServer()
{
- char ts_path[512];
+ char ts_path[PATH_NAME_MAX + 1];
char start_ts[1024];
if (GetTSDirectory(ts_path,sizeof(ts_path))) {
@@ -622,9 +594,9 @@ StartTrafficServer()
}
// root user should start_traffic_shell as inktomi user
if (getuid() == 0) {
- snprintf(start_ts, sizeof(start_ts), "/bin/su - inktomi -c \"%s/bin/start_traffic_server\"", ts_path);
+ snprintf(start_ts, sizeof(start_ts), "/bin/su - inktomi -c \"%s/start_traffic_server\"", ts_path);
} else {
- snprintf(start_ts, sizeof(start_ts), "%s/bin/start_traffic_server", ts_path);
+ snprintf(start_ts, sizeof(start_ts), "%s/start_traffic_server", ts_path);
}
if (system(start_ts) == -1)
return CLI_ERROR;
Modified: trafficserver/traffic/trunk/proxy/mgmt2/cli2/CliMgmtUtils.h
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/cli2/CliMgmtUtils.h?rev=946150&r1=946149&r2=946150&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/cli2/CliMgmtUtils.h (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/cli2/CliMgmtUtils.h Wed May 19 12:26:02 2010
@@ -29,19 +29,12 @@
*
****************************************************************/
-#include "../api2/include/INKMgmtAPI.h"
+#include "INKMgmtAPI.h"
#define PATH_NAME_MAX 511 // instead of PATH_MAX which is inconsistent
// on various OSs (linux-4096,osx/bsd-1024,
// windows-260,etc)
-// 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 RECORD_GET 0
#define RECORD_SET 1
Modified: trafficserver/traffic/trunk/proxy/mgmt2/cli2/Makefile.am
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/cli2/Makefile.am?rev=946150&r1=946149&r2=946150&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/cli2/Makefile.am (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/cli2/Makefile.am Wed May 19 12:26:02 2010
@@ -25,10 +25,7 @@ AM_CPPFLAGS = \
-I$(top_srcdir)/proxy \
-I$(top_srcdir)/proxy/mgmt2/api2/include \
-I$(top_srcdir)/proxy/mgmt2/tools \
- $(iocore_include_dirs) \
- -DPREFIX=\"$(prefix)\" \
- -DPKGSYSCONFDIR=\"$(pkgsysconfdir)\" \
- -DPKGLOCALSTATEDIR=\"$(pkglocalstatedir)\"
+ $(iocore_include_dirs)
bin_PROGRAMS = traffic_shell
Modified: trafficserver/traffic/trunk/proxy/mgmt2/cli2/UtilCmds.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/cli2/UtilCmds.cc?rev=946150&r1=946149&r2=946150&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/cli2/UtilCmds.cc (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/cli2/UtilCmds.cc Wed May 19 12:26:02 2010
@@ -169,13 +169,14 @@ Cmd_ConfigRoot(ClientData clientData, Tc
return CLI_OK;
}
- char ts_path[256];
+ char ts_path[1024];
if (GetTSDirectory(ts_path,sizeof(ts_path))) {
return CLI_ERROR;
}
- char command[512];
- snprintf(command, sizeof(command), "/bin/su - root -c \"%s/bin/start_traffic_shell\"", ts_path);
+ char command[1024];
+ snprintf(command, sizeof(command),
+ "/bin/su - root -c \"%s/start_traffic_shell\"", ts_path);
// start traffic_shell as root user
// su will prompt user for root password
Modified: trafficserver/traffic/trunk/proxy/mgmt2/cli2/cliMain.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/mgmt2/cli2/cliMain.cc?rev=946150&r1=946149&r2=946150&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/mgmt2/cli2/cliMain.cc (original)
+++ trafficserver/traffic/trunk/proxy/mgmt2/cli2/cliMain.cc Wed May 19 12:26:02 2010
@@ -49,8 +49,6 @@ int version_flag = 0;
int
main(int argc, char *argv[])
{
- char root_path[PATH_NAME_MAX + 1];
- char runtime_path[PATH_NAME_MAX + 1];
INKError status;
// build the application information structure
@@ -82,25 +80,13 @@ main(int argc, char *argv[])
CliDisplayPrintf = 1;
// initialize MgmtAPI using TS runtime directory
- // TODO: This can be simplified
- if (GetTSDirectory(root_path, sizeof(root_path))) {
- status = INKInit(Layout::get()->runtimedir);
- if (status) {
- printf("INKInit %d: Failed to initialize MgmtAPI in %s\n",
- status, Layout::get()->runtimedir);
- } else {
- printf("Successfully Initialized MgmtAPI in %s \n",
- Layout::get()->runtimedir);
- }
+ status = INKInit(Layout::get()->runtimedir);
+ if (status) {
+ printf("INKInit %d: Failed to initialize MgmtAPI in %s\n",
+ status, Layout::get()->runtimedir);
} else {
- Layout::relative_to(runtime_path, sizeof(runtime_path),
- root_path, Layout::get()->runtimedir);
- // initialize MgmtAPI
- INKError status = INKInit(runtime_path);
- if (status) {
- printf("INKInit %d: Failed to initialize MgmtAPI in %s\n",
- status, runtime_path);
- }
+ printf("Successfully Initialized MgmtAPI in %s \n",
+ Layout::get()->runtimedir);
}
register_event_callback();