[Lldb-commits] [lldb] [lldb] Remove ASL (Apple System Log) support from debugserver (NFC) (PR #112260)

via lldb-commits lldb-commits at lists.llvm.org
Mon Oct 14 13:58:44 PDT 2024


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-lldb

Author: Jonas Devlieghere (JDevlieghere)

<details>
<summary>Changes</summary>

Remove support for ASL (Apple System Log) which has been deprecated since macOS 10.12. Fixes the following warnings:

  warning: 'asl_new' is deprecated: first deprecated in macOS 10.12 - os_log(3) has replaced asl(3)
  warning: 'asl_set' is deprecated: first deprecated in macOS 10.12 - os_log(3) has replaced asl(3)
  warning: 'asl_vlog' is deprecated: first deprecated in macOS 10.12 - os_log(3) has replaced asl(3)

---
Full diff: https://github.com/llvm/llvm-project/pull/112260.diff


1 Files Affected:

- (modified) lldb/tools/debugserver/source/debugserver.cpp (+1-38) 


``````````diff
diff --git a/lldb/tools/debugserver/source/debugserver.cpp b/lldb/tools/debugserver/source/debugserver.cpp
index cfc9646ed2d081..f41a9e00ec9481 100644
--- a/lldb/tools/debugserver/source/debugserver.cpp
+++ b/lldb/tools/debugserver/source/debugserver.cpp
@@ -759,35 +759,6 @@ static int ConnectRemote(RNBRemote *remote, const char *host, int port,
   return 1;
 }
 
-// ASL Logging callback that can be registered with DNBLogSetLogCallback
-void ASLLogCallback(void *baton, uint32_t flags, const char *format,
-                    va_list args) {
-  if (format == NULL)
-    return;
-  static aslmsg g_aslmsg = NULL;
-  if (g_aslmsg == NULL) {
-    g_aslmsg = ::asl_new(ASL_TYPE_MSG);
-    char asl_key_sender[PATH_MAX];
-    snprintf(asl_key_sender, sizeof(asl_key_sender), "com.apple.%s-%s",
-             DEBUGSERVER_PROGRAM_NAME, DEBUGSERVER_VERSION_STR);
-    ::asl_set(g_aslmsg, ASL_KEY_SENDER, asl_key_sender);
-  }
-
-  int asl_level;
-  if (flags & DNBLOG_FLAG_FATAL)
-    asl_level = ASL_LEVEL_CRIT;
-  else if (flags & DNBLOG_FLAG_ERROR)
-    asl_level = ASL_LEVEL_ERR;
-  else if (flags & DNBLOG_FLAG_WARNING)
-    asl_level = ASL_LEVEL_WARNING;
-  else if (flags & DNBLOG_FLAG_VERBOSE)
-    asl_level = ASL_LEVEL_WARNING; // ASL_LEVEL_INFO;
-  else
-    asl_level = ASL_LEVEL_WARNING; // ASL_LEVEL_DEBUG;
-
-  ::asl_vlog(NULL, g_aslmsg, asl_level, format, args);
-}
-
 // FILE based Logging callback that can be registered with
 // DNBLogSetLogCallback
 void FileLogCallback(void *baton, uint32_t flags, const char *format,
@@ -948,16 +919,8 @@ int main(int argc, char *argv[]) {
   // Set up DNB logging by default. If the user passes different log flags or a
   // log file, these settings will be modified after processing the command line
   // arguments.
-  auto log_callback = OsLogger::GetLogFunction();
-  if (log_callback) {
-    // if os_log() support is available, log through that.
+  if (auto log_callback = OsLogger::GetLogFunction())
     DNBLogSetLogCallback(log_callback, nullptr);
-    DNBLog("debugserver will use os_log for internal logging.");
-  } else {
-    // Fall back to ASL support.
-    DNBLogSetLogCallback(ASLLogCallback, nullptr);
-    DNBLog("debugserver will use ASL for internal logging.");
-  }
   DNBLogSetLogMask(/*log_flags*/ 0);
 
   g_remoteSP = std::make_shared<RNBRemote>();

``````````

</details>


https://github.com/llvm/llvm-project/pull/112260


More information about the lldb-commits mailing list