gdb: convert callback_handler_installed from int to bool
[binutils-gdb.git] / gdb / darwin-nat-info.c
index 4469cd52136f3c11cb94efba50e390b273cdfc20..8d00d6618ca052f5a181ae2ef386957a9e7d3b13 100644 (file)
@@ -1,5 +1,5 @@
 /* Darwin support for GDB, the GNU debugger.
-   Copyright (C) 1997-2019 Free Software Foundation, Inc.
+   Copyright (C) 1997-2022 Free Software Foundation, Inc.
 
    Contributed by Apple Computer, Inc.
 
 } while (0)
 
 #define PRINT_FIELD(structure, field) \
-  printf_unfiltered(_(#field":\t%#lx\n"), (unsigned long) (structure)->field)
+  printf_filtered(_(#field":\t%#lx\n"), (unsigned long) (structure)->field)
 
 #define PRINT_TV_FIELD(structure, field) \
-  printf_unfiltered(_(#field":\t%u.%06u sec\n"),       \
+  printf_filtered(_(#field":\t%u.%06u sec\n"), \
   (unsigned) (structure)->field.seconds, \
   (unsigned) (structure)->field.microseconds)
 
@@ -83,27 +83,27 @@ info_mach_tasks_command (const char *args, int from_tty)
   sysctl (sysControl, 3, procInfo, &length, NULL, 0);
 
   count = (length / sizeof (struct kinfo_proc));
-  printf_unfiltered (_("%d processes:\n"), count);
+  printf_filtered (_("%d processes:\n"), count);
   for (index = 0; index < count; ++index)
     {
       kern_return_t result;
       mach_port_t taskPort;
 
       result =
-        task_by_unix_pid (mach_task_self (), procInfo[index].kp_proc.p_pid,
-                          &taskPort);
+       task_by_unix_pid (mach_task_self (), procInfo[index].kp_proc.p_pid,
+                         &taskPort);
       if (KERN_SUCCESS == result)
-        {
-          printf_unfiltered (_("    %s is %d has task %#x\n"),
-                             procInfo[index].kp_proc.p_comm,
-                             procInfo[index].kp_proc.p_pid, taskPort);
-        }
+       {
+         printf_filtered (_("    %s is %d has task %#x\n"),
+                          procInfo[index].kp_proc.p_comm,
+                          procInfo[index].kp_proc.p_pid, taskPort);
+       }
       else
-        {
-          printf_unfiltered (_("    %s is %d unknown task port\n"),
-                             procInfo[index].kp_proc.p_comm,
-                             procInfo[index].kp_proc.p_pid);
-        }
+       {
+         printf_filtered (_("    %s is %d unknown task port\n"),
+                          procInfo[index].kp_proc.p_comm,
+                          procInfo[index].kp_proc.p_pid);
+       }
     }
 
   xfree (procInfo);
@@ -118,7 +118,7 @@ get_task_from_args (const char *args)
   if (args == NULL || *args == 0)
     {
       if (inferior_ptid == null_ptid)
-       printf_unfiltered (_("No inferior running\n"));
+       printf_filtered (_("No inferior running\n"));
 
       darwin_inferior *priv = get_darwin_inferior (current_inferior ());
 
@@ -129,7 +129,7 @@ get_task_from_args (const char *args)
   task = strtoul (args, &eptr, 0);
   if (*eptr)
     {
-      printf_unfiltered (_("cannot parse task id '%s'\n"), args);
+      printf_filtered (_("cannot parse task id '%s'\n"), args);
       return TASK_NULL;
     }
   return task;
@@ -153,11 +153,11 @@ info_mach_task_command (const char *args, int from_tty)
   if (task == TASK_NULL)
     return;
 
-  printf_unfiltered (_("TASK_BASIC_INFO for 0x%x:\n"), task);
+  printf_filtered (_("TASK_BASIC_INFO for 0x%x:\n"), task);
   info_count = TASK_BASIC_INFO_COUNT;
   result = task_info (task,
-                      TASK_BASIC_INFO,
-                      (task_info_t) & task_info_data.basic, &info_count);
+                     TASK_BASIC_INFO,
+                     (task_info_t) & task_info_data.basic, &info_count);
   MACH_CHECK_ERROR (result);
 
   PRINT_FIELD (&task_info_data.basic, suspend_count);
@@ -165,11 +165,11 @@ info_mach_task_command (const char *args, int from_tty)
   PRINT_FIELD (&task_info_data.basic, resident_size);
   PRINT_TV_FIELD (&task_info_data.basic, user_time);
   PRINT_TV_FIELD (&task_info_data.basic, system_time);
-  printf_unfiltered (_("\nTASK_EVENTS_INFO:\n"));
+  printf_filtered (_("\nTASK_EVENTS_INFO:\n"));
   info_count = TASK_EVENTS_INFO_COUNT;
   result = task_info (task,
-                      TASK_EVENTS_INFO,
-                      (task_info_t) & task_info_data.events, &info_count);
+                     TASK_EVENTS_INFO,
+                     (task_info_t) & task_info_data.events, &info_count);
   MACH_CHECK_ERROR (result);
 
   PRINT_FIELD (&task_info_data.events, faults);
@@ -181,12 +181,12 @@ info_mach_task_command (const char *args, int from_tty)
   PRINT_FIELD (&task_info_data.events, cow_faults);
   PRINT_FIELD (&task_info_data.events, messages_sent);
   PRINT_FIELD (&task_info_data.events, messages_received);
-  printf_unfiltered (_("\nTASK_THREAD_TIMES_INFO:\n"));
+  printf_filtered (_("\nTASK_THREAD_TIMES_INFO:\n"));
   info_count = TASK_THREAD_TIMES_INFO_COUNT;
   result = task_info (task,
-                      TASK_THREAD_TIMES_INFO,
-                      (task_info_t) & task_info_data.thread_times,
-                      &info_count);
+                     TASK_THREAD_TIMES_INFO,
+                     (task_info_t) & task_info_data.thread_times,
+                     &info_count);
   MACH_CHECK_ERROR (result);
   PRINT_TV_FIELD (&task_info_data.thread_times, user_time);
   PRINT_TV_FIELD (&task_info_data.thread_times, system_time);
@@ -211,8 +211,8 @@ info_mach_ports_command (const char *args, int from_tty)
 
   gdb_assert (name_count == type_count);
 
-  printf_unfiltered (_("Ports for task 0x%x:\n"), task);
-  printf_unfiltered (_("port   type\n"));
+  printf_filtered (_("Ports for task 0x%x:\n"), task);
+  printf_filtered (_("port   type\n"));
   for (index = 0; index < name_count; ++index)
     {
       mach_port_t port = names[index];
@@ -232,47 +232,47 @@ info_mach_ports_command (const char *args, int from_tty)
          {MACH_PORT_TYPE_DEAD_NAME, "dead", MACH_PORT_RIGHT_DEAD_NAME}
        };
 
-      printf_unfiltered (_("%04x: %08x "), port, types[index]);
+      printf_filtered (_("%04x: %08x "), port, types[index]);
       for (j = 0; j < sizeof(descrs) / sizeof(*descrs); j++)
        if (types[index] & descrs[j].type)
          {
            mach_port_urefs_t ref;
            kern_return_t ret;
 
-           printf_unfiltered (_(" %s("), descrs[j].name);
+           printf_filtered (_(" %s("), descrs[j].name);
            ret = mach_port_get_refs (task, port, descrs[j].right, &ref);
            if (ret != KERN_SUCCESS)
-             printf_unfiltered (_("??"));
+             printf_filtered (_("??"));
            else
-             printf_unfiltered (_("%u"), ref);
-           printf_unfiltered (_(" refs)"));
+             printf_filtered (_("%u"), ref);
+           printf_filtered (_(" refs)"));
          }
       
       if (task == task_self ())
        {
          if (port == task_self())
-           printf_unfiltered (_(" gdb-task"));
+           printf_filtered (_(" gdb-task"));
          else if (port == darwin_host_self)
-           printf_unfiltered (_(" host-self"));
+           printf_filtered (_(" host-self"));
          else if (port == darwin_ex_port)
-           printf_unfiltered (_(" gdb-exception"));
+           printf_filtered (_(" gdb-exception"));
          else if (port == darwin_port_set)
-           printf_unfiltered (_(" gdb-port_set"));
+           printf_filtered (_(" gdb-port_set"));
          else if (inferior_ptid != null_ptid)
            {
              struct inferior *inf = current_inferior ();
              darwin_inferior *priv = get_darwin_inferior (inf);
 
              if (port == priv->task)
-               printf_unfiltered (_(" inferior-task"));
+               printf_filtered (_(" inferior-task"));
              else if (port == priv->notify_port)
-               printf_unfiltered (_(" inferior-notify"));
+               printf_filtered (_(" inferior-notify"));
              else
                {
                  for (int k = 0; k < priv->exception_info.count; k++)
                    if (port == priv->exception_info.ports[k])
                      {
-                       printf_unfiltered (_(" inferior-excp-port"));
+                       printf_filtered (_(" inferior-excp-port"));
                        break;
                      }
 
@@ -280,8 +280,8 @@ info_mach_ports_command (const char *args, int from_tty)
                    {
                      if (port == t->gdb_port)
                        {
-                         printf_unfiltered (_(" inferior-thread for 0x%x"),
-                                            priv->task);
+                         printf_filtered (_(" inferior-thread for 0x%x"),
+                                          priv->task);
                          break;
                        }
                    }
@@ -289,13 +289,13 @@ info_mach_ports_command (const char *args, int from_tty)
                }
            }
        }
-      printf_unfiltered (_("\n"));
+      printf_filtered (_("\n"));
     }
 
   vm_deallocate (task_self (), (vm_address_t) names,
-                 (name_count * sizeof (mach_port_t)));
+                (name_count * sizeof (mach_port_t)));
   vm_deallocate (task_self (), (vm_address_t) types,
-                 (type_count * sizeof (mach_port_type_t)));
+                (type_count * sizeof (mach_port_type_t)));
 }
 
 
@@ -310,18 +310,18 @@ darwin_debug_port_info (task_t task, mach_port_t port)
     (task, port, MACH_PORT_RECEIVE_STATUS, (mach_port_info_t)&status, &len);
   MACH_CHECK_ERROR (kret);
 
-  printf_unfiltered (_("Port 0x%lx in task 0x%lx:\n"), (unsigned long) port,
-                     (unsigned long) task);
-  printf_unfiltered (_("  port set: 0x%x\n"), status.mps_pset);
-  printf_unfiltered (_("     seqno: 0x%x\n"), status.mps_seqno);
-  printf_unfiltered (_("   mscount: 0x%x\n"), status.mps_mscount);
-  printf_unfiltered (_("    qlimit: 0x%x\n"), status.mps_qlimit);
-  printf_unfiltered (_("  msgcount: 0x%x\n"), status.mps_msgcount);
-  printf_unfiltered (_("  sorights: 0x%x\n"), status.mps_sorights);
-  printf_unfiltered (_("   srights: 0x%x\n"), status.mps_srights);
-  printf_unfiltered (_(" pdrequest: 0x%x\n"), status.mps_pdrequest);
-  printf_unfiltered (_(" nsrequest: 0x%x\n"), status.mps_nsrequest);
-  printf_unfiltered (_("     flags: 0x%x\n"), status.mps_flags);
+  printf_filtered (_("Port 0x%lx in task 0x%lx:\n"), (unsigned long) port,
+                  (unsigned long) task);
+  printf_filtered (_("  port set: 0x%x\n"), status.mps_pset);
+  printf_filtered (_("     seqno: 0x%x\n"), status.mps_seqno);
+  printf_filtered (_("   mscount: 0x%x\n"), status.mps_mscount);
+  printf_filtered (_("    qlimit: 0x%x\n"), status.mps_qlimit);
+  printf_filtered (_("  msgcount: 0x%x\n"), status.mps_msgcount);
+  printf_filtered (_("  sorights: 0x%x\n"), status.mps_sorights);
+  printf_filtered (_("   srights: 0x%x\n"), status.mps_srights);
+  printf_filtered (_(" pdrequest: 0x%x\n"), status.mps_pdrequest);
+  printf_filtered (_(" nsrequest: 0x%x\n"), status.mps_nsrequest);
+  printf_filtered (_("     flags: 0x%x\n"), status.mps_flags);
 }
 
 static void
@@ -352,15 +352,15 @@ info_mach_threads_command (const char *args, int from_tty)
   result = task_threads (task, &threads, &thread_count);
   MACH_CHECK_ERROR (result);
 
-  printf_unfiltered (_("Threads in task %#x:\n"), task);
+  printf_filtered (_("Threads in task %#x:\n"), task);
   for (i = 0; i < thread_count; ++i)
     {
-      printf_unfiltered (_("    %#x\n"), threads[i]);
+      printf_filtered (_("    %#x\n"), threads[i]);
       mach_port_deallocate (task_self (), threads[i]);
     }
 
   vm_deallocate (task_self (), (vm_address_t) threads,
-                 (thread_count * sizeof (thread_t)));
+                (thread_count * sizeof (thread_t)));
 }
 
 static void
@@ -378,7 +378,7 @@ info_mach_thread_command (const char *args, int from_tty)
   CHECK_ARGS (_("Thread"), args);
   sscanf (args, "0x%x", &thread);
 
-  printf_unfiltered (_("THREAD_BASIC_INFO\n"));
+  printf_filtered (_("THREAD_BASIC_INFO\n"));
   info_count = THREAD_BASIC_INFO_COUNT;
   result = thread_info (thread,
                        THREAD_BASIC_INFO,
@@ -543,65 +543,65 @@ darwin_debug_regions (task_t task, mach_vm_address_t address, int max)
 
       /* Check to see if address space has wrapped around.  */
       if (address == 0)
