Module: sems
Branch: master
Commit: f94b4c217252d0d94cb3b7bad5491675088fc7d8
URL: 
https://github.com/sems-server/sems/commit/f94b4c217252d0d94cb3b7bad5491675088fc7d8

Author: Juha Heinanen <j...@tutpro.com>
Committer: Juha Heinanen <j...@tutpro.com>
Date: 2015-11-30T09:52:04+02:00

apps/dsm: added md5 function to utils

---

Modified: apps/dsm/mods/mod_utils/ModUtils.cpp
Modified: apps/dsm/mods/mod_utils/ModUtils.h
Modified: doc/dsm/mods/Readme.mod_utils.txt

---

Diff:  
https://github.com/sems-server/sems/commit/f94b4c217252d0d94cb3b7bad5491675088fc7d8.diff
Patch: 
https://github.com/sems-server/sems/commit/f94b4c217252d0d94cb3b7bad5491675088fc7d8.patch

---

diff --git a/apps/dsm/mods/mod_utils/ModUtils.cpp 
b/apps/dsm/mods/mod_utils/ModUtils.cpp
index b799516..14c9e4f 100644
--- a/apps/dsm/mods/mod_utils/ModUtils.cpp
+++ b/apps/dsm/mods/mod_utils/ModUtils.cpp
@@ -53,6 +53,7 @@ MOD_ACTIONEXPORT_BEGIN(MOD_CLS_NAME) {
   DEF_CMD("utils.add", SCUSAddAction);
   DEF_CMD("utils.sub", SCUSSubAction);
   DEF_CMD("utils.int", SCUIntAction);
+  DEF_CMD("utils.md5", SCUMD5Action);
   DEF_CMD("utils.splitStringCR", SCUSplitStringAction);
   DEF_CMD("utils.escapeCRLF", SCUEscapeCRLFAction);
   DEF_CMD("utils.unescapeCRLF", SCUUnescapeCRLFAction);
@@ -320,7 +321,6 @@ EXEC_ACTION_START(SCUSpellAction) {
 
 } EXEC_ACTION_END;
 
-
 CONST_ACTION_2P(SCUSAddAction, ',', false);
 EXEC_ACTION_START(SCUSAddAction) {
   string n1 = resolveVars(par1, sess, sc_sess, event_params);
@@ -371,6 +371,22 @@ EXEC_ACTION_START(SCUIntAction) {
 
 } EXEC_ACTION_END;
 
+CONST_ACTION_2P(SCUMD5Action, ',', false);
+EXEC_ACTION_START(SCUMD5Action) {
+  string n1 = resolveVars(par1, sess, sc_sess, event_params);
+  string n2 = resolveVars(par2, sess, sc_sess, event_params);
+
+  string varname = par1;
+  if (varname.length() && varname[0] == '$')
+    varname = varname.substr(1);
+
+  string res = calculateMD5(n2);
+
+  DBG("setting var[%s] = %s\n", varname.c_str(), res.c_str());
+  sc_sess->var[varname] = res;
+
+} EXEC_ACTION_END;
+
 CONST_ACTION_2P(SCUSplitStringAction, ',', true);
 EXEC_ACTION_START(SCUSplitStringAction) {
   size_t cntr = 0;
diff --git a/apps/dsm/mods/mod_utils/ModUtils.h 
b/apps/dsm/mods/mod_utils/ModUtils.h
index eca98fa..e522d53 100644
--- a/apps/dsm/mods/mod_utils/ModUtils.h
+++ b/apps/dsm/mods/mod_utils/ModUtils.h
@@ -52,6 +52,7 @@ DEF_ACTION_2P(SCUSAddAction);
 DEF_ACTION_2P(SCUSSubAction);
 DEF_ACTION_2P(SCUIntAction);
 DEF_ACTION_2P(SCUSplitStringAction);
+DEF_ACTION_2P(SCUMD5Action);
 
 DEF_ACTION_1P(SCUEscapeCRLFAction);
 DEF_ACTION_1P(SCUUnescapeCRLFAction);
diff --git a/doc/dsm/mods/Readme.mod_utils.txt 
b/doc/dsm/mods/Readme.mod_utils.txt
index 7597e03..82944ad 100644
--- a/doc/dsm/mods/Readme.mod_utils.txt
+++ b/doc/dsm/mods/Readme.mod_utils.txt
@@ -47,6 +47,9 @@ Actions:
  utils.int($var, val)
    get integer part of val into var
 
+ utils.md5($var, val)
+   calculate md5 hex digest of val to $var
+
  utils.splitStringCR($var [, $dstvar])
  utils.splitStringCR(val, $dstvar])
    split a string on newline (carriage return, \n) 

_______________________________________________
Semsdev mailing list
Semsdev@lists.iptel.org
http://lists.iptel.org/mailman/listinfo/semsdev

Reply via email to