You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by ez...@apache.org on 2022/09/23 17:59:44 UTC

[trafficserver] branch master updated: Move plugin_init for verify cmd (#9102)

This is an automated email from the ASF dual-hosted git repository.

eze pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficserver.git


The following commit(s) were added to refs/heads/master by this push:
     new 7c6d19c0b Move plugin_init for verify cmd (#9102)
7c6d19c0b is described below

commit 7c6d19c0bb13c07695c80bb16a90aa4228809706
Author: Evan Zelkowitz <ez...@apache.org>
AuthorDate: Fri Sep 23 11:59:35 2022 -0600

    Move plugin_init for verify cmd (#9102)
    
    plugin_init calls api_init which will intialize all the global hooks needed for lifecycle and other plugins. Without doing this those hook objects are empty so if a plugin (such as lua) makes a call to add a lifecycle hook on remapinit, this will crash since they haven't been initialized
---
 src/traffic_server/traffic_server.cc | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/src/traffic_server/traffic_server.cc b/src/traffic_server/traffic_server.cc
index ebbc7e956..1866a7c81 100644
--- a/src/traffic_server/traffic_server.cc
+++ b/src/traffic_server/traffic_server.cc
@@ -895,6 +895,13 @@ cmd_verify(char * /* cmd ATS_UNUSED */)
     Layout::get()->update_sysconfdir(conf_dir);
   }
 
+  if (!plugin_init(true)) {
+    exitStatus |= (1 << 2);
+    fprintf(stderr, "ERROR: Failed to load %s, exitStatus %d\n\n", ts::filename::PLUGIN, exitStatus);
+  } else {
+    fprintf(stderr, "INFO: Successfully loaded %s\n\n", ts::filename::PLUGIN);
+  }
+
   if (!urlRewriteVerify()) {
     exitStatus |= (1 << 0);
     fprintf(stderr, "ERROR: Failed to load %s, exitStatus %d\n\n", ts::filename::REMAP, exitStatus);
@@ -909,13 +916,6 @@ cmd_verify(char * /* cmd ATS_UNUSED */)
     fprintf(stderr, "INFO: Successfully loaded %s\n\n", ts::filename::RECORDS);
   }
 
-  if (!plugin_init(true)) {
-    exitStatus |= (1 << 2);
-    fprintf(stderr, "ERROR: Failed to load %s, exitStatus %d\n\n", ts::filename::PLUGIN, exitStatus);
-  } else {
-    fprintf(stderr, "INFO: Successfully loaded %s\n\n", ts::filename::PLUGIN);
-  }
-
   SSLInitializeLibrary();
   SSLConfig::startup();
   if (!SSLCertificateConfig::startup()) {