-        print = done = 1;
+       print = done = 1;
 
       if (!done)
-        {
-          count = VM_REGION_BASIC_INFO_COUNT_64;
-          kret =
-            mach_vm_region (task, &address, &size, VM_REGION_BASIC_INFO_64,
-                             (vm_region_info_t) &info, &count, &object_name);
-          if (kret != KERN_SUCCESS)
-            {
-              size = 0;
-              print = done = 1;
-            }
-        }
+       {
+         count = VM_REGION_BASIC_INFO_COUNT_64;
+         kret =
+           mach_vm_region (task, &address, &size, VM_REGION_BASIC_INFO_64,
+                             (vm_region_info_t) &info, &count, &object_name);
+         if (kret != KERN_SUCCESS)
+           {
+             size = 0;
+             print = done = 1;
+           }
+       }
 
       if (address != prev_address + prev_size)
-        print = 1;
+       print = 1;
 
       if ((info.protection != prev_info.protection)
-          || (info.max_protection != prev_info.max_protection)
-          || (info.inheritance != prev_info.inheritance)
-          || (info.shared != prev_info.reserved)
-          || (info.reserved != prev_info.reserved))
-        print = 1;
+         || (info.max_protection != prev_info.max_protection)
+         || (info.inheritance != prev_info.inheritance)
+         || (info.shared != prev_info.reserved)
+         || (info.reserved != prev_info.reserved))
+       print = 1;
 
       if (print)
