===== Error Codes ===== 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:** [[documentation:rsbac_handbook|RSBAC Handbook]]\\