1 .rn '' }` |
1 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.13 |
2 ''' $RCSfile$$Revision$$Date$ |
2 .\" |
3 ''' |
3 .\" Standard preamble: |
4 ''' $Log$ |
4 .\" ======================================================================== |
5 ''' |
5 .de Sh \" Subsection heading |
6 .de Sh |
|
7 .br |
6 .br |
8 .if t .Sp |
7 .if t .Sp |
9 .ne 5 |
8 .ne 5 |
10 .PP |
9 .PP |
11 \fB\\$1\fR |
10 \fB\\$1\fR |
12 .PP |
11 .PP |
13 .. |
12 .. |
14 .de Sp |
13 .de Sp \" Vertical space (when we can't use .PP) |
15 .if t .sp .5v |
14 .if t .sp .5v |
16 .if n .sp |
15 .if n .sp |
17 .. |
16 .. |
18 .de Ip |
17 .de Vb \" Begin verbatim text |
19 .br |
|
20 .ie \\n(.$>=3 .ne \\$3 |
|
21 .el .ne 3 |
|
22 .IP "\\$1" \\$2 |
|
23 .. |
|
24 .de Vb |
|
25 .ft CW |
18 .ft CW |
26 .nf |
19 .nf |
27 .ne \\$1 |
20 .ne \\$1 |
28 .. |
21 .. |
29 .de Ve |
22 .de Ve \" End verbatim text |
30 .ft R |
23 .ft R |
31 |
|
32 .fi |
24 .fi |
33 .. |
25 .. |
34 ''' |
26 .\" Set up some character translations and predefined strings. \*(-- will |
35 ''' |
27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left |
36 ''' Set up \*(-- to give an unbreakable dash; |
28 .\" double quote, and \*(R" will give a right double quote. | will give a |
37 ''' string Tr holds user defined translation string. |
29 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to |
38 ''' Bell System Logo is used as a dummy character. |
30 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' |
39 ''' |
31 .\" expand to `' in nroff, nothing in troff, for use with C<>. |
40 .tr \(*W-|\(bv\*(Tr |
32 .tr \(*W-|\(bv\*(Tr |
|
33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' |
41 .ie n \{\ |
34 .ie n \{\ |
42 .ds -- \(*W- |
35 . ds -- \(*W- |
43 .ds PI pi |
36 . ds PI pi |
44 .if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch |
37 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch |
45 .if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch |
38 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch |
46 .ds L" "" |
39 . ds L" "" |
47 .ds R" "" |
40 . ds R" "" |
48 ''' \*(M", \*(S", \*(N" and \*(T" are the equivalent of |
41 . ds C` "" |
49 ''' \*(L" and \*(R", except that they are used on ".xx" lines, |
42 . ds C' "" |
50 ''' such as .IP and .SH, which do another additional levels of |
|
51 ''' double-quote interpretation |
|
52 .ds M" """ |
|
53 .ds S" """ |
|
54 .ds N" """"" |
|
55 .ds T" """"" |
|
56 .ds L' ' |
|
57 .ds R' ' |
|
58 .ds M' ' |
|
59 .ds S' ' |
|
60 .ds N' ' |
|
61 .ds T' ' |
|
62 'br\} |
43 'br\} |
63 .el\{\ |
44 .el\{\ |
64 .ds -- \(em\| |
45 . ds -- \|\(em\| |
65 .tr \*(Tr |
46 . ds PI \(*p |
66 .ds L" `` |
47 . ds L" `` |
67 .ds R" '' |
48 . ds R" '' |
68 .ds M" `` |
|
69 .ds S" '' |
|
70 .ds N" `` |
|
71 .ds T" '' |
|
72 .ds L' ` |
|
73 .ds R' ' |
|
74 .ds M' ` |
|
75 .ds S' ' |
|
76 .ds N' ` |
|
77 .ds T' ' |
|
78 .ds PI \(*p |
|
79 'br\} |
49 'br\} |
80 .\" If the F register is turned on, we'll generate |
50 .\" |
81 .\" index entries out stderr for the following things: |
51 .\" If the F register is turned on, we'll generate index entries on stderr for |
82 .\" TH Title |
52 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index |
83 .\" SH Header |
53 .\" entries marked with X<> in POD. Of course, you'll have to process the |
84 .\" Sh Subsection |
54 .\" output yourself in some meaningful fashion. |
85 .\" Ip Item |
55 .if \nF \{\ |
86 .\" X<> Xref (embedded |
56 . de IX |
87 .\" Of course, you have to process the output yourself |
57 . tm Index:\\$1\t\\n%\t"\\$2" |
88 .\" in some meaninful fashion. |
58 .. |
89 .if \nF \{ |
59 . nr % 0 |
90 .de IX |
60 . rr F |
91 .tm Index:\\$1\t\\n%\t"\\$2" |
61 .\} |
92 .. |
62 .\" |
93 .nr % 0 |
63 .\" For nroff, turn off justification. Always turn off hyphenation; it makes |
94 .rr F |
64 .\" way too many mistakes in technical documents. |
95 .\} |
65 .hy 0 |
96 .TH CHECKVPW 1 "vmailmgr 0.96.9" "2000-09-30" "VMailMgr Tools Documentation" |
|
97 .UC |
|
98 .if n .hy 0 |
|
99 .if n .na |
66 .if n .na |
100 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' |
67 .\" |
101 .de CQ \" put $1 in typewriter font |
68 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). |
102 .ft CW |
69 .\" Fear. Run. Save yourself. No user-serviceable parts. |
103 'if n "\c |
70 . \" fudge factors for nroff and troff |
104 'if t \\&\\$1\c |
|
105 'if n \\&\\$1\c |
|
106 'if n \&" |
|
107 \\&\\$2 \\$3 \\$4 \\$5 \\$6 \\$7 |
|
108 '.ft R |
|
109 .. |
|
110 .\" @(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2 |
|
111 . \" AM - accent mark definitions |
|
112 .bd B 3 |
|
113 . \" fudge factors for nroff and troff |
|
114 .if n \{\ |
71 .if n \{\ |
115 . ds #H 0 |
72 . ds #H 0 |
116 . ds #V .8m |
73 . ds #V .8m |
117 . ds #F .3m |
74 . ds #F .3m |
118 . ds #[ \f1 |
75 . ds #[ \f1 |
119 . ds #] \fP |
76 . ds #] \fP |
120 .\} |
77 .\} |
121 .if t \{\ |
78 .if t \{\ |
122 . ds #H ((1u-(\\\\n(.fu%2u))*.13m) |
79 . ds #H ((1u-(\\\\n(.fu%2u))*.13m) |
123 . ds #V .6m |
80 . ds #V .6m |
124 . ds #F 0 |
81 . ds #F 0 |
125 . ds #[ \& |
82 . ds #[ \& |
126 . ds #] \& |
83 . ds #] \& |
127 .\} |
84 .\} |
128 . \" simple accents for nroff and troff |
85 . \" simple accents for nroff and troff |
129 .if n \{\ |
86 .if n \{\ |
130 . ds ' \& |
87 . ds ' \& |
131 . ds ` \& |
88 . ds ` \& |
132 . ds ^ \& |
89 . ds ^ \& |
133 . ds , \& |
90 . ds , \& |
134 . ds ~ ~ |
91 . ds ~ ~ |
135 . ds ? ? |
92 . ds / |
136 . ds ! ! |
|
137 . ds / |
|
138 . ds q |
|
139 .\} |
93 .\} |
140 .if t \{\ |
94 .if t \{\ |
141 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" |
95 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" |
142 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' |
96 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' |
143 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' |
97 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' |
144 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' |
98 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' |
145 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' |
99 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' |
146 . ds ? \s-2c\h'-\w'c'u*7/10'\u\h'\*(#H'\zi\d\s+2\h'\w'c'u*8/10' |
100 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' |
147 . ds ! \s-2\(or\s+2\h'-\w'\(or'u'\v'-.8m'.\v'.8m' |
101 .\} |
148 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' |
102 . \" troff and (daisy-wheel) nroff accents |
149 . ds q o\h'-\w'o'u*8/10'\s-4\v'.4m'\z\(*i\v'-.4m'\s+4\h'\w'o'u*8/10' |
|
150 .\} |
|
151 . \" troff and (daisy-wheel) nroff accents |
|
152 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' |
103 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' |
153 .ds 8 \h'\*(#H'\(*b\h'-\*(#H' |
104 .ds 8 \h'\*(#H'\(*b\h'-\*(#H' |
154 .ds v \\k:\h'-(\\n(.wu*9/10-\*(#H)'\v'-\*(#V'\*(#[\s-4v\s0\v'\*(#V'\h'|\\n:u'\*(#] |
|
155 .ds _ \\k:\h'-(\\n(.wu*9/10-\*(#H+(\*(#F*2/3))'\v'-.4m'\z\(hy\v'.4m'\h'|\\n:u' |
|
156 .ds . \\k:\h'-(\\n(.wu*8/10)'\v'\*(#V*4/10'\z.\v'-\*(#V*4/10'\h'|\\n:u' |
|
157 .ds 3 \*(#[\v'.2m'\s-2\&3\s0\v'-.2m'\*(#] |
|
158 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] |
105 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] |
159 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' |
106 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' |
160 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' |
107 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' |
161 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] |
108 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] |
162 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] |
109 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] |
163 .ds ae a\h'-(\w'a'u*4/10)'e |
110 .ds ae a\h'-(\w'a'u*4/10)'e |
164 .ds Ae A\h'-(\w'A'u*4/10)'E |
111 .ds Ae A\h'-(\w'A'u*4/10)'E |
165 .ds oe o\h'-(\w'o'u*4/10)'e |
112 . \" corrections for vroff |
166 .ds Oe O\h'-(\w'O'u*4/10)'E |
|
167 . \" corrections for vroff |
|
168 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' |
113 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' |
169 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' |
114 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' |
170 . \" for low resolution devices (crt and lpr) |
115 . \" for low resolution devices (crt and lpr) |
171 .if \n(.H>23 .if \n(.V>19 \ |
116 .if \n(.H>23 .if \n(.V>19 \ |
172 \{\ |
117 \{\ |
173 . ds : e |
118 . ds : e |
174 . ds 8 ss |
119 . ds 8 ss |
175 . ds v \h'-1'\o'\(aa\(ga' |
120 . ds o a |
176 . ds _ \h'-1'^ |
121 . ds d- d\h'-1'\(ga |
177 . ds . \h'-1'. |
122 . ds D- D\h'-1'\(hy |
178 . ds 3 3 |
123 . ds th \o'bp' |
179 . ds o a |
124 . ds Th \o'LP' |
180 . ds d- d\h'-1'\(ga |
125 . ds ae ae |
181 . ds D- D\h'-1'\(hy |
126 . ds Ae AE |
182 . ds th \o'bp' |
|
183 . ds Th \o'LP' |
|
184 . ds ae ae |
|
185 . ds Ae AE |
|
186 . ds oe oe |
|
187 . ds Oe OE |
|
188 .\} |
127 .\} |
189 .rm #[ #] #H #V #F C |
128 .rm #[ #] #H #V #F C |
|
129 .\" ======================================================================== |
|
130 .\" |
|
131 .IX Title "CHECKVPW 1" |
|
132 .TH CHECKVPW 1 "2003-12-01" "vmailmgr 0.97" "VMailMgr Tools Documentation" |
190 .SH "NAME" |
133 .SH "NAME" |
191 checkvpw \- check passwords for virtual and non-virtual users |
134 checkvpw \- check passwords for virtual and non\-virtual users |
192 .SH "SYNOPSIS" |
135 .SH "SYNOPSIS" |
193 \fBcheckvpw\fR \fBsubprogram\fR [\fBarguments...\fR] |
136 .IX Header "SYNOPSIS" |
|
137 \&\fBcheckvpw\fR \fBsubprogram\fR [\fBarguments...\fR] |
194 .SH "DESCRIPTION" |
138 .SH "DESCRIPTION" |
|
139 .IX Header "DESCRIPTION" |
195 This program is a drop-in replacement for the standard checkpassword, |
140 This program is a drop-in replacement for the standard checkpassword, |
196 written by D. J. Bernstein (djb@pobox.com). |
141 written by D. J. Bernstein (djb@pobox.com). |
197 In the absence of virtual hosting (determined by the use of |
142 In the absence of virtual hosting (determined by the use of |
198 \fI/var/qmail/control/virtualdomainss\fR and IP aliases), |
143 \&\fI/var/qmail/control/virtualdomainss\fR and \s-1IP\s0 aliases), |
199 it behaves identically to checkpassword. |
144 it behaves identically to checkpassword. |
200 When virtual hosting is used, it permits logins from a unique set of |
145 When virtual hosting is used, it permits logins from a unique set of |
201 users for each of the aliases. |
146 users for each of the aliases. |
202 .PP |
147 .PP |
203 \fIcheckvpw\fR must be run from either the \fItcp-env\fR program |
148 \&\fIcheckvpw\fR must be run from either the \fItcp-env\fR program |
204 (part of the \fIqmail\fR |
149 (part of the \fIqmail\fR |
205 package) or from a suitable substitute, such as \fItcpserver\fR |
150 package) or from a suitable substitute, such as \fItcpserver\fR |
206 (part of the \fIucspi-tcp\fR package). |
151 (part of the \fIucspi-tcp\fR package). |
207 These packages are used to determine to |
152 These packages are used to determine to |
208 which address a remote host is connecting. |
153 which address a remote host is connecting. |
209 \fIcheckvpw\fR must also be passed the checkpassword-compatible |
154 \&\fIcheckvpw\fR must also be passed the checkpassword-compatible |
210 authentication data on file descriptor three. |
155 authentication data on file descriptor three. |
211 This can be accomplished by running it from a tool such as |
156 This can be accomplished by running it from a tool such as |
212 \fIqmail-popup\fR. |
157 \&\fIqmail-popup\fR. |
213 .PP |
158 .PP |
214 \fIcheckvpw\fR accepts a command line in the following format: |
159 \&\fIcheckvpw\fR accepts a command line in the following format: |
215 .PP |
160 .PP |
216 .Vb 1 |
161 .Vb 1 |
217 \& checkvpw [subprogram] [arguments...] |
162 \& checkvpw [subprogram] [arguments...] |
218 .Ve |
163 .Ve |
|
164 .PP |
219 If the authentication information is valid, the subprogram is run, |
165 If the authentication information is valid, the subprogram is run, |
220 otherwise \fIcheckvpw\fR returns an error to the program that invokes it. |
166 otherwise \fIcheckvpw\fR returns an error to the program that invokes it. |
221 .PP |
167 .PP |
222 If the user name contains the character \f(CW@\fR, the host name |
168 If the user name contains the character \f(CW\*(C`@\*(C'\fR, the host name |
223 reported by \fItcp-env\fR is replaced by the string following the |
169 reported by \fItcp-env\fR is replaced by the string following the |
224 \f(CW@\fR, and the user name is replaced by the string preceding the |
170 \&\f(CW\*(C`@\*(C'\fR, and the user name is replaced by the string preceding the |
225 \f(CW@\fR. |
171 \&\f(CW\*(C`@\*(C'\fR. |
226 If the local host name reported by \fItcp-env\fR matches one of those |
172 If the local host name reported by \fItcp-env\fR matches one of those |
227 in \fI/var/qmail/control/virtualdomains\fR, \fIcheckvpw\fR prepends the |
173 in \fI/var/qmail/control/virtualdomains\fR, \fIcheckvpw\fR prepends the |
228 \fIprepend\fR string associated with the host name to the given user |
174 \&\fIprepend\fR string associated with the host name to the given user |
229 name. |
175 name. |
230 Wildcards in \fIvirtualdomains\fR are permitted and are handled in the |
176 Wildcards in \fIvirtualdomains\fR are permitted and are handled in the |
231 same way \fIqmail\fR handles them (see the \fIqmail-send\fR manpage). |
177 same way \fIqmail\fR handles them (see qmail-send). |
232 For example, if the line \f(CW.bar.com:bar\fR appears in the virtual hosts |
178 For example, if the line \f(CW\*(C`.bar.com:bar\*(C'\fR appears in the virtual hosts |
233 file, it matches \f(CWone.two.bar.com\fR but not \f(CWbar.com\fR. |
179 file, it matches \f(CW\*(C`one.two.bar.com\*(C'\fR but not \f(CW\*(C`bar.com\*(C'\fR. |
234 .PP |
180 .PP |
235 If the user name resulting from the above step appears in the system |
181 If the user name resulting from the above step appears in the system |
236 password file (typically \fI/etc/passwd\fR), the user is treated as a |
182 password file (typically \fI/etc/passwd\fR), the user is treated as a |
237 local user and authenticated with the information from that file. |
183 local user and authenticated with the information from that file. |
238 If this authentication succeeds, the mail directory is set to the |
184 If this authentication succeeds, the mail directory is set to the |
239 subdirectory named on the command line. |
185 subdirectory named on the command line. |
240 If the user name does not appear in the system password file and is of |
186 If the user name does not appear in the system password file and is of |
241 the form \f(CWname-ext\fR where \f(CWname\fR does appear in the password |
187 the form \f(CW\*(C`name\-ext\*(C'\fR where \f(CW\*(C`name\*(C'\fR does appear in the password |
242 file, the user is treated as a \*(L"virtual\*(R" user and authenticated with the |
188 file, the user is treated as a \*(L"virtual\*(R" user and authenticated with the |
243 information from a file named \fIpasswd\fR in the user's home directory. |
189 information from a file named \fIpasswd\fR in the user's home directory. |
244 If this authentication succeeds, the mail directory is set to the |
190 If this authentication succeeds, the mail directory is set to the |
245 subdirectory \fIusers/ext/\fR in the user's home directory, where |
191 subdirectory \fIusers/ext/\fR in the user's home directory, where |
246 \f(CWext\fR is from the above step. |
192 \&\f(CW\*(C`ext\*(C'\fR is from the above step. |
247 .PP |
193 .PP |
248 \fIcheckvpw\fR also does some rewriting on the arguments of the |
194 \&\fIcheckvpw\fR also does some rewriting on the arguments of the |
249 subprogram. |
195 subprogram. |
250 Any argument matching the string \*(L"\f(CWmaildir\fR\*(R" (ignoring case) is |
196 Any argument matching the string "\f(CW\*(C`maildir\*(C'\fR" (ignoring case) is |
251 replaced with the full path of the mail directory, as determined by the |
197 replaced with the full path of the mail directory, as determined by the |
252 steps above. |
198 steps above. |
253 .PP |
199 .PP |
254 This program may be invoked in combination with \fIqmail-popup\fR and |
200 This program may be invoked in combination with \fIqmail-popup\fR and |
255 \fIqmail-pop3d\fR from inetd by placing the following line in the |
201 \&\fIqmail\-pop3d\fR from inetd by placing the following line in the |
256 \fI/etc/inetd.conf\fR configuration file (all one line): |
202 \&\fI/etc/inetd.conf\fR configuration file (all one line): |
257 .PP |
203 .PP |
258 .Vb 1 |
204 .Vb 1 |
259 \& pop-3 stream tcp nowait root /var/qmail/bin/tcp-env tcp-env -R /var/qmail/bin/qmail-popup <hostname> /usr/bin/checkvpw /var/qmail/bin/qmail-pop3d Maildir/ |
205 \& pop-3 stream tcp nowait root /var/qmail/bin/tcp-env tcp-env -R /var/qmail/bin/qmail-popup <hostname> /usr/bin/checkvpw /var/qmail/bin/qmail-pop3d Maildir/ |
260 .Ve |
206 .Ve |
261 .SH "RETURN VALUE" |
207 .SH "RETURN VALUE" |
|
208 .IX Header "RETURN VALUE" |
262 0 if the user is successfully authenticated, nonzero if any error |
209 0 if the user is successfully authenticated, nonzero if any error |
263 occurred. Exit code 1 indicates that a bad password was given, 2 |
210 occurred. Exit code 1 indicates that a bad password was given, 2 |
264 indicates that the program was used incorrectly, and 111 indicates |
211 indicates that the program was used incorrectly, and 111 indicates |
265 a temporary failure. |
212 a temporary failure. |
266 .SH "ENVIRONMENT" |
213 .SH "ENVIRONMENT" |
267 \fIcheckvpw\fR requires that \f(CWTCPLOCALHOST\fR be set to the host name of |
214 .IX Header "ENVIRONMENT" |
|
215 \&\fIcheckvpw\fR requires that \f(CW\*(C`TCPLOCALHOST\*(C'\fR be set to the host name of |
268 the local address of the connection. |
216 the local address of the connection. |
269 .SH "SEE ALSO" |
217 .SH "SEE ALSO" |
270 \fIvdeliver\fR\|(1) |
218 .IX Header "SEE ALSO" |
|
219 \&\fIvdeliver\fR\|(1) |
271 .SH "AUTHOR" |
220 .SH "AUTHOR" |
|
221 .IX Header "AUTHOR" |
272 Bruce Guenter <\fIbruceg@em.ca\fR>. |
222 Bruce Guenter <\fIbruceg@em.ca\fR>. |
273 |
|
274 .rn }` '' |
|
275 .IX Title "CHECKVPW 1" |
|
276 .IX Name "checkvpw - check passwords for virtual and non-virtual users" |
|
277 |
|
278 .IX Header "NAME" |
|
279 |
|
280 .IX Header "SYNOPSIS" |
|
281 |
|
282 .IX Header "DESCRIPTION" |
|
283 |
|
284 .IX Header "RETURN VALUE" |
|
285 |
|
286 .IX Header "ENVIRONMENT" |
|
287 |
|
288 .IX Header "SEE ALSO" |
|
289 |
|
290 .IX Header "AUTHOR" |
|
291 |
|