Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/n0la/lua-openbsd

Lua library that binds to OpenBSD specific functions
https://github.com/n0la/lua-openbsd

Last synced: 3 months ago
JSON representation

Lua library that binds to OpenBSD specific functions

Awesome Lists containing this project

README

        

# OpenBSD Lua Library

Implements:

* pledge()
* arc4random()
* arc4random_uniform()
* unveil()
* auth_userokay()

Works and has been tested on Lua 5.1, 5.2, 5.3 and 5.4.

Note that pledge() pre 6.3 takes an optional set of paths as the second
argument.

```lua
-- OK
o.pledge('rpath stdio')
-- Error
o.pledge('rpath stdio', 'stdio')
```

## Build

Don't forget to set the `MODLUA_VERSION` variable to the Lua version you are
using.

```
$ mkdir build && cd build
$ cmake .. -DMODLUA_VERSION=5.4
$ make
$ make install
```

## Usage

```lua
#!/usr/bin/env lua51

o = require('openbsd')
ret, error_string = o.pledge('rpath stdio')
if ret == -1 then
error(error_string)
end
```

Or:

```
#!/usr/bin/env lua54

o = require('openbsd')

for i = 1, 10 do
print(o.arc4random_uniform(20))
end
```

## Author

Written by Florian Stinglmayr
Copyright (c) 2016, All Rights Reserved