-        {
-          printf_filtered (_("%s-%s %s/%s  %s %s %s"),
-                           paddress (target_gdbarch (), prev_address),
-                           paddress (target_gdbarch (), prev_address + prev_size),
-                           unparse_protection (prev_info.protection),
-                           unparse_protection (prev_info.max_protection),
-                           unparse_inheritance (prev_info.inheritance),
-                           prev_info.shared ? _("shrd") : _("priv"),
-                           prev_info.reserved ? _("reserved") : _("not-rsvd"));
-
-          if (nsubregions > 1)
-            printf_filtered (_(" (%d sub-rgn)"), nsubregions);
-
-          printf_filtered (_("\n"));
-
-          prev_address = address;
-          prev_size = size;
-          memcpy (&prev_info, &info, sizeof (vm_region_basic_info_data_64_t));
-          nsubregions = 1;
-
-          num_printed++;
-        }
+       {
+         printf_filtered (_("%s-%s %s/%s  %s %s %s"),
+                          paddress (target_gdbarch (), prev_address),
+                          paddress (target_gdbarch (), prev_address + prev_size),
+                          unparse_protection (prev_info.protection),
+                          unparse_protection (prev_info.max_protection),
+                          unparse_inheritance (prev_info.inheritance),
+                          prev_info.shared ? _("shrd") : _("priv"),
+                          prev_info.reserved ? _("reserved") : _("not-rsvd"));
+
+         if (nsubregions > 1)
+           printf_filtered (_(" (%d sub-rgn)"), nsubregions);
+
+         printf_filtered (_("\n"));
+
+         prev_address = address;
+         prev_size = size;
+         memcpy (&prev_info, &info, sizeof (vm_region_basic_info_data_64_t));
+         nsubregions = 1;
+
+         num_printed++;
+       }
       else
