Mercurial > crates > nonstick
annotate libpam-sys/src/constants.rs @ 135:b52594841480
Split libpam-sys into its own sub-workspace.
Nonstick is basically a normal dependency of libpam-sys.
But libpam-sys is integrated packages that should be versioned together.
author | Paul Fisher <paul@pfish.zone> |
---|---|
date | Thu, 03 Jul 2025 11:14:49 -0400 |
parents | 6c1e1bdb4164 |
children |
rev | line source |
---|---|
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
1 //! All the constants. |
110
2346fd501b7a
Add tests for constants and do other macro niceties.
Paul Fisher <paul@pfish.zone>
parents:
109
diff
changeset
|
2 //! |
2346fd501b7a
Add tests for constants and do other macro niceties.
Paul Fisher <paul@pfish.zone>
parents:
109
diff
changeset
|
3 //! These constants are tested on a per-platform basis by `libpam-sys-test`'s |
2346fd501b7a
Add tests for constants and do other macro niceties.
Paul Fisher <paul@pfish.zone>
parents:
109
diff
changeset
|
4 //! `test_constants.rs`. |
108
e97534be35e3
Make some proc macros for doing cfg-like stuff for PAM impls.
Paul Fisher <paul@pfish.zone>
parents:
106
diff
changeset
|
5 |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
6 /// Macro to make defining a bunch of constants way easier. |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
7 macro_rules! define { |
108
e97534be35e3
Make some proc macros for doing cfg-like stuff for PAM impls.
Paul Fisher <paul@pfish.zone>
parents:
106
diff
changeset
|
8 ($(#[$attr:meta])* $($name:ident = $value:expr);+$(;)?) => { |
e97534be35e3
Make some proc macros for doing cfg-like stuff for PAM impls.
Paul Fisher <paul@pfish.zone>
parents:
106
diff
changeset
|
9 define!( |
e97534be35e3
Make some proc macros for doing cfg-like stuff for PAM impls.
Paul Fisher <paul@pfish.zone>
parents:
106
diff
changeset
|
10 @meta { $(#[$attr])* } |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
11 $(pub const $name: i32 = $value;)+ |
108
e97534be35e3
Make some proc macros for doing cfg-like stuff for PAM impls.
Paul Fisher <paul@pfish.zone>
parents:
106
diff
changeset
|
12 ); |
e97534be35e3
Make some proc macros for doing cfg-like stuff for PAM impls.
Paul Fisher <paul@pfish.zone>
parents:
106
diff
changeset
|
13 }; |
e97534be35e3
Make some proc macros for doing cfg-like stuff for PAM impls.
Paul Fisher <paul@pfish.zone>
parents:
106
diff
changeset
|
14 (@meta $m:tt $($i:item)+) => { define!(@expand $($m $i)+); }; |
e97534be35e3
Make some proc macros for doing cfg-like stuff for PAM impls.
Paul Fisher <paul@pfish.zone>
parents:
106
diff
changeset
|
15 (@expand $({ $(#[$m:meta])* } $i:item)+) => {$($(#[$m])* $i)+}; |
e97534be35e3
Make some proc macros for doing cfg-like stuff for PAM impls.
Paul Fisher <paul@pfish.zone>
parents:
106
diff
changeset
|
16 } |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
17 |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
18 /// Macro to make defining C-style enums way easier. |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
19 macro_rules! c_enum { |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
20 ($(#[$attr:meta])* $($name:ident $(= $value:expr)?,)*) => { |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
21 c_enum!( |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
22 (0) |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
23 $(#[$attr])* |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
24 $($name $(= $value)?,)* |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
25 ); |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
26 }; |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
27 (($n:expr) $(#[$attr:meta])* $name:ident, $($rest:ident $(= $rv:expr)?,)*) => { |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
28 $(#[$attr])* pub const $name: i32 = $n; |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
29 c_enum!(($n + 1) $(#[$attr])* $($rest $(= $rv)?,)*); |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
30 }; |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
31 (($n:expr) $(#[$attr:meta])* $name:ident = $value:expr, $($rest:ident $(= $rv:expr)?,)*) => { |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
32 $(#[$attr])* pub const $name: i32 = $value; |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
33 c_enum!(($value + 1) $(#[$attr])* $($rest $(= $rv)?,)*); |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
34 }; |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
35 (($n:expr) $(#[$attr:meta])*) => {}; |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
36 } |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
37 |
109 | 38 // There are a few truly universal constants. |
39 // They are defined here directly. | |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
40 /// The successful return code. |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
41 pub const PAM_SUCCESS: i32 = 0; |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
42 |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
43 c_enum!( |
109 | 44 /// An item type. |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
45 PAM_SERVICE = 1, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
46 PAM_USER, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
47 PAM_TTY, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
48 PAM_RHOST, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
49 PAM_CONV, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
50 PAM_AUTHTOK, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
51 PAM_OLDAUTHTOK, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
52 PAM_RUSER, |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
53 PAM_USER_PROMPT, |
109 | 54 ); |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
55 |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
56 c_enum!( |
109 | 57 /// A message style. |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
58 PAM_PROMPT_ECHO_OFF = 1, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
59 PAM_PROMPT_ECHO_ON, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
60 PAM_ERROR_MSG, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
61 PAM_TEXT_INFO, |
109 | 62 ); |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
63 |
109 | 64 define!( |
65 /// Maximum size of PAM conversation elements (suggested). | |
66 PAM_MAX_NUM_MSG = 32; | |
67 PAM_MAX_MSG_SIZE = 512; | |
68 PAM_MAX_RESP_SIZE = 512; | |
69 ); | |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
70 |
134
6c1e1bdb4164
Use standard #[cfg] directives rather than custom proc macros.
Paul Fisher <paul@pfish.zone>
parents:
133
diff
changeset
|
71 #[cfg(pam_impl = "LinuxPam")] |
109 | 72 pub use linux_pam::*; |
134
6c1e1bdb4164
Use standard #[cfg] directives rather than custom proc macros.
Paul Fisher <paul@pfish.zone>
parents:
133
diff
changeset
|
73 #[cfg(pam_impl = "LinuxPam")] |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
74 mod linux_pam { |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
75 c_enum!( |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
76 /// An error return code. |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
77 PAM_OPEN_ERR = 1, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
78 PAM_SYMBOL_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
79 PAM_SERVICE_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
80 PAM_SYSTEM_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
81 PAM_BUF_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
82 PAM_PERM_DENIED, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
83 PAM_AUTH_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
84 PAM_CRED_INSUFFICIENT, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
85 PAM_AUTHINFO_UNAVAIL, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
86 PAM_USER_UNKNOWN, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
87 PAM_MAXTRIES, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
88 PAM_NEW_AUTHTOK_REQD, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
89 PAM_ACCT_EXPIRED, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
90 PAM_SESSION_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
91 PAM_CRED_UNAVAIL, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
92 PAM_CRED_EXPIRED, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
93 PAM_CRED_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
94 PAM_NO_MODULE_DATA, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
95 PAM_CONV_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
96 PAM_AUTHTOK_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
97 PAM_AUTHTOK_RECOVERY_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
98 PAM_AUTHTOK_LOCK_BUSY, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
99 PAM_AUTHTOK_DISABLE_AGING, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
100 PAM_TRY_AGAIN, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
101 PAM_IGNORE, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
102 PAM_ABORT, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
103 PAM_AUTHTOK_EXPIRED, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
104 PAM_MODULE_UNKNOWN, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
105 PAM_BAD_ITEM, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
106 PAM_CONV_AGAIN, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
107 PAM_INCOMPLETE, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
108 _PAM_RETURN_VALUES, |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
109 ); |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
110 |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
111 define!( |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
112 /// A flag value. |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
113 PAM_SILENT = 0x8000; |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
114 PAM_DISALLOW_NULL_AUTHTOK = 0x0001; |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
115 PAM_ESTABLISH_CRED = 0x0002; |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
116 PAM_DELETE_CRED = 0x0004; |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
117 PAM_REINITIALIZE_CRED = 0x0008; |
108
e97534be35e3
Make some proc macros for doing cfg-like stuff for PAM impls.
Paul Fisher <paul@pfish.zone>
parents:
106
diff
changeset
|
118 PAM_REFRESH_CRED = 0x0010; |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
119 |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
120 PAM_CHANGE_EXPIRED_AUTHTOK = 0x0020; |
108
e97534be35e3
Make some proc macros for doing cfg-like stuff for PAM impls.
Paul Fisher <paul@pfish.zone>
parents:
106
diff
changeset
|
121 |
e97534be35e3
Make some proc macros for doing cfg-like stuff for PAM impls.
Paul Fisher <paul@pfish.zone>
parents:
106
diff
changeset
|
122 PAM_PRELIM_CHECK = 0x4000; |
e97534be35e3
Make some proc macros for doing cfg-like stuff for PAM impls.
Paul Fisher <paul@pfish.zone>
parents:
106
diff
changeset
|
123 PAM_UPDATE_AUTHTOK = 0x2000; |
e97534be35e3
Make some proc macros for doing cfg-like stuff for PAM impls.
Paul Fisher <paul@pfish.zone>
parents:
106
diff
changeset
|
124 PAM_DATA_REPLACE = 0x20000000; |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
125 ); |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
126 |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
127 c_enum!( |
127 | 128 /// An item type (Linux-only). |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
129 PAM_FAIL_DELAY = 10, |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
130 PAM_XDISPLAY, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
131 PAM_XAUTHDATA, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
132 PAM_AUTHTOK_TYPE, |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
133 ); |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
134 |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
135 /// To suppress messages in the item cleanup function. |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
136 pub const PAM_DATA_SILENT: i32 = 0x40000000; |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
137 |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
138 // Message styles |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
139 define!( |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
140 /// A message style. |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
141 PAM_RADIO_TYPE = 5; |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
142 PAM_BINARY_PROMPT = 7; |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
143 ); |
131
a632a8874131
Get all the Linux-PAM functions into libpam-sys, and get tests right.
Paul Fisher <paul@pfish.zone>
parents:
127
diff
changeset
|
144 |
a632a8874131
Get all the Linux-PAM functions into libpam-sys, and get tests right.
Paul Fisher <paul@pfish.zone>
parents:
127
diff
changeset
|
145 pub const PAM_MODUTIL_NGROUPS: i32 = 64; |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
146 } |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
147 |
134
6c1e1bdb4164
Use standard #[cfg] directives rather than custom proc macros.
Paul Fisher <paul@pfish.zone>
parents:
133
diff
changeset
|
148 #[cfg(any(pam_impl = "OpenPam", pam_impl = "Sun", pam_impl = "XSso"))] |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
149 pub use xsso_shared::*; |
134
6c1e1bdb4164
Use standard #[cfg] directives rather than custom proc macros.
Paul Fisher <paul@pfish.zone>
parents:
133
diff
changeset
|
150 #[cfg(any(pam_impl = "OpenPam", pam_impl = "Sun", pam_impl = "XSso"))] |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
151 mod xsso_shared { |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
152 c_enum!( |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
153 /// An error return code. |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
154 PAM_OPEN_ERR = 1, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
155 PAM_SYMBOL_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
156 PAM_SERVICE_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
157 PAM_SYSTEM_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
158 PAM_BUF_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
159 PAM_CONV_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
160 PAM_PERM_DENIED, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
161 PAM_MAXTRIES, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
162 PAM_AUTH_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
163 PAM_NEW_AUTHTOK_REQD, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
164 PAM_CRED_INSUFFICIENT, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
165 PAM_AUTHINFO_UNAVAIL, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
166 PAM_USER_UNKNOWN, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
167 PAM_CRED_UNAVAIL, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
168 PAM_CRED_EXPIRED, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
169 PAM_CRED_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
170 PAM_ACCT_EXPIRED, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
171 PAM_AUTHTOK_EXPIRED, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
172 PAM_SESSION_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
173 PAM_AUTHTOK_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
174 PAM_AUTHTOK_RECOVERY_ERR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
175 PAM_AUTHTOK_LOCK_BUSY, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
176 PAM_AUTHTOK_DISABLE_AGING, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
177 PAM_NO_MODULE_DATA, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
178 PAM_IGNORE, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
179 PAM_ABORT, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
180 PAM_TRY_AGAIN, |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
181 ); |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
182 // While `PAM_MODULE_UNKNOWN` and `PAM_DOMAIN_UNKNOWN` are in X/SSO, |
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
183 // Sun doesn't use them so we're omitting them here. |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
184 |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
185 /// A general flag for PAM operations. |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
186 pub const PAM_SILENT: i32 = 0x80000000u32 as i32; |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
187 |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
188 /// A flag for `pam_authenticate`. |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
189 pub const PAM_DISALLOW_NULL_AUTHTOK: i32 = 0b1; |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
190 |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
191 define!( |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
192 /// A flag for `pam_setcred`. |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
193 PAM_ESTABLISH_CRED = 0b0001; |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
194 PAM_DELETE_CRED = 0b0010; |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
195 PAM_REINITIALIZE_CRED = 0b0100; |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
196 PAM_REFRESH_CRED = 0b1000; |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
197 ); |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
198 |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
199 define!( |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
200 /// A flag for `pam_sm_chauthtok`. |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
201 PAM_PRELIM_CHECK = 0b0001; |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
202 PAM_UPDATE_AUTHTOK = 0b0010; |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
203 PAM_CHANGE_EXPIRED_AUTHTOK = 0b0100; |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
204 ); |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
205 } |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
206 |
134
6c1e1bdb4164
Use standard #[cfg] directives rather than custom proc macros.
Paul Fisher <paul@pfish.zone>
parents:
133
diff
changeset
|
207 #[cfg(pam_impl = "OpenPam")] |
109 | 208 pub use openpam::*; |
134
6c1e1bdb4164
Use standard #[cfg] directives rather than custom proc macros.
Paul Fisher <paul@pfish.zone>
parents:
133
diff
changeset
|
209 #[cfg(pam_impl = "OpenPam")] |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
210 mod openpam { |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
211 c_enum!( |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
212 /// An error return code. |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
213 PAM_MODULE_UNKNOWN = 28, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
214 PAM_DOMAIN_UNKNOWN, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
215 PAM_BAD_HANDLE, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
216 PAM_BAD_ITEM, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
217 PAM_BAD_FEATURE, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
218 PAM_BAD_CONSTANT, |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
219 ); |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
220 /// The total number of PAM error codes (including success). |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
221 pub const PAM_NUM_ERRORS: i32 = 34; |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
222 |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
223 c_enum!( |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
224 /// An item type. |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
225 PAM_REPOSITORY = 10, |
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
226 PAM_AUTHTOK_PROMPT, |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
227 PAM_OLDAUTHTOK_PROMPT, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
228 PAM_HOST, |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
229 ); |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
230 /// The total number of PAM items. |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
231 pub const PAM_NUM_ITEMS: i32 = 14; |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
232 |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
233 c_enum!( |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
234 /// An optional OpenPAM feature. |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
235 OPENPAM_RESTRICT_SERVICE_NAME, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
236 OPENPAM_VERIFY_POLICY_FILE, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
237 OPENPAM_RESTRICT_MODULE_NAME, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
238 OPENPAM_VERIFY_MODULE_FILE, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
239 OPENPAM_FALLBACK_TO_OTHER, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
240 ); |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
241 /// The number of optional OpenPAM features. |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
242 pub const OPENPAM_NUM_FEATURES: i32 = 5; |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
243 |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
244 c_enum!( |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
245 /// Log level. |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
246 PAM_LOG_LIBDEBUG = -1, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
247 PAM_LOG_DEBUG, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
248 PAM_LOG_VERBOSE, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
249 PAM_LOG_NOTICE, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
250 PAM_LOG_ERROR, |
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
251 ); |
133
32b2a545ca3e
Add functions and constants from openpam.h.
Paul Fisher <paul@pfish.zone>
parents:
132
diff
changeset
|
252 |
132
0b6a17f8c894
Get constant test working again with OpenPAM.
Paul Fisher <paul@pfish.zone>
parents:
131
diff
changeset
|
253 c_enum!( |
0b6a17f8c894
Get constant test working again with OpenPAM.
Paul Fisher <paul@pfish.zone>
parents:
131
diff
changeset
|
254 /// PAM primitives. |
0b6a17f8c894
Get constant test working again with OpenPAM.
Paul Fisher <paul@pfish.zone>
parents:
131
diff
changeset
|
255 PAM_SM_AUTHENTICATE, |
0b6a17f8c894
Get constant test working again with OpenPAM.
Paul Fisher <paul@pfish.zone>
parents:
131
diff
changeset
|
256 PAM_SM_SETCRED, |
0b6a17f8c894
Get constant test working again with OpenPAM.
Paul Fisher <paul@pfish.zone>
parents:
131
diff
changeset
|
257 PAM_SM_ACCT_MGMT, |
0b6a17f8c894
Get constant test working again with OpenPAM.
Paul Fisher <paul@pfish.zone>
parents:
131
diff
changeset
|
258 PAM_SM_OPEN_SESSION, |
0b6a17f8c894
Get constant test working again with OpenPAM.
Paul Fisher <paul@pfish.zone>
parents:
131
diff
changeset
|
259 PAM_SM_CLOSE_SESSION, |
0b6a17f8c894
Get constant test working again with OpenPAM.
Paul Fisher <paul@pfish.zone>
parents:
131
diff
changeset
|
260 PAM_SM_CHAUTHTOK, |
0b6a17f8c894
Get constant test working again with OpenPAM.
Paul Fisher <paul@pfish.zone>
parents:
131
diff
changeset
|
261 ); |
0b6a17f8c894
Get constant test working again with OpenPAM.
Paul Fisher <paul@pfish.zone>
parents:
131
diff
changeset
|
262 /// The number of PAM primitives. |
0b6a17f8c894
Get constant test working again with OpenPAM.
Paul Fisher <paul@pfish.zone>
parents:
131
diff
changeset
|
263 pub const PAM_NUM_PRIMITIVES: i32 = 6; |
106
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
264 } |
49d9e2b5c189
An irresponsible mix of implementing libpam-sys and other stuff.
Paul Fisher <paul@pfish.zone>
parents:
diff
changeset
|
265 |
112
82995b4dccee
Finish renaming "illumos" to "sun".
Paul Fisher <paul@pfish.zone>
parents:
110
diff
changeset
|
266 /// Constants exclusive to Illumos. |
134
6c1e1bdb4164
Use standard #[cfg] directives rather than custom proc macros.
Paul Fisher <paul@pfish.zone>
parents:
133
diff
changeset
|
267 #[cfg(pam_impl = "Sun")] |
112
82995b4dccee
Finish renaming "illumos" to "sun".
Paul Fisher <paul@pfish.zone>
parents:
110
diff
changeset
|
268 pub use sun::*; |
134
6c1e1bdb4164
Use standard #[cfg] directives rather than custom proc macros.
Paul Fisher <paul@pfish.zone>
parents:
133
diff
changeset
|
269 #[cfg(pam_impl = "Sun")] |
112
82995b4dccee
Finish renaming "illumos" to "sun".
Paul Fisher <paul@pfish.zone>
parents:
110
diff
changeset
|
270 mod sun { |
82995b4dccee
Finish renaming "illumos" to "sun".
Paul Fisher <paul@pfish.zone>
parents:
110
diff
changeset
|
271 /// The total number of PAM error codes. |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
272 pub const PAM_TOTAL_ERRNUM: i32 = 28; |
112
82995b4dccee
Finish renaming "illumos" to "sun".
Paul Fisher <paul@pfish.zone>
parents:
110
diff
changeset
|
273 |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
274 c_enum!( |
112
82995b4dccee
Finish renaming "illumos" to "sun".
Paul Fisher <paul@pfish.zone>
parents:
110
diff
changeset
|
275 /// An item type. |
118
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
276 PAM_REPOSITORY = 10, |
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
277 PAM_RESOURCE, |
39760dfc9b3b
Detect PAM library based only on system lib; rename minimal lib to XSso.
Paul Fisher <paul@pfish.zone>
parents:
113
diff
changeset
|
278 PAM_AUSER, |
112
82995b4dccee
Finish renaming "illumos" to "sun".
Paul Fisher <paul@pfish.zone>
parents:
110
diff
changeset
|
279 ); |
82995b4dccee
Finish renaming "illumos" to "sun".
Paul Fisher <paul@pfish.zone>
parents:
110
diff
changeset
|
280 |
82995b4dccee
Finish renaming "illumos" to "sun".
Paul Fisher <paul@pfish.zone>
parents:
110
diff
changeset
|
281 /// A flag for `pam_chauthtok`. |
113
178310336596
Fix up more constants, make things i32 rather than u32.
Paul Fisher <paul@pfish.zone>
parents:
112
diff
changeset
|
282 pub const PAM_NO_AUTHTOK_CHECK: i32 = 0b1000; |
112
82995b4dccee
Finish renaming "illumos" to "sun".
Paul Fisher <paul@pfish.zone>
parents:
110
diff
changeset
|
283 } |