Mercurial > crates > nonstick
diff src/constants.rs @ 1:b195a14058bb
initial commit
author | Jesse Hallett <jesse@galois.com> |
---|---|
date | Thu, 05 Mar 2015 16:25:10 -0800 |
parents | |
children | a83c56216e21 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/constants.rs Thu Mar 05 16:25:10 2015 -0800 @@ -0,0 +1,79 @@ +use libc::{c_int, c_uint}; + +// TODO: Import constants from C header file at compile time. + +pub type PamFlag = c_uint; +pub type PamItemType = c_int; +pub type PamMessageStyle = c_int; +pub type PamResultCode = c_int; +pub type AlwaysZero = c_int; + +// The Linux-PAM flags +// see /usr/include/security/_pam_types.h +pub const PAM_SILENT: PamFlag = 0x8000; +pub const PAM_DISALLOW_NULL_AUTHTOK: PamFlag = 0x0001; +pub const PAM_ESTABLISH_CRED: PamFlag = 0x0002; +pub const PAM_DELETE_CRED: PamFlag = 0x0004; +pub const PAM_REINITIALIZE_CRED: PamFlag = 0x0008; +pub const PAM_REFRESH_CRED: PamFlag = 0x0010; +pub const PAM_CHANGE_EXPIRED_AUTHTOK: PamFlag = 0x0020; + +// The Linux-PAM item types +// see /usr/include/security/_pam_types.h +pub const PAM_SERVICE: PamItemType = 1; /* The service name */ +pub const PAM_USER: PamItemType = 2; /* The user name */ +pub const PAM_TTY: PamItemType = 3; /* The tty name */ +pub const PAM_RHOST: PamItemType = 4; /* The remote host name */ +pub const PAM_CONV: PamItemType = 5; /* The pam_conv structure */ +pub const PAM_AUTHTOK: PamItemType = 6; /* The authentication token (password) */ +pub const PAM_OLDAUTHTOK: PamItemType = 7; /* The old authentication token */ +pub const PAM_RUSER: PamItemType = 8; /* The remote user name */ +pub const PAM_USER_PROMPT: PamItemType = 9; /* the prompt for getting a username */ +/* Linux-PAM :extensionsPamItemType = */ +pub const PAM_FAIL_DELAY: PamItemType = 10; /* app supplied function to override failure delays */ +pub const PAM_XDISPLAY: PamItemType = 11; /* X :display name */ +pub const PAM_XAUTHDATA: PamItemType = 12; /* X :server authentication data */ +pub const PAM_AUTHTOK_TYPE: PamItemType = 13; /* The type for pam_get_authtok */ + +// Message styles +pub const PAM_PROMPT_ECHO_OFF: PamMessageStyle = 1; +pub const PAM_PROMPT_ECHO_ON: PamMessageStyle = 2; +pub const PAM_ERROR_MSG: PamMessageStyle = 3; +pub const PAM_TEXT_INFO: PamMessageStyle = 4; +pub const PAM_RADIO_TYPE: PamMessageStyle = 5; /* yes/no/maybe conditionals */ +pub const PAM_BINARY_PROMPT: PamMessageStyle = 7; + +// The Linux-PAM return values +// see /usr/include/security/_pam_types.h +pub const PAM_SUCCESS: PamResultCode = 0; +pub const PAM_OPEN_ERR: PamResultCode = 1; +pub const PAM_SYMBOL_ERR: PamResultCode = 2; +pub const PAM_SERVICE_ERR: PamResultCode = 3; +pub const PAM_SYSTEM_ERR: PamResultCode = 4; +pub const PAM_BUF_ERR: PamResultCode = 5; +pub const PAM_PERM_DENIED: PamResultCode = 6; +pub const PAM_AUTH_ERR: PamResultCode = 7; +pub const PAM_CRED_INSUFFICIENT: PamResultCode = 8; +pub const PAM_AUTHINFO_UNAVAIL: PamResultCode = 9; +pub const PAM_USER_UNKNOWN: PamResultCode = 10; +pub const PAM_MAXTRIES: PamResultCode = 11; +pub const PAM_NEW_AUTHTOK_REQD: PamResultCode = 12; +pub const PAM_ACCT_EXPIRED: PamResultCode = 13; +pub const PAM_SESSION_ERR: PamResultCode = 14; +pub const PAM_CRED_UNAVAIL: PamResultCode = 15; +pub const PAM_CRED_EXPIRED: PamResultCode = 16; +pub const PAM_CRED_ERR: PamResultCode = 17; +pub const PAM_NO_MODULE_DATA: PamResultCode = 18; +pub const PAM_CONV_ERR: PamResultCode = 19; +pub const PAM_AUTHTOK_ERR: PamResultCode = 20; +pub const PAM_AUTHTOK_RECOVERY_ERR: PamResultCode = 21; +pub const PAM_AUTHTOK_LOCK_BUSY: PamResultCode = 22; +pub const PAM_AUTHTOK_DISABLE_AGING: PamResultCode = 23; +pub const PAM_TRY_AGAIN: PamResultCode = 24; +pub const PAM_IGNORE: PamResultCode = 25; +pub const PAM_ABORT: PamResultCode = 26; +pub const PAM_AUTHTOK_EXPIRED: PamResultCode = 27; +pub const PAM_MODULE_UNKNOWN: PamResultCode = 28; +pub const PAM_BAD_ITEM: PamResultCode = 29; +pub const PAM_CONV_AGAIN: PamResultCode = 30; +pub const PAM_INCOMPLETE: PamResultCode = 31;