Tôi đang nhúng Lua (5.1) vào ứng dụng C/C++.LuaL_openlibs() và kịch bản hộp cát
Tôi đang sử dụng chức năng LuaL_openlibs()
để tải các lib cơ sở. Tuy nhiên, hàm này tải một số thư viện khác mà tôi muốn vô hiệu hóa để chúng không có sẵn cho các kịch bản lệnh Lua của tôi.
Cụ thể, tôi muốn tắt mô-đun IO và OS. Có một chức năng tôi có thể gọi để programmativally vô hiệu hóa (hoặc dỡ bỏ) các mô-đun này để tôi có thể tạo ra một môi trường sandbox an toàn để chạy Lua script?
Tôi nên lưu ý rằng đây là cho lua 5.1, và trong khi nó có thể làm việc với lua 5.2, nó không phải là cách được đề nghị nữa. Điều tốt nhất là nhìn vào tập tin linit.c của bản phân phối lua và xem cách chúng làm điều đó – Aktau