-        {
-          prev_size += size;
-          nsubregions++;
-        }
+       {
+         prev_size += size;
+         nsubregions++;
+       }
 
       if ((max > 0) && (num_printed >= max))
-        done = 1;
+       done = 1;
 
       if (done)
-        break;
+       break;
     }
 }
 
@@ -752,39 +752,39 @@ disp_exception (const darwin_exception_info *info)
       switch (info->behaviors[i])
        {
        case EXCEPTION_DEFAULT:
-         printf_unfiltered (_("default"));
+         printf_filtered (_("default"));
          break;
        case EXCEPTION_STATE:
-         printf_unfiltered (_("state"));
+         printf_filtered (_("state"));
          break;
        case EXCEPTION_STATE_IDENTITY:
-         printf_unfiltered (_("state-identity"));
+         printf_filtered (_("state-identity"));
          break;
        default:
-         printf_unfiltered (_("0x%x"), info->behaviors[i]);
+         printf_filtered (_("0x%x"), info->behaviors[i]);
        }
-      printf_unfiltered (_(", masks:"));
+      printf_filtered (_(", masks:"));
       if (mask & EXC_MASK_BAD_ACCESS)
-       printf_unfiltered (_(" BAD_ACCESS"));
+       printf_filtered (_(" BAD_ACCESS"));
       if (mask & EXC_MASK_BAD_INSTRUCTION)
