[debugger] Added all the zx_status_t names.

TEST=No functional change.

Change-Id: Iea11a74c777b39007507e16aafb0292b5c29dac6
diff --git a/garnet/bin/zxdb/client/job_context_impl.cc b/garnet/bin/zxdb/client/job_context_impl.cc
index 2c84bff..d026597 100644
--- a/garnet/bin/zxdb/client/job_context_impl.cc
+++ b/garnet/bin/zxdb/client/job_context_impl.cc
@@ -173,7 +173,7 @@
                    const Err& err, debug_ipc::JobFilterReply reply) {
         if (reply.status != 0) {
           printf("Error adding filter, error: %s.",
-                 debug_ipc::ZxStatusToString(reply.status).data());
+                 debug_ipc::ZxStatusToString(reply.status));
           if (weak_job_context) {
             // Agent failed, reset filters in settings.
             // This will also trigger another callback but would be a no-op
diff --git a/garnet/bin/zxdb/client/target_impl.cc b/garnet/bin/zxdb/client/target_impl.cc
index 019fefd..624f5cf 100644
--- a/garnet/bin/zxdb/client/target_impl.cc
+++ b/garnet/bin/zxdb/client/target_impl.cc
@@ -233,11 +233,11 @@
     state_ = State::kNone;
     if (status == debug_ipc::kZxErrIO) {
       issue_err = Err("Error launching: Binary not found [%s]",
-                      debug_ipc::ZxStatusToString(status).data());
+                      debug_ipc::ZxStatusToString(status));
     } else {
       issue_err =
           Err(fxl::StringPrintf("Error launching, status = %s.",
-                                debug_ipc::ZxStatusToString(status).data()));
+                                debug_ipc::ZxStatusToString(status)));
     }
   } else {
     Process::StartType start_type = state_ == State::kAttaching
diff --git a/garnet/bin/zxdb/client/thread_impl.cc b/garnet/bin/zxdb/client/thread_impl.cc
index 5f58cb1..7858a063 100644
--- a/garnet/bin/zxdb/client/thread_impl.cc
+++ b/garnet/bin/zxdb/client/thread_impl.cc
@@ -160,8 +160,7 @@
       cb(Err("Could not set thread instruction pointer. Error %" PRIu64
              " (%s).",
              reply.status,
-             debug_ipc::ZxStatusToString(static_cast<uint32_t>(reply.status))
-                 .c_str()));
+             debug_ipc::ZxStatusToString(static_cast<uint32_t>(reply.status))));
     } else if (!thread) {
       cb(Err("Thread destroyed."));
     } else {
diff --git a/garnet/lib/debug_ipc/helper/zx_status.cc b/garnet/lib/debug_ipc/helper/zx_status.cc
index 5344ab5..7d61f49 100644
--- a/garnet/lib/debug_ipc/helper/zx_status.cc
+++ b/garnet/lib/debug_ipc/helper/zx_status.cc
@@ -9,36 +9,106 @@
 
 namespace debug_ipc {
 
-std::string ZxStatusToString(uint32_t status) {
-  const char* status_name = nullptr;
+const char* ZxStatusToString(uint32_t status) {
   switch (status) {
     case kZxOK:
-      status_name = "ZX_OK";
-      break;
+      return "ZX_OK";
     case kZxErrInternal:
-      status_name = "ZX_ERR_INTERNAL";
-      break;
+      return "ZX_ERR_INTERNAL";
     case kZxErrNotSupported:
-      status_name = "ZX_ERR_NOT_SUPPORTED";
-      break;
-    case kZxErrInvalidArgs:
-      status_name = "ZX_ERR_INVALID_ARGS";
-      break;
+      return "ZX_ERR_NOT_SUPPORTED";
     case kZxErrNoResources:
-      status_name = "ZX_ERR_NO_RESOURCES";
-      break;
+      return "ZX_ERR_NO_RESOURCES";
+    case kZxErrNoMemory:
+      return "ZX_ERR_NO_MEMORY";
+    case kZxErrInternalIntrRetry:
+      return "ZX_ERR_INTERNAL_INTR_RETRY";
+    case kZxErrInvalidArgs:
+      return "ZX_ERR_INVALID_ARGS";
+    case kZxErrBadHandle:
+      return "ZX_ERR_BAD_HANDLE";
+    case kZxErrWrongType:
+      return "ZX_ERR_WRONG_TYPE";
+    case kZxErrBadSyscall:
+      return "ZX_ERR_BAD_SYSCALL";
     case kZxErrOutOfRange:
-      status_name = "ZX_ERR_OUT_OF_RANGE";
-      break;
+      return "ZX_ERR_OUT_OF_RANGE";
+    case kZxErrBufferTooSmall:
+      return "ZX_ERR_BUFFER_TOO_SMALL";
+    case kZxErrBadState:
+      return "ZX_ERR_BAD_STATE";
+    case kZxErrTimedOut:
+      return "ZX_ERR_TIMED_OUT";
+    case kZxErrShouldWait:
+      return "ZX_ERR_SHOULD_WAIT";
+    case kZxErrCanceled:
+      return "ZX_ERR_CANCELED";
+    case kZxErrPeerClosed:
+      return "ZX_ERR_PEER_CLOSED";
+    case kZxErrNotFound:
+      return "ZX_ERR_NOT_FOUND";
+    case kZxErrAlreadyExists:
+      return "ZX_ERR_ALREADY_EXISTS";
+    case kZxErrAlreadyBound:
+      return "ZX_ERR_ALREADY_BOUND";
+    case kZxErrUnavailable:
+      return "ZX_ERR_UNAVAILABLE";
+    case kZxErrAccessDenied:
+      return "ZX_ERR_ACCESS_DENIED";
     case kZxErrIO:
-      status_name = "ZX_ERR_IO";
-      break;
+      return "ZX_ERR_IO";
+    case kZxErrIoRefused:
+      return "ZX_ERR_REFUSED";
+    case kZxErrIoDataIntegrity:
+      return "ZX_ERR_IO_DATA_INTEGRITY";
+    case kZxErrIoDataLoss:
+      return "ZX_ERR_IO_DATA_LOSS";
+    case kZxErrIoNotPresent:
+      return "ZX_ERR_IO_NOT_PRESENT";
+    case kZxErrIoOverrun:
+      return "ZX_ERR_IO_OVERRUN";
+    case kZxErrIoMissedDeadline:
+      return "ZX_ERR_IO_MISSED_DEADLINE";
+    case kZxErrIoInvalid:
+      return "ZX_ERR_IO_INVALID";
+    case kZxErrBadPath:
+      return "ZX_ERR_BAD_PATH";
+    case kZxErrNotDir:
+      return "ZX_ERR_NOT_DIR";
+    case kZxErrNotFile:
+      return "ZX_ERR_NOT_FILE";
+    case kZxErrFileBig:
+      return "ZX_ERR_FILE_BIG";
+    case kZxErrNoSpace:
+      return "ZX_ERR_NO_SPACE";
+    case kZxErrNotEmpty:
+      return "ZX_ERR_NOT_EMPTY";
+    case kZxErrStop:
+      return "ZX_ERR_STOP";
+    case kZxErrNext:
+      return "ZX_ERR_NEXT";
+    case kZxErrAsync:
+      return "ZX_ERR_ASYNC";
+    case kZxErrProtocolNotSupported:
+      return "ZX_ERR_PROTOCOL_NOT_SUPPORTED";
+    case kZxErrAddressUnreachable:
+      return "ZX_ERR_ADDRESS_UNREACHABLE";
+    case kZxErrAddressInUse:
+      return "ZX_ERR_ADDRESS_IN_USE";
+    case kZxErrNotConnected:
+      return "ZX_ERR_NOT_CONNECTED";
+    case kZxErrConnectionRefused:
+      return "ZX_ERR_CONNECTION_REFUSED";
+    case kZxErrConnectionReset:
+      return "ZX_ERR_CONNECTION_RESET";
+    case kZxErrConnectionAborted:
+      return "ZX_ERR_CONNECTION_ABORTED";
     default:
-      status_name = "<unsupported status>";
       break;
   }
-  FXL_DCHECK(status_name);
-  return fxl::StringPrintf("%s (%d)", status_name, status);
+
+  FXL_NOTREACHED();
+  return nullptr;
 }
 
 }  // namespace debug_ipc
diff --git a/garnet/lib/debug_ipc/helper/zx_status.h b/garnet/lib/debug_ipc/helper/zx_status.h
index a9a33a3..9ea5e65 100644
--- a/garnet/lib/debug_ipc/helper/zx_status.h
+++ b/garnet/lib/debug_ipc/helper/zx_status.h
@@ -6,13 +6,11 @@
 
 #include <stdint.h>
 
-#include <string>
-
 #include "garnet/lib/debug_ipc/helper/zx_status_definitions.h"
 
 namespace debug_ipc {
 
-std::string ZxStatusToString(uint32_t status);
+const char* ZxStatusToString(uint32_t status);
 
 }  // namespace debug_ipc