Repository: trafficserver
Updated Branches:
  refs/heads/master 6c54ff851 -> 24f1e55c0


TS-3305: fix minor bugs in ats lua plugin


Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/24f1e55c
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/24f1e55c
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/24f1e55c

Branch: refs/heads/master
Commit: 24f1e55c021e134b74a3caf78dd6e588534e4e5a
Parents: 6c54ff8
Author: Changming Sun <[email protected]>
Authored: Fri Feb 6 08:35:31 2015 +0000
Committer: Kit Chan <[email protected]>
Committed: Fri Feb 6 08:35:31 2015 +0000

----------------------------------------------------------------------
 CHANGES                                              | 2 ++
 plugins/experimental/ts_lua/ts_lua.c                 | 9 ++++++---
 plugins/experimental/ts_lua/ts_lua_cached_response.c | 4 ++--
 plugins/experimental/ts_lua/ts_lua_client_request.c  | 4 ++--
 plugins/experimental/ts_lua/ts_lua_client_response.c | 4 ++--
 plugins/experimental/ts_lua/ts_lua_hook.c            | 4 ++--
 plugins/experimental/ts_lua/ts_lua_http.c            | 4 ++--
 plugins/experimental/ts_lua/ts_lua_http_cntl.c       | 2 +-
 plugins/experimental/ts_lua/ts_lua_http_config.c     | 2 +-
 plugins/experimental/ts_lua/ts_lua_package.c         | 6 ++++--
 plugins/experimental/ts_lua/ts_lua_remap.c           | 2 +-
 plugins/experimental/ts_lua/ts_lua_server_response.c | 4 ++--
 plugins/experimental/ts_lua/ts_lua_util.c            | 4 ++--
 13 files changed, 29 insertions(+), 22 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/24f1e55c/CHANGES
----------------------------------------------------------------------
diff --git a/CHANGES b/CHANGES
index a4c5a1c..33f0ecf 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,8 @@
                                                          -*- coding: utf-8 -*-
 Changes with Apache Traffic Server 5.3.0
 
