luaJit 如何释放从 c 函数返回的 char* 数据

luaJit how to free char* data returned from c function

这是我要调用的 C 函数:

char* decrypt(const char* str, int len) {
    char* endata = malloc(len/2);
    //assign
    return endata;
}

这里是lua内容:

local ffi = require "ffi"
local rsa = ffi.load("test.so")

ffi.cdef[[
char* decrypt(const char* str, int len);
]]

local str = "256b5740ed16e5b15146816f77b0ab74de43d58ab367e9ac850642514f5cc4880e899a6a7775aa"
local c_str = test.decrypt(str, 256)
local lua_str = ffi.string(c_str, 128)

luajit 会自动释放 c_str 吗?

would luajit free c_str automaticly?

不,不会。 LuaJIT 不知道这个指针是什么。