RSBAC returns specific error codes on internal functions as well as RSBAC system calls. The following errors are defined:
| Code | Reason |
|---|---|
| EPERM | Same as Linux EPERM: Permission denied. |
| EACCESS | RSBAC dir access failed internally |
| EREADFAILED | Reading from disk or from data structures failed abnormally |
| EWRITEFAILED | Writing to disk or data structures failed abnormally |
| EINVALIDPOINTER | Pointer argument was invalid (e.g. NULL). |
| ENOROOTDIR | Filesystem claims to have no root dir |
| EPATHTOOLONG | A path argument was too long for buffer |
| ENOROOTDEV | Root device does not exist / is not accessible |
| ENOTFOUND | A file or an ACI item was not found |
| ENOTINITIALIZED | RSBAC call before initialization |
| EREINIT | RSBAC has already been initialized |
| ECOULDNOTADDDEVICE | An internal device structure could not be added, possibly out of kernel memory |
| ECOULDNOTADDITEM | A data structures list item or a proc pseudo file could not be added, possibly out of memory |
| ECOULDNOTCREATEPATH | The /rsbac.dat dir on a filesystem could not be created |
| EINVALIDATTR | Invalid attribute number |
| EINVALIDDEV | Invalid device |
| EINVALIDTARGET | Invalid target type |
| EINVALIDVALUE | Other invalid value, e.g. attribute value out of range |
| EEXISTS | Item already exists |
| EINTERNONLY | A value must only be used internally |
| EINVALIDREQUEST | Invalid request number |
| ENOTWRITABLE | A filesystem is read-only, attributes were not written to it |
| EMALWAREDETECTED ( | No longer used, because incompatible with Unix standards / programs). A socket read request has been denied because of malware detection |
| ENOMEM | Out of kernel memory |
| EDECISIONMISMATCH | rsbac_adf_set_attr called for a request that rsbac_adf_request should not have granted, probably some attribute changes in the meantime or running in softmode |
| EINVALIDVERSION | A REG registration or syscall was tried for another REG interface or RSBAC version |
| EINVALIDMODULE | Trial to access attribute of unknown or not included decision module |
| EEXPIRED | The provided password has expired |
| EMUSTCHANGE | The password must be changed |
| EBUSY | An affected list is in use by another transaction |
| EINVALIDTRANSACTION | The transaction number does not exist |
| EWEAKPASSWORD | The new password is too weak, e.g. too short |
| EINVALIDLIST | The list handle given is invalid, probably some registration or disk read error |
| EFROMINTERRUPT | An RSBAC function has been called from interrupt context |
Table of Contents: RSBAC Handbook