+  *) [TS-3305] fix minor bugs in ats lua plugin.
+
   *) [TS-3369] fix bug in header setting functions in lua plugin.
 
   *) [TS-3366] TS shouldn't use HostDB for 127.0.0.1 or ::1.

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/24f1e55c/plugins/experimental/ts_lua/ts_lua.c
----------------------------------------------------------------------
diff --git a/plugins/experimental/ts_lua/ts_lua.c 
b/plugins/experimental/ts_lua/ts_lua.c
index 93d8abe..3bdd6ba 100644
--- a/plugins/experimental/ts_lua/ts_lua.c
+++ b/plugins/experimental/ts_lua/ts_lua.c
@@ -39,6 +39,7 @@ TSRemapInit(TSRemapInterface * api_info, char *errbuf, int 
errbuf_size)
 
   if (!api_info || api_info->size < sizeof(TSRemapInterface)) {
     strncpy(errbuf, "[TSRemapInit] - Incorrect size of TSRemapInterface 
structure", errbuf_size - 1);
+    errbuf[errbuf_size - 1] = '\0';
     return TS_ERROR;
   }
 
@@ -67,6 +68,7 @@ TSRemapNewInstance(int argc, char *argv[], void **ih, char 
*errbuf, int errbuf_s
 
   if (argc < 3) {
     strncpy(errbuf, "[TSRemapNewInstance] - lua script file or string is 
required !!", errbuf_size - 1);
+    errbuf[errbuf_size - 1] = '\0';
     return TS_ERROR;
   }
 
@@ -81,14 +83,14 @@ TSRemapNewInstance(int argc, char *argv[], void **ih, char 
*errbuf, int errbuf_s
   ts_lua_instance_conf *conf = TSmalloc(sizeof(ts_lua_instance_conf));
   if (!conf) {
     strncpy(errbuf, "[TSRemapNewInstance] TSmalloc failed!!", errbuf_size - 1);
+    errbuf[errbuf_size - 1] = '\0';
     return TS_ERROR;
   }
 
   memset(conf, 0, sizeof(ts_lua_instance_conf));
 
   if (fn) {
-    sprintf(conf->script, "%s", argv[2]);
-
+    snprintf(conf->script, TS_LUA_MAX_SCRIPT_FNAME_LENGTH, "%s", argv[2]);
   } else {
     conf->content = argv[2];
   }
@@ -99,6 +101,7 @@ TSRemapNewInstance(int argc, char *argv[], void **ih, char 
*errbuf, int errbuf_s
 
   if (ret != 0) {
     strncpy(errbuf, "[TSRemapNewInstance] ts_lua_add_module failed", 
errbuf_size - 1);
+    errbuf[errbuf_size - 1] = '\0';
     return TS_ERROR;
   }
 
@@ -355,7 +358,7 @@ TSPluginInit(int argc, const char *argv[])
   }
   memset(conf, 0, sizeof(ts_lua_instance_conf));
 
-  sprintf(conf->script, "%s", argv[1]);
+  snprintf(conf->script, TS_LUA_MAX_SCRIPT_FNAME_LENGTH, "%s", argv[1]);
 
   ts_lua_init_instance(conf);
 

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/24f1e55c/plugins/experimental/ts_lua/ts_lua_cached_response.c
----------------------------------------------------------------------
diff --git a/plugins/experimental/ts_lua/ts_lua_cached_response.c 
b/plugins/experimental/ts_lua/ts_lua_cached_response.c
index 74935fb..415695d 100644
--- a/plugins/experimental/ts_lua/ts_lua_cached_response.c
+++ b/plugins/experimental/ts_lua/ts_lua_cached_response.c
@@ -132,9 +132,9 @@ ts_lua_cached_response_get_version(lua_State * L)
   version = TSHttpHdrVersionGet(http_ctx->cached_response_bufp, 
http_ctx->cached_response_hdrp);
 
   n = snprintf(buf, sizeof(buf), "%d.%d", TS_HTTP_MAJOR(version), 
TS_HTTP_MINOR(version));
-  if(n >= sizeof(buf)) {
+  if(n >= (int)sizeof(buf)) {
     lua_pushlstring(L, buf, sizeof(buf) - 1);
-  } else {
+  } else if(n > 0){
     lua_pushlstring(L, buf, n);
   }
 

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/24f1e55c/plugins/experimental/ts_lua/ts_lua_client_request.c
----------------------------------------------------------------------
diff --git a/plugins/experimental/ts_lua/ts_lua_client_request.c 
b/plugins/experimental/ts_lua/ts_lua_client_request.c
index 61a27fe..b5f1e5b 100644
--- a/plugins/experimental/ts_lua/ts_lua_client_request.c
+++ b/plugins/experimental/ts_lua/ts_lua_client_request.c
@@ -767,9 +767,9 @@ ts_lua_client_request_get_version(lua_State * L)
   version = TSHttpHdrVersionGet(http_ctx->client_request_bufp, 
http_ctx->client_request_hdrp);
 
   n = snprintf(buf, sizeof(buf), "%d.%d", TS_HTTP_MAJOR(version), 
TS_HTTP_MINOR(version));
-  if (n >= sizeof(buf)) {
+  if (n >= (int)sizeof(buf)) {
     lua_pushlstring(L, buf, sizeof(buf) - 1);
-  } else {
+  } else if(n > 0){
     lua_pushlstring(L, buf, n);
   }
 

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/24f1e55c/plugins/experimental/ts_lua/ts_lua_client_response.c
----------------------------------------------------------------------
diff --git a/plugins/experimental/ts_lua/ts_lua_client_response.c 
b/plugins/experimental/ts_lua/ts_lua_client_response.c
index d35eed1..c3d0508 100644
--- a/plugins/experimental/ts_lua/ts_lua_client_response.c
+++ b/plugins/experimental/ts_lua/ts_lua_client_response.c
@@ -310,9 +310,9 @@ ts_lua_client_response_get_version(lua_State * L)
   version = TSHttpHdrVersionGet(http_ctx->client_response_bufp, 
http_ctx->client_response_hdrp);
 
   n = snprintf(buf, sizeof(buf), "%d.%d", TS_HTTP_MAJOR(version), 
TS_HTTP_MINOR(version));
-  if (n >= sizeof(buf)) {
+  if (n >= (int)sizeof(buf)) {
     lua_pushlstring(L, buf, sizeof(buf) - 1);
-  } else {
+  } else if(n > 0){
     lua_pushlstring(L, buf, n);
   }
 

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/24f1e55c/plugins/experimental/ts_lua/ts_lua_hook.c
----------------------------------------------------------------------
diff --git a/plugins/experimental/ts_lua/ts_lua_hook.c 
b/plugins/experimental/ts_lua/ts_lua_hook.c
index c77acab..df4f35f 100644
--- a/plugins/experimental/ts_lua/ts_lua_hook.c
+++ b/plugins/experimental/ts_lua/ts_lua_hook.c
@@ -79,10 +79,10 @@ ts_lua_inject_hook_api(lua_State * L)
 static void
 ts_lua_inject_hook_variables(lua_State * L)
 {
-  int i;
+  size_t i;
 
   for (i = 0; i < sizeof(ts_lua_hook_id_string) / sizeof(char *); i++) {
-    lua_pushinteger(L, i);
+    lua_pushinteger(L, (lua_Integer)i);
     lua_setglobal(L, ts_lua_hook_id_string[i]);
   }
 }

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/24f1e55c/plugins/experimental/ts_lua/ts_lua_http.c
----------------------------------------------------------------------
diff --git a/plugins/experimental/ts_lua/ts_lua_http.c 
b/plugins/experimental/ts_lua/ts_lua_http.c
index dfc981e..627162a 100644
--- a/plugins/experimental/ts_lua/ts_lua_http.c
+++ b/plugins/experimental/ts_lua/ts_lua_http.c
@@ -125,10 +125,10 @@ ts_lua_inject_http_misc_api(lua_State * L)
 static void
 ts_lua_inject_cache_lookup_result_variables(lua_State * L)
 {
-  int i;
+  size_t i;
 
   for (i = 0; i < sizeof(ts_lua_cache_lookup_result_string) / sizeof(char *); 
i++) {
-    lua_pushinteger(L, i);
+    lua_pushinteger(L, (lua_Integer)i);
     lua_setglobal(L, ts_lua_cache_lookup_result_string[i]);
   }
 }

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/24f1e55c/plugins/experimental/ts_lua/ts_lua_http_cntl.c
----------------------------------------------------------------------
diff --git a/plugins/experimental/ts_lua/ts_lua_http_cntl.c 
b/plugins/experimental/ts_lua/ts_lua_http_cntl.c
index 7ec8bec..c5e1501 100644
--- a/plugins/experimental/ts_lua/ts_lua_http_cntl.c
+++ b/plugins/experimental/ts_lua/ts_lua_http_cntl.c
@@ -57,7 +57,7 @@ ts_lua_inject_http_cntl_api(lua_State * L)
 static void
 ts_lua_inject_http_cntl_variables(lua_State * L)
 {
-  int i;
+  size_t i;
 
   for (i = 0; i < sizeof(ts_lua_http_cntl_type_vars) / 
sizeof(ts_lua_var_item); i++) {
     lua_pushinteger(L, ts_lua_http_cntl_type_vars[i].nvar);

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/24f1e55c/plugins/experimental/ts_lua/ts_lua_http_config.c
----------------------------------------------------------------------
diff --git a/plugins/experimental/ts_lua/ts_lua_http_config.c 
b/plugins/experimental/ts_lua/ts_lua_http_config.c
index ee1c8d3..e598b70 100644
--- a/plugins/experimental/ts_lua/ts_lua_http_config.c
+++ b/plugins/experimental/ts_lua/ts_lua_http_config.c
@@ -221,7 +221,7 @@ ts_lua_inject_http_config_api(lua_State * L)
 static void
 ts_lua_inject_http_config_variables(lua_State * L)
 {
-  int i;
+  size_t i;
 
   for (i = 0; i < sizeof(ts_lua_http_config_vars) / sizeof(ts_lua_var_item); 
i++) {
     lua_pushinteger(L, ts_lua_http_config_vars[i].nvar);

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/24f1e55c/plugins/experimental/ts_lua/ts_lua_package.c
----------------------------------------------------------------------
diff --git a/plugins/experimental/ts_lua/ts_lua_package.c 
b/plugins/experimental/ts_lua/ts_lua_package.c
index a985340..8953f44 100644
--- a/plugins/experimental/ts_lua/ts_lua_package.c
+++ b/plugins/experimental/ts_lua/ts_lua_package.c
@@ -62,7 +62,8 @@ ts_lua_add_package_path(lua_State * L)
   const char *data;
   const char *ptr, *end, *hit;
   size_t dlen;
-  size_t i, n, item_len;
+  int i, n;
+  size_t item_len;
   ts_lua_package_path pp[TS_LUA_MAX_PACKAGE_NUM];
   ts_lua_package_path *elt;
 
@@ -183,7 +184,8 @@ ts_lua_add_package_cpath(lua_State * L)
   const char *data;
   const char *ptr, *end, *hit;
   size_t dlen;
-  size_t i, n, item_len;
+  int i, n;
+  size_t item_len;
   ts_lua_package_path pp[TS_LUA_MAX_PACKAGE_NUM];
   ts_lua_package_path *elt;
 

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/24f1e55c/plugins/experimental/ts_lua/ts_lua_remap.c
----------------------------------------------------------------------
diff --git a/plugins/experimental/ts_lua/ts_lua_remap.c 
b/plugins/experimental/ts_lua/ts_lua_remap.c
index 058e821..fde9e19 100644
--- a/plugins/experimental/ts_lua/ts_lua_remap.c
+++ b/plugins/experimental/ts_lua/ts_lua_remap.c
@@ -50,7 +50,7 @@ ts_lua_inject_remap_api(lua_State * L)
 static void
 ts_lua_inject_remap_variables(lua_State * L)
 {
-  int i;
+  size_t i;
 
   for (i = 0; i < sizeof(ts_lua_remap_status_vars) / sizeof(ts_lua_var_item); 
i++) {
     lua_pushinteger(L, ts_lua_remap_status_vars[i].nvar);

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/24f1e55c/plugins/experimental/ts_lua/ts_lua_server_response.c
----------------------------------------------------------------------
diff --git a/plugins/experimental/ts_lua/ts_lua_server_response.c 
b/plugins/experimental/ts_lua/ts_lua_server_response.c
index 071c95e..aa6cac0 100644
--- a/plugins/experimental/ts_lua/ts_lua_server_response.c
+++ b/plugins/experimental/ts_lua/ts_lua_server_response.c
@@ -292,9 +292,9 @@ ts_lua_server_response_get_version(lua_State * L)
 
   n = snprintf(buf, sizeof(buf), "%d.%d", TS_HTTP_MAJOR(version), 
TS_HTTP_MINOR(version));
 
-  if(n >= sizeof(buf)) {
+  if(n >= (int)sizeof(buf)) {
     lua_pushlstring(L, buf, sizeof(buf) - 1);
-  } else {
+  } else if(n > 0) {
     lua_pushlstring(L, buf, n);
   }
   

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/24f1e55c/plugins/experimental/ts_lua/ts_lua_util.c
----------------------------------------------------------------------
diff --git a/plugins/experimental/ts_lua/ts_lua_util.c 
b/plugins/experimental/ts_lua/ts_lua_util.c
index 658b6ab..9899b45 100644
--- a/plugins/experimental/ts_lua/ts_lua_util.c
+++ b/plugins/experimental/ts_lua/ts_lua_util.c
@@ -338,7 +338,7 @@ ts_lua_get_http_ctx(lua_State * L)
 ts_lua_http_ctx *
 ts_lua_create_http_ctx(ts_lua_main_ctx * main_ctx, ts_lua_instance_conf * conf)
 {
-  int i, size;
+  size_t i, size;
   ts_lua_http_ctx *http_ctx;
   lua_State *L;
   lua_State *l;
@@ -445,7 +445,7 @@ ts_lua_get_http_intercept_ctx(lua_State * L)
 ts_lua_http_intercept_ctx *
 ts_lua_create_http_intercept_ctx(ts_lua_http_ctx * http_ctx)
 {
-  int i, size;
+  size_t i, size;
   lua_State *L;
   ts_lua_http_intercept_ctx *ictx;
 

Reply via email to