-       printf_unfiltered (_(" BAD_INSTRUCTION"));
+       printf_filtered (_(" BAD_INSTRUCTION"));
       if (mask & EXC_MASK_ARITHMETIC)
-       printf_unfiltered (_(" ARITHMETIC"));
+       printf_filtered (_(" ARITHMETIC"));
       if (mask & EXC_MASK_EMULATION)
-       printf_unfiltered (_(" EMULATION"));
+       printf_filtered (_(" EMULATION"));
       if (mask & EXC_MASK_SOFTWARE)
-       printf_unfiltered (_(" SOFTWARE"));
+       printf_filtered (_(" SOFTWARE"));
       if (mask & EXC_MASK_BREAKPOINT)
-       printf_unfiltered (_(" BREAKPOINT"));
+       printf_filtered (_(" BREAKPOINT"));
       if (mask & EXC_MASK_SYSCALL)
-       printf_unfiltered (_(" SYSCALL"));
+       printf_filtered (_(" SYSCALL"));
       if (mask & EXC_MASK_MACH_SYSCALL)
-       printf_unfiltered (_(" MACH_SYSCALL"));
+       printf_filtered (_(" MACH_SYSCALL"));
       if (mask & EXC_MASK_RPC_ALERT)
-       printf_unfiltered (_(" RPC_ALERT"));
+       printf_filtered (_(" RPC_ALERT"));
       if (mask & EXC_MASK_CRASH)
