comparison src/constants.rs @ 14:51b097c12d3c

make PamResultCode an enum
author Anthony Nowell <anthony@algorithmia.com>
date Sat, 23 Sep 2017 14:30:18 -0600
parents 2abd89f31a13
children
comparison
equal deleted inserted replaced
13:cc39d168aeb8 14:51b097c12d3c
3 // TODO: Import constants from C header file at compile time. 3 // TODO: Import constants from C header file at compile time.
4 4
5 pub type PamFlag = c_uint; 5 pub type PamFlag = c_uint;
6 pub type PamItemType = c_int; 6 pub type PamItemType = c_int;
7 pub type PamMessageStyle = c_int; 7 pub type PamMessageStyle = c_int;
8 pub type PamResultCode = c_int;
9 pub type AlwaysZero = c_int; 8 pub type AlwaysZero = c_int;
10 9
11 // The Linux-PAM flags 10 // The Linux-PAM flags
12 // see /usr/include/security/_pam_types.h 11 // see /usr/include/security/_pam_types.h
13 pub const PAM_SILENT: PamFlag = 0x8000; 12 pub const PAM_SILENT: PamFlag = 0x8000;
57 pub const PAM_RADIO_TYPE: PamMessageStyle = 5; 56 pub const PAM_RADIO_TYPE: PamMessageStyle = 5;
58 pub const PAM_BINARY_PROMPT: PamMessageStyle = 7; 57 pub const PAM_BINARY_PROMPT: PamMessageStyle = 7;
59 58
60 // The Linux-PAM return values 59 // The Linux-PAM return values
61 // see /usr/include/security/_pam_types.h 60 // see /usr/include/security/_pam_types.h
62 pub const PAM_SUCCESS: PamResultCode = 0; 61 #[allow(non_camel_case_types, dead_code)]
63 pub const PAM_OPEN_ERR: PamResultCode = 1; 62 #[derive(Debug, PartialEq)]
64 pub const PAM_SYMBOL_ERR: PamResultCode = 2; 63 #[repr(C)]
65 pub const PAM_SERVICE_ERR: PamResultCode = 3; 64 pub enum PamResultCode {
66 pub const PAM_SYSTEM_ERR: PamResultCode = 4; 65 PAM_SUCCESS = 0,
67 pub const PAM_BUF_ERR: PamResultCode = 5; 66 PAM_OPEN_ERR = 1,
68 pub const PAM_PERM_DENIED: PamResultCode = 6; 67 PAM_SYMBOL_ERR = 2,
69 pub const PAM_AUTH_ERR: PamResultCode = 7; 68 PAM_SERVICE_ERR = 3,
70 pub const PAM_CRED_INSUFFICIENT: PamResultCode = 8; 69 PAM_SYSTEM_ERR = 4,
71 pub const PAM_AUTHINFO_UNAVAIL: PamResultCode = 9; 70 PAM_BUF_ERR = 5,
72 pub const PAM_USER_UNKNOWN: PamResultCode = 10; 71 PAM_PERM_DENIED = 6,
73 pub const PAM_MAXTRIES: PamResultCode = 11; 72 PAM_AUTH_ERR = 7,
74 pub const PAM_NEW_AUTHTOK_REQD: PamResultCode = 12; 73 PAM_CRED_INSUFFICIENT = 8,
75 pub const PAM_ACCT_EXPIRED: PamResultCode = 13; 74 PAM_AUTHINFO_UNAVAIL = 9,
76 pub const PAM_SESSION_ERR: PamResultCode = 14; 75 PAM_USER_UNKNOWN = 10,
77 pub const PAM_CRED_UNAVAIL: PamResultCode = 15; 76 PAM_MAXTRIES = 11,
78 pub const PAM_CRED_EXPIRED: PamResultCode = 16; 77 PAM_NEW_AUTHTOK_REQD = 12,
79 pub const PAM_CRED_ERR: PamResultCode = 17; 78 PAM_ACCT_EXPIRED = 13,
80 pub const PAM_NO_MODULE_DATA: PamResultCode = 18; 79 PAM_SESSION_ERR = 14,
81 pub const PAM_CONV_ERR: PamResultCode = 19; 80 PAM_CRED_UNAVAIL = 15,
82 pub const PAM_AUTHTOK_ERR: PamResultCode = 20; 81 PAM_CRED_EXPIRED = 16,
83 pub const PAM_AUTHTOK_RECOVERY_ERR: PamResultCode = 21; 82 PAM_CRED_ERR = 17,
84 pub const PAM_AUTHTOK_LOCK_BUSY: PamResultCode = 22; 83 PAM_NO_MODULE_DATA = 18,
85 pub const PAM_AUTHTOK_DISABLE_AGING: PamResultCode = 23; 84 PAM_CONV_ERR = 19,
86 pub const PAM_TRY_AGAIN: PamResultCode = 24; 85 PAM_AUTHTOK_ERR = 20,
87 pub const PAM_IGNORE: PamResultCode = 25; 86 PAM_AUTHTOK_RECOVERY_ERR = 21,
88 pub const PAM_ABORT: PamResultCode = 26; 87 PAM_AUTHTOK_LOCK_BUSY = 22,
89 pub const PAM_AUTHTOK_EXPIRED: PamResultCode = 27; 88 PAM_AUTHTOK_DISABLE_AGING = 23,
90 pub const PAM_MODULE_UNKNOWN: PamResultCode = 28; 89 PAM_TRY_AGAIN = 24,
91 pub const PAM_BAD_ITEM: PamResultCode = 29; 90 PAM_IGNORE = 25,
92 pub const PAM_CONV_AGAIN: PamResultCode = 30; 91 PAM_ABORT = 26,
93 pub const PAM_INCOMPLETE: PamResultCode = 31; 92 PAM_AUTHTOK_EXPIRED = 27,
93 PAM_MODULE_UNKNOWN = 28,
94 PAM_BAD_ITEM = 29,
95 PAM_CONV_AGAIN = 30,
96 PAM_INCOMPLETE = 31,
97 }