hcoop release
[hcoop/debian/courier-authlib.git] / auth_enumerate.3
CommitLineData
b0322a85 1'\" t
d9898ee8 2.\" <!-- Copyright 2004 Double Precision, Inc. See COPYING for -->
3.\" <!-- distribution information. -->
4.\" Title: auth_enumerate
0e333c05
CE
5.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
6.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
7.\" Date: 09/08/2017
d9898ee8 8.\" Manual: Double Precision, Inc.
9.\" Source: Double Precision, Inc.
b0322a85 10.\" Language: English
d9898ee8 11.\"
0e333c05 12.TH "AUTH_ENUMERATE" "3" "09/08/2017" "Double Precision, Inc." "Double Precision, Inc."
b0322a85
CE
13.\" -----------------------------------------------------------------
14.\" * Define some portability stuff
15.\" -----------------------------------------------------------------
16.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
17.\" http://bugs.debian.org/507673
18.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
19.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
20.ie \n(.g .ds Aq \(aq
21.el .ds Aq '
22.\" -----------------------------------------------------------------
23.\" * set default formatting
24.\" -----------------------------------------------------------------
d9898ee8 25.\" disable hyphenation
26.nh
27.\" disable justification (adjust text to left margin only)
28.ad l
b0322a85
CE
29.\" -----------------------------------------------------------------
30.\" * MAIN CONTENT STARTS HERE *
31.\" -----------------------------------------------------------------
d9898ee8 32.SH "NAME"
b0322a85 33auth_enumerate \- Obtain list of accounts
d9898ee8 34.SH "SYNOPSIS"
35.sp
d9898ee8 36.nf
b0322a85 37#include <courierauth\&.h>
d9898ee8 38.fi
b0322a85 39.HP \w'auth_enumerate('u
dd184caf 40.BI "auth_enumerate(int\ " "(*callback_func)" "\ (const\ char\ *,\ uid_t,\ gid_t,\ const\ char\ *,\ const\ char\ *,\ const\ char\ *,\ void\ *), void\ *" "callback_arg" ");"
d9898ee8 41.SH "DESCRIPTION"
42.PP
d9898ee8 43\fBauth_enumerate\fR
b0322a85 44enumerates all of the available accounts\&.
d9898ee8 45\fBauth_enumerate\fR
46repeatedly calls
b0322a85 47\fBcallback_func\fR, once for each account\&.
d9898ee8 48\fBcallback_func\fR
49receives the following arguments:
8d138742 50.sp
d9898ee8 51.RS 4
b0322a85
CE
52.ie n \{\
53\h'-04'\(bu\h'+03'\c
54.\}
55.el \{\
56.sp -1
57.IP \(bu 2.3
58.\}
59Account name\&.
d9898ee8 60.RE
8d138742 61.sp
d9898ee8 62.RS 4
b0322a85
CE
63.ie n \{\
64\h'-04'\(bu\h'+03'\c
65.\}
66.el \{\
67.sp -1
68.IP \(bu 2.3
69.\}
70Account\*(Aqs numeric userid\&.
d9898ee8 71.RE
8d138742 72.sp
d9898ee8 73.RS 4
b0322a85
CE
74.ie n \{\
75\h'-04'\(bu\h'+03'\c
76.\}
77.el \{\
78.sp -1
79.IP \(bu 2.3
80.\}
81Account\*(Aqs numeric groupid\&.
d9898ee8 82.RE
8d138742 83.sp
d9898ee8 84.RS 4
b0322a85
CE
85.ie n \{\
86\h'-04'\(bu\h'+03'\c
87.\}
88.el \{\
89.sp -1
90.IP \(bu 2.3
91.\}
92Account\*(Aqs home directory\&.
d9898ee8 93.RE
8d138742 94.sp
d9898ee8 95.RS 4
b0322a85
CE
96.ie n \{\
97\h'-04'\(bu\h'+03'\c
98.\}
99.el \{\
100.sp -1
101.IP \(bu 2.3
102.\}
103Account\*(Aqs mailbox (if defined, may be
104NULL, which indicates the default mailbox location)\&.
d9898ee8 105.RE
8d138742 106.sp
d9898ee8 107.RS 4
b0322a85
CE
108.ie n \{\
109\h'-04'\(bu\h'+03'\c
110.\}
111.el \{\
112.sp -1
113.IP \(bu 2.3
114.\}
115Account\*(Aqs options string (if defined, may be
d9898ee8 116NULL)
117.RE
8d138742 118.sp
d9898ee8 119.RS 4
b0322a85
CE
120.ie n \{\
121\h'-04'\(bu\h'+03'\c
122.\}
123.el \{\
124.sp -1
125.IP \(bu 2.3
126.\}
127\fIcallback_arg\fR, verbatim\&.
d9898ee8 128.RE
129.PP
130After invoking
131\fBcallback_func\fR
132for the last account,
133\fBauth_enumerate\fR
134invokes
135\fBcallback_func\fR
136one more time with all parameters set to
137NULL
b0322a85 138or 0\&.
d9898ee8 139.PP
140If
141\fBauth_enumerate\fR
142encounters an error it will terminate without calling
143\fBcallback_func\fR
144with all
145NULL
b0322a85
CE
146or 0 parameters\&. This can be used to determine whether a partial list of accounts was received\&.
147.if n \{\
d9898ee8 148.sp
b0322a85
CE
149.\}
150.RS 4
d9898ee8 151.it 1 an-trap
152.nr an-no-space-flag 1
153.nr an-break-flag 1
154.br
b0322a85
CE
155.ps +1
156\fBNote\fR
157.ps -1
158.br
d9898ee8 159.PP
b0322a85
CE
160Some back\-end Courier authentication modules do not implement account enumeration, so this function may not be available in all configurations\&.
161.sp .5v
162.RE
d9898ee8 163.SH "SEE ALSO"
164.PP
b0322a85
CE
165\m[blue]\fB\fBauthlib\fR(3)\fR\m[]\&\s-2\u[1]\d\s+2,
166\m[blue]\fB\fBauth_generic\fR(3)\fR\m[]\&\s-2\u[2]\d\s+2,
167\m[blue]\fB\fBauth_login\fR(3)\fR\m[]\&\s-2\u[3]\d\s+2,
168\m[blue]\fB\fBauth_getuserinfo\fR(3)\fR\m[]\&\s-2\u[4]\d\s+2,
169\m[blue]\fB\fBauth_passwd\fR(3)\fR\m[]\&\s-2\u[5]\d\s+2\&.
8d138742 170.SH "NOTES"
d9898ee8 171.IP " 1." 4
172\fBauthlib\fR(3)
173.RS 4
d50284c4 174\%http://www.courier-mta.org/authlib/authlib.html
d9898ee8 175.RE
176.IP " 2." 4
177\fBauth_generic\fR(3)
178.RS 4
d50284c4 179\%http://www.courier-mta.org/authlib/auth_generic.html
d9898ee8 180.RE
181.IP " 3." 4
182\fBauth_login\fR(3)
183.RS 4
d50284c4 184\%http://www.courier-mta.org/authlib/auth_login.html
d9898ee8 185.RE
186.IP " 4." 4
187\fBauth_getuserinfo\fR(3)
188.RS 4
d50284c4 189\%http://www.courier-mta.org/authlib/auth_getuserinfo.html
d9898ee8 190.RE
191.IP " 5." 4
192\fBauth_passwd\fR(3)
193.RS 4
d50284c4 194\%http://www.courier-mta.org/authlib/auth_passwd.html
d9898ee8 195.RE