You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by ge...@apache.org on 2010/01/26 21:48:14 UTC

svn commit: r903409 - in /incubator/trafficserver/traffic/branches/dev: libinktomi++/ proxy/mgmt2/ proxy/mgmt2/api2/remote/ proxy/mgmt2/cli/ proxy/mgmt2/cluster/ proxy/mgmt2/cop/ proxy/mgmt2/utils/ proxy/mgmt2/web2/

Author: georgep
Date: Tue Jan 26 20:47:52 2010
New Revision: 903409

URL: http://svn.apache.org/viewvc?rev=903409&view=rev
Log:
TS-2: These fixes incorporates changes from Geoff Greer 4 patches. It also addresses issues in Traffic Cop, traffic_line and traffic_shell. It should be now possible to start Traffic Server via Traffic Cop and Traffic Manager. i.e. /usr/local/bin/traffic_cop.

Modified:
    incubator/trafficserver/traffic/branches/dev/libinktomi++/Makefile.am
    incubator/trafficserver/traffic/branches/dev/libinktomi++/test_freelist.cc
    incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/Alarms.cc
    incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/LocalManager.cc
    incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/Main.cc
    incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/ProcessManager.cc
    incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/api2/remote/NetworkUtilsRemote.cc
    incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cli/clientCLI.cc
    incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cluster/VMap.cc
    incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cop/TrafficCop.cc
    incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/utils/MgmtUtils.cc
    incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/web2/WebHttp.cc
    incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/web2/WebIntrMain.cc

Modified: incubator/trafficserver/traffic/branches/dev/libinktomi++/Makefile.am
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/libinktomi%2B%2B/Makefile.am?rev=903409&r1=903408&r2=903409&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/libinktomi++/Makefile.am (original)
+++ incubator/trafficserver/traffic/branches/dev/libinktomi++/Makefile.am Tue Jan 26 20:47:52 2010
@@ -148,15 +148,15 @@
 mkdfa_SOURCES = mkdfa.c
 
 test_atomic_SOURCES = test_atomic.cc
-test_atomic_LDADD = libinktomi++.a @LIBTHREAD@ @LIBTCL@
+test_atomic_LDADD = libinktomi++.a @LIBTHREAD@ @LIBTCL@ @LIBICONV@
 test_atomic_LDFLAGS = @EXTRA_CXX_LDFLAGS@
 
 test_freelist_SOURCES = test_freelist.cc
-test_freelist_LDADD = libinktomi++.a @LIBTHREAD@ @LIBTCL@
+test_freelist_LDADD = libinktomi++.a @LIBTHREAD@ @LIBTCL@ @LIBICONV@
 test_freelist_LDFLAGS = @EXTRA_CXX_LDFLAGS@
 
 test_arena_SOURCES = test_arena.cc
-test_arena_LDADD = libinktomi++.a @LIBTHREAD@ @LIBTCL@
+test_arena_LDADD = libinktomi++.a @LIBTHREAD@ @LIBTCL@ @LIBICONV@
 test_arena_LDFLAGS = @EXTRA_CXX_LDFLAGS@
 
 CompileParseRules_SOURCES = CompileParseRules.cc