-       printf_unfiltered (_(" CRASH"));
-      printf_unfiltered (_("\n"));
+       printf_filtered (_(" CRASH"));
+      printf_filtered (_("\n"));
     }
 }
 
@@ -801,7 +801,7 @@ info_mach_exceptions_command (const char *args, int from_tty)
       if (strcmp (args, "saved") == 0)
        {
          if (inferior_ptid == null_ptid)
-           printf_unfiltered (_("No inferior running\n"));
+           printf_filtered (_("No inferior running\n"));
 
          darwin_inferior *priv = get_darwin_inferior (current_inferior ());
 
@@ -810,7 +810,7 @@ info_mach_exceptions_command (const char *args, int from_tty)
        }
       else if (strcmp (args, "host") == 0)
        {
-         /* FIXME: This need a privilegied host port!  */
+         /* FIXME: This needs a privileged host port!  */
          kret = host_get_exception_ports
            (darwin_host_self, EXC_MASK_ALL, info.masks,
             &info.count, info.ports, info.behaviors, info.flavors);
@@ -825,7 +825,7 @@ info_mach_exceptions_command (const char *args, int from_tty)
       struct inferior *inf;
 
       if (inferior_ptid == null_ptid)
-       printf_unfiltered (_("No inferior running\n"));
+       printf_filtered (_("No inferior running\n"));
       inf = current_inferior ();
       
       darwin_inferior *priv = get_darwin_inferior (inf);
@@ -838,29 +838,30 @@ info_mach_exceptions_command (const char *args, int from_tty)
     }
 }
 
+void _initialize_darwin_info_commands ();
 void
-_initialize_darwin_info_commands (void)
+_initialize_darwin_info_commands ()
 {
   add_info ("mach-tasks", info_mach_tasks_command,
-            _("Get list of tasks in system."));
+           _("Get list of tasks in system."));
   add_info ("mach-ports", info_mach_ports_command,
-            _("Get list of ports in a task."));
+           _("Get list of ports in a task."));
   add_info ("mach-port", info_mach_port_command,
-            _("Get info on a specific port."));
+           _("Get info on a specific port."));
   add_info ("mach-task", info_mach_task_command,
-            _("Get info on a specific task."));
+           _("Get info on a specific task."));
   add_info ("mach-threads", info_mach_threads_command,
-            _("Get list of threads in a task."));
+           _("Get list of threads in a task."));
   add_info ("mach-thread", info_mach_thread_command,
-            _("Get info on a specific thread."));
+           _("Get info on a specific thread."));
 
   add_info ("mach-regions", info_mach_regions_command,
-            _("Get information on all mach region for the task."));
+           _("Get information on all mach region for the task."));
   add_info ("mach-regions-rec", info_mach_regions_recurse_command,
-            _("Get information on all mach sub region for the task."));
+           _("Get information on all mach sub region for the task."));
   add_info ("mach-region", info_mach_region_command,
-            _("Get information on mach region at given address."));
+           _("Get information on mach region at given address."));
 
   add_info ("mach-exceptions", info_mach_exceptions_command,
-            _("Disp mach exceptions."));
+           _("Disp mach exceptions."));
 }