server: intialize aux_header buffer to null if the data is missing.
[tridge/openchange.git] / branches / plugfest / doc / man / man1 / openchangepfadmin.1
1 .\" OpenChange Project Tools Man Pages
2 .\"
3 .\" This manpage is Copyright (C) 2007 Julien Kerihuel;
4 .\"
5 .\" Permission is granted to make and distribute verbatim copies of this
6 .\" manual provided the copyright notice and this permission notice are
7 .\" preserved on all copies.
8 .\"
9 .\" Permission is granted to copy and distribute modified versions of this
10 .\" manual under the conditions for verbatim copying, provided that the
11 .\" entire resulting derived work is distributed under the terms of a
12 .\" permission notice identical to this one.
13 .\" 
14 .\" Since the OpenChange and Samba4 libraries are constantly changing, this
15 .\" manual page may be incorrect or out-of-date.  The author(s) assume no
16 .\" responsibility for errors or omissions, or for damages resulting from
17 .\" the use of the information contained herein.  The author(s) may not
18 .\" have taken the same level of care in the production of this manual,
19 .\" which is licensed free of charge, as they might when working
20 .\" professionally.
21 .\" 
22 .\" Formatted or processed versions of this manual, if unaccompanied by
23 .\" the source, must acknowledge the copyright and authors of this work.
24 .\"
25 .\" Process this file with
26 .\" groff -man -Tascii openchangepfadmin.1
27 .\"
28 .TH OPENCHANGEPFADMIN 1 2007-11-14 "OpenChange libmapi 0.8" "OpenChange Users' Manual"
29
30 .SH NAME
31 openchangepfadmin \- Exchange users and Public Folder administration tool
32
33 .SH SYNOPSIS
34 .nf
35 openchangepfadmin [-?] [-?|--help] [--usage] [-f|--database PATH] [-p|--profile PROFILE]
36     [-P|--password PASSWORD] [--apassword=PASSWORD] [--adesc=DESCRIPTION] [--acomment=COMMENT]
37     [--afullname=NAME] [--list] [--mkdir] [--rmdir] [--comment=COMMENT] [--dirclass=CLASS]
38     [--adduser=USERNAME] [--rmuser=USERNAME] [--addright=RIGHT] [--rmright] [--modright=RIGHT]
39     [--debuglevel=LEVEL] [--dump-data] [--folder=FOLDER] [--username=USERNAME]
40 .fi
41
42 .SH DESCRIPTION
43 openchangepfadmin is a administrative command line tool designed to
44 facilitate user management related operations (create, delete, modify)
45 on a remote Exchange server and manage public folder store and
46 permissions.
47
48 .SH COMMANDS
49
50 .TP
51 .B --adduser=USERNAME
52 Create a Exchange user with the username specified by USERNAME
53
54 .TP
55 .B --rmuser=USERNAME
56 Delete the Exchange user account specified by USERNAME
57
58 .TP
59 .B --list
60 List Public Folder hierarchy (IPM_SUBTREE)
61
62 .TP
63 .B --mkdir
64 Create a folder in the Public Folder store
65
66 .TP
67 .B --rmdir
68 Delete a folder in the Public Folder store
69
70 .TP
71 .B --addright=RIGHT
72 Add permission and roles for a user on a Public Folder directory. 
73
74 .TP
75 .B --modright=RIGHT
76 Modify permissions and roles for a user on a Public Folder directory
77
78 .TP
79 .B --rmright
80 Delete permissions and roles for a specific user
81
82
83 .SH OPTIONS
84
85 .TP
86 .B --database=DATABASE
87 .TP
88 .B -f
89 Set the MAPI profile database. If no database is specified, then
90 openchangeclient tries to load the default one:
91 .B $HOME/.openchange/profiles.ldb
92
93 .TP
94 .B --profile=PROFILE
95 .TP
96 .B -p
97 Set the profile to use. If a profile is not specified, and one of the
98 profiles has been set as the default in the profile database (for
99 example, using mapiprofile -S), then that default profile will be
100 used.
101
102 .TP
103 .B --password
104 .TP
105 .B -P
106 Set the password for the profile to use. This can be omitted if the
107 password is stored in the profile.
108
109 .TP
110 .B --apassword=PASSWORD
111 Define the password to set for the user specified with --adduser. If
112 no password is explicitely supplied, openchangepfadmin will arbitrary
113 set a random one.
114
115 .TP
116 .B --adesc=DESCRIPTION
117 This command can only be used with --adduser and specifies a
118 description for this account
119
120 .TP
121 .B --acomment=COMMENT
122 This command can only be used with --adduser and specifies a comment
123 for this account.
124
125 .TP
126 .B --afullname=NAME
127 This command can only be used with --adduser and specifies the user
128 full name for this account.
129
130 .TP
131 .B --comment=COMMENT
132 This command can only be used with --mkdir and specifies a comment for
133 the folder.
134
135 .TP
136 .B --dirclass=CLASS
137 This command can only be used with --mkdir and specifies the container
138 class of the directory we want to create. Possible values are:
139 IPF.Appointment, IPF.Contact, IPF.Journal, IPF.Note, IPF.StickyNote,
140 IPF.Task, IPF.Post
141
142 .TP
143 .B --folder=FOLDER
144 This command can only be used with --addright, --modright and
145 --rmright. Specify the folder where permissions and roles have to be
146 changed.
147
148 .TP
149 .B --username=USERNAME
150 This command can only be used with --addright, --modright and
151 --rmright. Specify the username we want to change permissions and
152 roles for.
153
154 .TP
155 .B --dump-data
156 Dump the hex data. This is only required for debugging or educational purposes.
157
158 .TP
159 .B --debuglevel LEVEL
160 .TP
161 .B -d
162 Set the debug level.
163
164 .SH EXAMPLES
165
166 .B Creating user
167 .nf
168 openchangepfadmin --adduser=linuxowner --apassword=linuxowner   \\
169                     --adesc="Linux Owner Test account"          \\
170                     --afullname="Linux Owner"
171     mapiadmin_user_add       : MAPI_E_SUCCESS (0x0)
172 username: linuxowner
173 password: linuxowner
174 .fi
175
176 Creates a user account with username and password set to linuxowner.
177
178 .B Deleting user:
179 .nf
180 openchangepfadmin --rmuser=linuxowner
181     mapiadmin_user_del       : MAPI_E_SUCCESS (0x0)
182 .fi
183
184 .B Create Public Folder:
185 .nf
186 openchangepfadmin --mkdir --folder=public_events --dirclass=IPF.Appointment
187 .fi
188
189 Creates a folder in the Public Folder store named public_events with a
190 container class set to Appointment. This folder will display calendar
191 items.
192
193 .B Delete Public Folder:
194 .nf
195 openchangepfadmin --rmdir --folder=public_events
196 .fi
197
198 .B List Public Folder hierarchy:
199 .nf
200 openchangepfadmin --list
201 .fi
202
203 .B Add Permission:
204 .nf
205 openchangepfadmin --username=linuxowner --folder=public_events \\
206                     --addright=RoleOwner
207 Permission RoleOwner added for linuxowner on folder public_events
208 .fi
209
210 .B Modify Permission
211 .nf
212 openchangepfadmin --username=Anonymous --folder=public_events \\
213                     --modright=RoleNone
214 Permission changed to RoleNone for Anonymous on folder appointment
215 .fi
216
217 Note that you can only change permissions for a user already listed in
218 the ACL table.
219
220 .SH NOTE
221 Permissions and Roles possible values are:
222 .IP "\(bu" 2
223 RightsNone                    
224 .IP "\(bu" 2
225 RightsReadItems               
226 .IP "\(bu" 2
227 RightsCreateItems             
228 .IP "\(bu" 2
229 RightsEditOwn                 
230 .IP "\(bu" 2
231 RightsDeleteOwn               
232 .IP "\(bu" 2
233 RightsEditAll
234 .IP "\(bu" 2    
235 RightsDeleteAll
236 .IP "\(bu" 2
237 RightsCreateSubfolders
238 .IP "\(bu" 2
239 RightsFolderOwner
240 .IP "\(bu" 2
241 RightsFolderContact
242 .IP "\(bu" 2
243 RoleNone
244 .IP "\(bu" 2
245 RoleReviewer
246 .IP "\(bu" 2
247 RoleContributor
248 .IP "\(bu" 2
249 RoleNoneditingAuthor
250 .IP "\(bu" 2
251 RoleAuthor
252 .IP "\(bu" 2
253 RoleEditor
254 .IP "\(bu" 2
255 RolePublishAuthor
256 .IP "\(bu" 2
257 RolePublishEditor
258 .IP "\(bu" 2
259 RightsAll
260 .IP "\(bu" 2
261 RoleOwner                       
262
263 .SH SEE ALSO
264 AddUserPermission, ModifyUserPermission, RemoveUserPermission
265
266 .SH AUTHOR
267 Julien Kerihuel <j.kerihuel at openchange dot org>