index
Netauth-client
network authentication system client side,
this program replaces minux's default user system with a network based one
it requires a running netauth-server and ccdns-server
you can use the regular "useradd", "userdel" and passwd commands on the client if you are an admin.
promoting or demoting admins can also be done with the "op" and "deop" commands

it uses a centralized system to keep track of user accounts and passwords
it replaces minux.login meaning that other programs using login will also switch
it comes with an installer and uninstaller script for easy setup.
installation instructions: - install guide

/bin/netauth-client.sh - alias: netauth-client
this binary is not a common one since it is only used to assist in configuration
you do not run this binary to login, you use it as an install script
it will also run when the program is installed trough mapt, guiding the user trough the process

lua functions - lua functions for programmers
nac.usercheck
checks a username and password without logging in, usefull to verify
example: nac.usercheck("user","pass")
input1: username as string
input2: password as string
output: either error code as number or data as table, d1=allowed|true/false(bool), d2=isadmin|true/false(bool)

nac.login
the full login process switch a user on the current system
example: nac.login("user","pass")
input1: username as string
input2: password as string
output: either error code as number or true/false(bool)

nac.useradd
adds a new user to the network
example: nac.useradd("user","pass")
input1: new username as string
input2: new password as string
output: returns number, 200 = accept, 202 = already exist, 203 = doesn't exist, 204 = access denied

nac.userdel
removes a user from the network
example: nac.useradd("user")
input1: username as string
output: returns number, 200 = accept, 202 = already exist, 203 = doesn't exist, 204 = access denied

nac.passwd
changes a user's password
example: nac.passwd("user","pass")
input1: username as string
input2: password as string
output: returns number, 200 = accept, 202 = already exist, 203 = doesn't exist, 204 = access denied

nac.op
promotes a user to admin
example: nac.op("user")
input1: username as string
output: returns number, 200 = accept, 202 = already exist, 203 = doesn't exist, 204 = access denied

nac.deop
demotes an admin to user
example: nac.deop("user")
input1: username as string
output: returns number, 200 = accept, 202 = already exist, 203 = doesn't exist, 204 = access denied