<div dir="ltr"><div>After perusing the documentation and commit history more carefully, it looks like my syntax was just extremely messed up. However, there are two different sets of verbage used: that in the documentation, and that in the actually committed code:</div><div><br></div><div>Documentation states that in order to be able to use TLS keywords in LUA scripts we need to use the following init statement:</div><div></div><div dir="ltr"><div><div><b>function init (args)</b></div><div><b> local needs = {}</b></div></div></div><div dir="ltr"><div><div><b> needs["protocol"] = "tls"</b></div><div><b> return needs</b></div></div><div><b>end</b></div><div><br></div><div>However, when I attempt to load a rulebase that includes rules referencing a LUA script with the '<b>needs["protocol"]</b>' line in it, I get the follow error when running suricata 3.0RC3:</div><div><div><b>qnadmin@qn1:/etc/suricata/rules$ sudo suricata -c /etc/suricata/suricata.yaml -q 0 --init-errors-fatal</b></div><div><b>16/1/2016 -- 00:14:06 - <Notice> - This is Suricata version 3.0RC3 RELEASE</b></div><div><b>16/1/2016 -- 00:14:06 - <Error> - [ERRCODE: SC_ERR_LUA_ERROR(212)] - unsupported data type <u><i>protocol</i></u></b></div><div><b>16/1/2016 -- 00:14:06 - <Error> - [ERRCODE: SC_ERR_INVALID_SIGNATURE(39)] - error parsing signature "reject tls $EXTERNAL_NET any -> $HOME_NET any (msg:"HTTPS $$$ - DROPPED"; flow:established,to_client; luajit:bl_shopping_https.lua; sid:10001008; rev:1;)" from file /etc/suricata/rules/drop.rules at line 37</b></div><div><b>16/1/2016 -- 00:14:06 - <Error> - [ERRCODE: SC_ERR_NO_RULES_LOADED(43)] - Loading signatures failed.</b></div></div><div><br></div><div>However, in the commit history I find a different syntax required for the init function (which works):</div><div><p class="commit-title" style="color:rgb(33,63,77);margin:0px 0px 8px;font-size:18px;font-weight:bold;font-family:Helvetica,arial,nimbussansl,liberationsans,freesans,clean,sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol'">lua: TLS support</p><div class="commit-desc" style="color:rgb(51,51,51);font-family:Helvetica,arial,nimbussansl,liberationsans,freesans,clean,sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol';font-size:14px;line-height:19.6px"><pre style="overflow:visible;font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace;font-size:13px;margin-top:10px;margin-bottom:0px;font-stretch:normal;line-height:1.45;max-width:100%;color:rgb(89,96,99);white-space:pre-wrap;word-wrap:break-word">Support TLS in Lua detection scripts.
function init (args)
local needs = {}
needs["tls"] = tostring(true)
return needs
end</pre></div></div><div><br></div></div><div dir="ltr"><div>I know that the "procotol" keyword should be active in 3.0RC3 per the documentation, so is this a temporary issue? Or should I go in and update the documentation? <br></div><div><br></div><div>Thanks again all for your support!</div><div>Nasir</div></div></div>