在Lua中将字节转换为表格在5.2.4中不起作用

时间:2017-02-12 00:24:07

标签: lua wireshark-dissector

我正在为Wireshark编写一个解剖器,并希望使用aeslua解密一些正在进入的数据包。我的解剖器工作正常,但是aeslua陷入了试图将密码输入的行将表转换为字节后的表。

有问题的一行是:

local pwBytes = { string.byte(password,1,#password)}

这将返回Lua 5.2.4中的null(包含在Wireshark 2.2.4中),但在在线演示(写作时为2.3.4)中,它返回预期值。

我尝试将其更改为:

local pwBytes = { password:byte(1, #password) }

但得到了相同的空结果。

作为参考,他是我在Lua演示中运行的代码:

local password = "ABCDEFABCDEFA"
local pwBytes = {string.byte(password,1,#password)}
print(pwBytes)

有没有办法解决这个问题?

1 个答案:

答案 0 :(得分:1)

代码在Lua 5.2.4中运行良好:

local password = "ABCDEFABCDEFA"
local pwBytes = {string.byte(password,1,#password)}
print(pwBytes)
for k,v in ipairs(pwBytes) do
  print(k,v)
end

给出

table: 0x7fc689d00560
1   65
2   66
3   67
4   68
5   69
6   70
7   65
8   66
9   67
10  68
11  69
12  70
13  65