Modified: incubator/trafficserver/traffic/branches/dev/libinktomi++/test_freelist.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/libinktomi%2B%2B/test_freelist.cc?rev=903409&r1=903408&r2=903409&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/libinktomi++/test_freelist.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/libinktomi++/test_freelist.cc Tue Jan 26 20:47:52 2010
@@ -74,7 +74,7 @@
 int
 main(int argc, char *argv[])
 {
-  int threads[NTHREADS];
+  ink_thread threads[NTHREADS];
   //void *status;
   int i;
 

Modified: incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/Alarms.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/Alarms.cc?rev=903409&r1=903408&r2=903409&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/Alarms.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/Alarms.cc Tue Jan 26 20:47:52 2010
@@ -635,13 +635,13 @@
   } else {
     int res;
     if (alarm_email_from_name && alarm_email_from_addr && alarm_email_to_addr) {
-#if (HOST_OS == freebsd) || (HOST_OS == solaris)
+#if (HOST_OS == freebsd) || (HOST_OS == solaris) || (HOST_OS == darwin)
       res = execl(cmd_line, alarm_bin, desc, alarm_email_from_name, alarm_email_from_addr, alarm_email_to_addr, (char *)0);
 #else
       res = execl(cmd_line, alarm_bin, desc, alarm_email_from_name, alarm_email_from_addr, alarm_email_to_addr, NULL);
 #endif
     } else {
-#if (HOST_OS == freebsd) || (HOST_OS == solaris)
+#if (HOST_OS == freebsd) || (HOST_OS == solaris) || (HOST_OS == darwin)
       res = execl(cmd_line, alarm_bin, desc, (char *)0);
 #else
       res = execl(cmd_line, alarm_bin, desc, NULL);

Modified: incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/LocalManager.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/LocalManager.cc?rev=903409&r1=903408&r2=903409&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/LocalManager.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/LocalManager.cc Tue Jan 26 20:47:52 2010
@@ -506,8 +506,11 @@
   memset(&serv_addr, 0, sizeof(serv_addr));
   serv_addr.sun_family = AF_UNIX;
   ink_strncpy(serv_addr.sun_path, fpath, sizeof(serv_addr.sun_path));
+#if (HOST_OS == darwin)
+  servlen = sizeof(struct sockaddr_un);
+#else
   servlen = strlen(serv_addr.sun_path) + sizeof(serv_addr.sun_family);
-
+#endif
   if (setsockopt(process_server_sockfd, SOL_SOCKET, SO_REUSEADDR, (char *) &one, sizeof(int)) < 0) {
     mgmt_fatal(stderr, "[LocalManager::initMgmtProcessServer] Unable to set socket options.\n");
   }
@@ -1147,7 +1150,7 @@
           Debug("lm-filter", "[LocalManager::startProxy] " "%s execution completed\n", absolute_convert_binary);
         }
       } else {                  // invoke the converter script - no args
-#if (HOST_OS == freebsd) || (HOST_OS == solaris)
+#if (HOST_OS == freebsd) || (HOST_OS == solaris) || (HOST_OS == darwin)
         int res = execl(absolute_convert_binary, convert_bin, NULL, (char *)0);
 #else
         int res = execl(absolute_convert_binary, convert_bin, NULL, NULL);
@@ -1216,7 +1219,7 @@
       char env_prep_bin[1024];
 
       snprintf(env_prep_bin, sizeof(env_prep_bin), "%s/%s", bin_path, env_prep);
-#if (HOST_OS == freebsd) || (HOST_OS == solaris)
+#if (HOST_OS == freebsd) || (HOST_OS == solaris) || (HOST_OS == darwin)
       res = execl(env_prep_bin, env_prep, (char *)0);
 #else
       res = execl(env_prep_bin, env_prep, NULL);

Modified: incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/Main.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/Main.cc?rev=903409&r1=903408&r2=903409&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/Main.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/Main.cc Tue Jan 26 20:47:52 2010
@@ -125,7 +125,7 @@
 char *recs_conf = "records.config";
 
 typedef void (*PFV) (int);
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
 void SignalHandler(int sig, siginfo_t * t, void *f);
 void SignalAlrmHandler(int sig, siginfo_t * t, void *f);
 #else
@@ -208,7 +208,7 @@
   sigset_t sigsToBlock;
 
   // Set up the signal handler
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
   sigHandler.sa_handler = NULL;
   sigHandler.sa_sigaction = SignalHandler;
 #else
@@ -228,7 +228,7 @@
   // Don't block the signal on entry to the signal
   //   handler so we can reissue it and get a core
   //   file in the appropriate circumstances
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
   sigHandler.sa_flags = SA_RESETHAND | SA_SIGINFO;
 #else
   sigHandler.sa_flags = SA_RESETHAND;
@@ -240,7 +240,7 @@
   sigaction(SIGSEGV, &sigHandler, NULL);
   sigaction(SIGTERM, &sigHandler, NULL);
 
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
   sigAlrmHandler.sa_handler = NULL;
   sigAlrmHandler.sa_sigaction = SignalAlrmHandler;
 #else
@@ -248,7 +248,7 @@
 #endif
 
   sigemptyset(&sigAlrmHandler.sa_mask);
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
   sigAlrmHandler.sa_flags = SA_SIGINFO;
 #else
   sigAlrmHandler.sa_flags = 0;
@@ -1034,7 +1034,7 @@
 
 
 #ifndef _WIN32
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
 void
 SignalAlrmHandler(int sig, siginfo_t * t, void *c)
 #else
@@ -1046,7 +1046,7 @@
      fprintf(stderr,"[TrafficManager] ==> SIGALRM received\n");
      mgmt_elog(stderr,"[TrafficManager] ==> SIGALRM received\n");
    */
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
   if (t) {
     if (t->si_code <= 0) {
 #if (HOST_OS == solaris)
@@ -1066,7 +1066,7 @@
 }
 
 
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
 void
 SignalHandler(int sig, siginfo_t * t, void *c)
 #else
@@ -1077,7 +1077,7 @@
   static int clean = 0;
   int status;
 
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
   if (t) {
     if (t->si_code <= 0) {
 #if (HOST_OS == solaris)

Modified: incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/ProcessManager.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/ProcessManager.cc?rev=903409&r1=903408&r2=903409&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/ProcessManager.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/ProcessManager.cc Tue Jan 26 20:47:52 2010
@@ -231,8 +231,11 @@
 
   snprintf(message, sizeof(message), "%s/%s", pserver_path, LM_CONNECTION_SERVER);
   ink_strncpy(serv_addr.sun_path, message, sizeof(serv_addr.sun_path));
+#if (HOST_OS == darwin)
+  servlen = sizeof(sockaddr_un);
+#else
   servlen = strlen(serv_addr.sun_path) + sizeof(serv_addr.sun_family);
-
+#endif
   if ((local_manager_sockfd = socket(AF_UNIX, SOCK_STREAM, 0)) < 0) {
     mgmt_fatal(stderr, "[ProcessManager::initLMConnection] Unable to create socket\n");
   }

Modified: incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/api2/remote/NetworkUtilsRemote.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/api2/remote/NetworkUtilsRemote.cc?rev=903409&r1=903408&r2=903409&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/api2/remote/NetworkUtilsRemote.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/api2/remote/NetworkUtilsRemote.cc Tue Jan 26 20:47:52 2010
@@ -161,8 +161,11 @@
   memset(&client_sock, 0, sizeof(sockaddr_un));
   client_sock.sun_family = AF_UNIX;
   strncpy(client_sock.sun_path, main_socket_path, sizeof(client_sock.sun_path));
+#if (HOST_OS == darwin)
+  sockaddr_len = sizeof(sockaddr_un);
+#else
   sockaddr_len = sizeof(client_sock.sun_family) + strlen(client_sock.sun_path);
-
+#endif
   // connect call
   if (connect(main_socket_fd, (struct sockaddr *) &client_sock, sockaddr_len) < 0) {
     //fprintf(stderr, "[connect] ERROR (main_socket_fd %d): %s\n", main_socket_fd, strerror(int(errno)));
@@ -183,8 +186,11 @@
   memset(&client_event_sock, 0, sizeof(sockaddr_un));
   client_event_sock.sun_family = AF_UNIX;
   strncpy(client_event_sock.sun_path, event_socket_path, sizeof(client_sock.sun_path));
+#if (HOST_OS == darwin)
+  sockaddr_len = sizeof(sockaddr_un);
+#else
   sockaddr_len = sizeof(client_event_sock.sun_family) + strlen(client_event_sock.sun_path);
-
+#endif
   // connect call
   if (connect(event_socket_fd, (struct sockaddr *) &client_event_sock, sockaddr_len) < 0) {
     //fprintf(stderr, "[connect] ERROR (event_socket_fd %d): %s\n", event_socket_fd, strerror(int(errno)));

Modified: incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cli/clientCLI.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cli/clientCLI.cc?rev=903409&r1=903408&r2=903409&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cli/clientCLI.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cli/clientCLI.cc Tue Jan 26 20:47:52 2010
@@ -162,8 +162,11 @@
   memset(&clientS, 0, sizeof(sockaddr_un));
   clientS.sun_family = AF_UNIX; // UNIX domain socket
   ink_strncpy(clientS.sun_path, sockPath, sizeof(clientS.sun_path));
+#if (HOST_OS == darwin)
+  sockaddrLen = sizeof(sockaddr_un);
+#else
   sockaddrLen = sizeof(clientS.sun_family) + strlen(clientS.sun_path);;
-
+#endif
   // make socket non-blocking
   if (safe_nonblocking(socketFD) < 0) {
     fprintf(stderr, "Unable to set non-blocking flags on socket : %s\n", strerror(errno));

Modified: incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cluster/VMap.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cluster/VMap.cc?rev=903409&r1=903408&r2=903409&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cluster/VMap.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cluster/VMap.cc Tue Jan 26 20:47:52 2010
@@ -241,7 +241,7 @@
           }
         }
       }
-#if (HOST_OS == freebsd)
+#if (HOST_OS == freebsd) || (HOST_OS == darwin)
       ifr = (struct ifreq *) ((char *) &ifr->ifr_addr + ifr->ifr_addr.sa_len);
 #else
       ifr = (struct ifreq *) (((char *) ifr) + sizeof(*ifr));
@@ -1093,7 +1093,7 @@
 
 #if (HOST_OS == linux)
     res = execl(absolute_vipconf_binary, vip_conf, "up", virt_ip, "/sbin/ifconfig", interface, sub_id, NULL);
-#elif (HOST_OS == freebsd) || (HOST_OS == solaris)
+#elif (HOST_OS == freebsd) || (HOST_OS == solaris) || (HOST_OS == darwin)
     res = execl(absolute_vipconf_binary, vip_conf, "up", virt_ip, "/sbin/ifconfig", interface, sub_id, (char *)0);
 #else
     res = execl(absolute_vipconf_binary, vip_conf, "up", virt_ip, "/usr/sbin/ifconfig", interface, sub_id, NULL);
@@ -1151,7 +1151,7 @@
 
 #if (HOST_OS == linux)
     res = execl(absolute_vipconf_binary, vip_conf, "down", virt_ip, "/sbin/ifconfig", interface, sub_id, NULL);
-#elif (HOST_OS == freebsd) || (HOST_OS == solaris)
+#elif (HOST_OS == freebsd) || (HOST_OS == solaris) || (HOST_OS == darwin)
     res = execl(absolute_vipconf_binary, vip_conf, "down", virt_ip, "/sbin/ifconfig", interface, sub_id, (char *)0);
 #else
     res = execl(absolute_vipconf_binary, vip_conf, "down", virt_ip, "/usr/sbin/ifconfig", interface, sub_id, NULL);

Modified: incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cop/TrafficCop.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cop/TrafficCop.cc?rev=903409&r1=903408&r2=903409&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cop/TrafficCop.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/cop/TrafficCop.cc Tue Jan 26 20:47:52 2010
@@ -236,7 +236,7 @@
 }
 
 static void
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
 sig_fatal(int signum, siginfo_t * t, void *c)
 #else
 sig_fatal(int signum)
@@ -245,7 +245,7 @@
 #ifdef TRACE_LOG_COP
   cop_log(COP_DEBUG, "Entering sig_fatal(%d)\n", signum);
 #endif
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
   if (t) {
     if (t->si_code <= 0) {
       cop_log(COP_FATAL, "cop received fatal user signal [%d] from"
@@ -256,7 +256,7 @@
   } else {
 #endif
     cop_log(COP_FATAL, "cop received fatal signal [%d]\n", signum);
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
   }
 #endif
 #ifdef TRACE_LOG_COP
@@ -266,7 +266,7 @@
 }
 
 static void
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
 sig_alarm_warn(int signum, siginfo_t * t, void *c)
 #else
 sig_alarm_warn(int signum)
@@ -304,7 +304,7 @@
 #ifdef TRACE_LOG_COP
   cop_log(COP_DEBUG, "Entering set_alarm_death()\n");
 #endif
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
   action.sa_handler = NULL;
   action.sa_sigaction = sig_fatal;
   sigemptyset(&action.sa_mask);
@@ -329,7 +329,7 @@
 #ifdef TRACE_LOG_COP
   cop_log(COP_DEBUG, "Entering set_alarm_warn()\n");
 #endif
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
   action.sa_handler = NULL;
   action.sa_sigaction = sig_alarm_warn;
   sigemptyset(&action.sa_mask);
@@ -455,7 +455,7 @@
 #ifdef ENOBUFS
   case ENOBUFS:
 #endif
-#if (HOST_OS != freebsd)
+#if (HOST_OS != freebsd) && (HOST_OS != darwin)
   case ENOSR:
 #endif
     if (wait_ms)
@@ -856,7 +856,7 @@
     if (err < 0) {
       break;
     }
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
     err = semctl(err, 1, IPC_RMID);
 #else
     union semun dummy_semun;
@@ -2156,14 +2156,14 @@
   // these signals arrive in order to generate a core. There is some
   // difficulty with generating core files when linking with libthread
   // under solaris.
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
   action.sa_handler = NULL;
   action.sa_sigaction = sig_fatal;
 #else
   action.sa_handler = sig_fatal;
 #endif
   sigemptyset(&action.sa_mask);
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
   action.sa_flags = SA_SIGINFO;
 #else
   action.sa_flags = 0;

Modified: incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/utils/MgmtUtils.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/utils/MgmtUtils.cc?rev=903409&r1=903408&r2=903409&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/utils/MgmtUtils.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/utils/MgmtUtils.cc Tue Jan 26 20:47:52 2010
@@ -662,7 +662,7 @@
         }
       }
     }
-#if (HOST_OS == freebsd)
+#if (HOST_OS == freebsd) || (HOST_OS == darwin)
     ifr = (struct ifreq *) ((char *) &ifr->ifr_addr + ifr->ifr_addr.sa_len);
 #else
     ifr = (struct ifreq *) (((char *) ifr) + sizeof(*ifr));

Modified: incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/web2/WebHttp.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/web2/WebHttp.cc?rev=903409&r1=903408&r2=903409&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/web2/WebHttp.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/web2/WebHttp.cc Tue Jan 26 20:47:52 2010
@@ -6614,7 +6614,7 @@
 #if !defined(_WIN32)
   sigset_t sigsToBlock;
   // FreeBSD and Linux use SIGUSR1 internally in the threads library
-#if (HOST_OS != linux) && (HOST_OS != freebsd)
+#if (HOST_OS != linux) && (HOST_OS != freebsd) && (HOST_OS != darwin)
   // Set up the handler for SIGUSR1
   struct sigaction sigHandler;
   sigHandler.sa_handler = signal_handler_do_nothing;

Modified: incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/web2/WebIntrMain.cc
URL: http://svn.apache.org/viewvc/incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/web2/WebIntrMain.cc?rev=903409&r1=903408&r2=903409&view=diff
==============================================================================
--- incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/web2/WebIntrMain.cc (original)
+++ incubator/trafficserver/traffic/branches/dev/proxy/mgmt2/web2/WebIntrMain.cc Tue Jan 26 20:47:52 2010
@@ -376,8 +376,11 @@
 
   serv_addr.sun_family = AF_UNIX;
   ink_strncpy(serv_addr.sun_path, fpath, sizeof(serv_addr.sun_path));
+#if (HOST_OS == darwin)
+  servlen = sizeof(struct sockaddr_un);
+#else
   servlen = strlen(serv_addr.sun_path) + sizeof(serv_addr.sun_family);
-
+#endif
   if (setsockopt(socketFD, SOL_SOCKET, SO_REUSEADDR, (char *) &one, sizeof(int)) < 0) {
     mgmt_log(stderr, "[newUNIXsocket] Unable to set socket options: %s\n", strerror(errno));
   }
@@ -531,7 +534,7 @@
           // socket will give up
           shutdown(wGlobals.serviceThrArray[i].fd, 0);
 
-#if (HOST_OS != freebsd)
+#if (HOST_OS != freebsd) && (HOST_OS != darwin)
           ink_thread_cancel(wGlobals.serviceThrArray[i].threadId);
 #endif
 #if (HOST_OS == darwin)
@@ -638,7 +641,7 @@
   qnum++;
   snprintf(sname,NAME_MAX,"%s%d","WebInterfaceMutex",qnum);
   ink_sem_unlink(sname); // FIXME: remove, semaphore should be properly deleted after usage
-  wGlobals.serviceThrCount = ink_sem_open(sname, O_CREAT | O_EXCL, 0777, 0);
+  wGlobals.serviceThrCount = ink_sem_open(sname, O_CREAT | O_EXCL, 0777, MAX_SERVICE_THREADS);
 #else /* !darwin */
   ink_sem_init(&wGlobals.serviceThrCount, MAX_SERVICE_THREADS);
 #endif /* !darwin */