-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathattrs.xml
executable file
·10208 lines (8314 loc) · 608 KB
/
attrs.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<?xml version="1.0" encoding="UTF-8"?>
<attrs group="ZimbraAttrType" groupid="1">
<!--
This config file is used by the AttributeManager class for multiple
purposes:
1) check the validity of attributes. value types, as well as whether
or not a value can be modified. AttributeManager is invoked when
entries are created/modified.
2) perform callbacks when certain attributes changes
3) used by the Zimbra build system to generate LDAP schema and
default value LDIFs
Please do not modify the attribute files unless you are doing it in
the code tree before the product is released. Modifying attrs has
serious implications for upgrades.
Zimbra devs - things to keep in mind when adding new attributes:
1) Always add the new attribute at the end of the list, adding one to
the highest attr id (the one that corresponds to the OID) number
in use. Do not sort by name - it will break OID allocation.
2) When defining new attributes, try and use descriptive names. The
name should *always* start with zimbra*. When defining
multiple-attributes use a standard prefix for all related
attributes. For example, if you are defining multiple attrs all
related to the blob store, then prefix them all with zimbraBlob*.
3) Never change/re-use numbers after the product released.
4) Prefix attributes that are account modifiable with carbonioPrefs* or zimbraPref*
this makes these attributes modifiable using the ModifyPrefs account SOAP API.
Here is the syntax for declaring attributes:
TODO - add support for multi-line values in globalConfigValue and defaultCOSValue
<attr name="{name}"
[immutable="*0|1"]
[type="{type-of-attr}"]
[value="..."]
[max="..."]
[min="..."]
[callback="..." ]
[id="{oid-integer}"
cardinality="single|multi"
requiredIn="{class-names-comma-separated}"
optionalIn="{class-names-comma-separated}"
[flags="{flag-names-comma-separated}"]
[requiresRestart="{comma-separated-server-types}"]
[deprecatedSince="{version}"]
[since="{version}"]]>
<desc>Documentation</desc>
[<deprecateDesc>Documentation for how the attribute was deprecated</deprecateDesc>]
[<globalConfigValue>{initial-value-in-global-config}</globalConfigValue>]*
[<globalConfigValueUpgrade>{initial-value-in-global-config-for-upgrades}</globalConfigValueUpgrade>]*
[<defaultCOSValue>{initial-value-in-default-cos}</defaultCOSValue>]*
[<defaultCOSValueUpgrade>{initial-value-in-existing-cos-for-upgrades}</defaultCOSValueUpgrade>]*
</attr>
name: name of attribute
immutable: 1 means attribute can never be changed directly by
end-user actions. i.e., it is an attribute that is
maintained by the server and shouldn't be changed by
SOAP/command-line/APIs. The Entry.modifyAttrs(attrs,
checkImmutable) call should be used with checkImmutable
set to true for all data obtained outside the server.
type:
boolean.....TRUE|FALSE
binary......binary data
duration....^\d+([hmsd]|ms)?$. If ([hmsd]|ms) is not specified, the default
is seconds.
gentime.....time expressed as \d{14}[zZ]
enum........value attr is comma-separated list of valid values
email.......valid email address. must have a "@" and no personal
part.
emailp......valid email address. must have a "@" and personal part
is optional.
cs_emailp...comma-separated valid email addresses . each address must have a "@"
and personal part is optional.
id..........^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
integer.....32 bit signed, min/max checked
long........64 bit unsigned unbounded number
Can also contain human readable memory unit values: ex 1KB => 1024 bytes
port........0-65535
regex.......value attr is a regular expression. Should explicitly
add ^ to front and $ at the end
string......currently just checks max length if specified
astring.....IA5 string (almost ascii)
cstring.....case sensitive string
ostring.....octet string defined in LDAP
value: used with enum and regex
min: min value for integers. defaults to Integer.MIN_VALUE
max: max value for integers, max length for strings/email. defaults
to Integer.MAX_VALUE
callback: class name of AttributeCallback object to invoke on
changes to attribute. If package is not specified,
defaults to "com.zimbra.cs.account.callback".
id: the integer OID of this attribute if it is a Zimbra defined
attribute.
cardinality: whether this is a multi-value attribute or not
requiredIn:
optionalIn: whether this is a required attribute or not. A
comma-separated list containing some combination of:
mailRecipient, account, alias, distributionList, cos,
globalConfig, domain, securityGroup, server, mimeEntry,
objectEntry, zimletEntry, calendarResource;
attribute, dataSource, pop3DataSource,
rssDataSource, imapDataSource, galDataSource, oauth2DataSource
flags:
accountInfo............returned as part of the GetInfo call
domainInfo.............returned as part of the GetDomainInfo call
domainAdminModifiable..modifiable by a domain admin
accountInherited.......if not set on account, inherit from COS
domainInherited........if not set on domain, inherit from global config
serverInherited........if not set on server, inherit from global config
accountCosDomainInherited...if not set on account, inherit from COS,
if not set on COS, inherit from domain
idn....................can contain Internationalized Domain Names (IDN).
For attributes that are either:
- of type email or emailp or cs_emailp, or
- has idn flag
server will convert the values to unicode in utf8
encoding in SOAP responses.
ephemeral..............this attribute will be stored in ephemeral storage,
as specified by zimbraEphemeralBackendURL
expirable..............ephemeral values will expire after a specified amount of time;
must be used in conjunction with the "ephemeral" flag
dynamic................ephemeral attribute will have a dynamic component to the key;
must be used in conjunction with the "ephemeral" flag and cardinality="multi"
requiresRestart: server(s) need be to restarted after changing this attribute.
values are comma-separated if more than one servers need to be restarted.
valid servers:
all
antivirus
antispam
mta
mailbox
logger
ldap
memcached
nginxproxy
stats;
deprecatedSince:
version since which the attribute had been deprecated. Deprecated
attributes are still generated into the schema. This flag is only for
documentation purpose so when someone (Zimbra employee or customer)
looks at attrs.xml or carbonio.schema they know those attributes
are no longer used.
since:
Version since which the attribute had been introduced.
For attributes that don't have "since" declared, it is assumed the attribute
was introduced since the very beginning.
Required after(inclusive) oid 525.
Element deprecateDesc:
Documentation for how the attribute was deprecated. e.g. attributes and
mechanisms that are replacing the deprecated attribute. Required if
deprecatedSince is present. Cannot be present if deprecatedSince is not
present.
-->
<attr name="c" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: ISO-3166 country 2-letter code</desc>
</attr>
<attr name="co" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC1274: friendly country name</desc>
</attr>
<attr name="company" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>From Microsoft Schema</desc>
</attr>
<attr name="cn" type="string" optionalIn="account,alias,distributionList" requiredIn="cos,server,mimeEntry,objectEntry,zimletEntry,xmppComponent,aclTarget,shareLocator,groupStaticUnit" flags="domainAdminModifiable,accountInfo">
<desc>RFC2256: common name(s) for which the entity is known by</desc>
</attr>
<attr name="description" type="string" cardinality="multi" optionalIn="account,distributionList,group,groupDynamicUnit,groupStaticUnit,cos,domain,server,mimeEntry,objectEntry,aclTarget,globalConfig,xmppComponent,zimletEntry,addressList" flags="domainAdminModifiable">
<desc>RFC2256: descriptive information</desc>
</attr>
<attr name="destinationIndicator" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: destination indicator</desc>
</attr>
<attr name="displayName" type="string" optionalIn="account,distributionList,group,groupDynamicUnit" requiredIn="calendarResource" flags="accountInfo,domainAdminModifiable" callback="DisplayName">
<desc>RFC2798: preferred name to be used when displaying entries</desc>
</attr>
<attr name="facsimileTelephoneNumber" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: Facsimile (Fax) Telephone Number</desc>
</attr>
<attr name="gn" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: first name(s) for which the entity is known by</desc>
</attr>
<attr name="givenName" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: first name(s) for which the entity is known by</desc>
</attr>
<attr name="homePhone" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC1274: home telephone number</desc>
</attr>
<attr name="initials" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: initials of some or all of names, but not the surname(s).</desc>
</attr>
<attr name="internationaliSDNNumber" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: international ISDN number</desc>
</attr>
<attr name="l" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: locality which this object resides in</desc>
</attr>
<attr name="mail" type="string" immutable="1" optionalIn="account,distributionList,group,groupDynamicUnit" flags="idn">
<desc>RFC1274: RFC822 Mailbox</desc>
</attr>
<attr name="memberURL" type="string" requiredIn="group,groupDynamicUnit" callback="MemberURL">
<desc>Identifies an URL associated with each member of a group</desc>
</attr>
<attr name="mobile" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC1274: mobile telephone number</desc>
</attr>
<attr name="objectClass" type="string">
<desc>RFC2256: object classes of the entity</desc>
</attr>
<attr name="o" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: organization this object belongs to</desc>
</attr>
<attr name="ou" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: organizational unit this object belongs to</desc>
</attr>
<attr name="pager" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC1274: pager telephone number</desc>
</attr>
<attr name="physicalDeliveryOfficeName" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>'RFC2256: Physical Delivery Office Name</desc>
</attr>
<attr name="postOfficeBox" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: Post Office Box</desc>
</attr>
<attr name="postalAddress" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: postal address</desc>
</attr>
<attr name="postalCode" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: postal code</desc>
</attr>
<attr name="preferredDeliveryMethod" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: preferred delivery method</desc>
</attr>
<attr name="registeredAddress" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: registered postal address</desc>
</attr>
<attr name="sn" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: last (family) name(s) for which the entity is known by</desc>
</attr>
<attr name="st" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: state or province which this object resides in</desc>
</attr>
<attr name="street" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: street address of this object</desc>
</attr>
<attr name="streetAddress" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: street address of this object</desc>
</attr>
<attr name="telephoneNumber" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: Telephone Number</desc>
</attr>
<attr name="teletexTerminalIdentifier" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: Teletex Terminal Identifier</desc>
</attr>
<attr name="telexNumber" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: Telex Number</desc>
</attr>
<attr name="title" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: title associated with the entity</desc>
</attr>
<attr name="uid" type="string" immutable="1" optionalIn="alias" requiredIn="account,distributionList,addressList" flags="accountInfo">
<desc>RFC1274: user identifier</desc>
</attr>
<attr name="userCertificate" type="certificate" cardinality="multi" optionalIn="account">
<desc>RFC2256: X.509 user certificate</desc>
</attr>
<attr name="userPassword" type="string" optionalIn="account">
<desc>RFC2256/2307: password of user.</desc>
</attr>
<attr name="userSMIMECertificate" type="binary" cardinality="multi" optionalIn="account" deprecatedSince="25.3.0">
<desc>RFC2798: PKCS#7 SignedData used to support S/MIME</desc>
<deprecateDesc>deprecated in favor of new SMIME implementation</deprecateDesc>
</attr>
<attr name="x121Address" type="string" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC2256: X.121 Address</desc>
</attr>
<attr id="1" name="zimbraId" type="id" immutable="1" cardinality="single" requiredIn="account,alias,distributionList,cos,domain,server,calendarResource,xmppComponent,group,groupDynamicUnit,groupStaticUnit,addressList" flags="accountInfo">
<desc>Unique identifier for an entry</desc>
</attr>
<attr id="2" name="zimbraAccountStatus" type="enum" value="active,maintenance,locked,closed,lockout,pending" callback="AccountStatus" cardinality="single" requiredIn="account" flags="domainAdminModifiable">
<desc>account status.
active - active
lockout - no login until lockout duration is over, mail delivery OK.
locked - no login, mail delivery OK.
maintenance - no login, no delivery(lmtp server returns 4.x.x Persistent Transient Failure).
pending - no login, no delivery(lmtp server returns 5.x.x Permanent Failure),
Account behavior is like closed, except that when the status is being set to
pending, account addresses are not removed from distribution lists.
The use case is for hosted. New account creation based on invites
that are not completed until user accepts TOS on account creation confirmation page.
closed - no login, no delivery(lmtp server returns 5.x.x Permanent Failure),
all addresses (account main email and all aliases) of the
account are removed from all distribution lists.
</desc>
</attr>
<attr id="3" name="zimbraMailAddress" type="email" max="256" immutable="1" cardinality="multi" optionalIn="mailRecipient">
<desc>RFC822 email address of this recipient for accepting mail</desc>
</attr>
<attr id="4" name="zimbraMailHost" type="astring" max="256" callback="MailHost" cardinality="single" optionalIn="mailRecipient,group">
<desc>the server hosting the account's mailbox</desc>
</attr>
<!--
In and prior to 5.0.*, zimbraHsmAge is special. We set parentOid to keep the same OID it had before: 1.3.6.1.4.1.19348.2.4.20
Since 5.5, we use an oid in the normal range, see bug 8945.
-->
<attr id="8" name="zimbraHsmAge" type="duration" cardinality="single" optionalIn="globalConfig,server" flags="serverInherited" deprecatedSince="6.0.0_BETA2">
<globalConfigValue>30d</globalConfigValue>
<desc>Minimum age of mail items whose filesystem data will be moved to secondary storage.</desc>
<deprecateDesc>deprecated in favor for zimbraHsmPolicy</deprecateDesc>
</attr>
<attr id="9" name="zimbraNotes" type="string" max="1024" cardinality="single" optionalIn="account,distributionList,group,cos,domain,server" flags="domainAdminModifiable">
<desc>administrative notes</desc>
</attr>
<attr id="11" name="zimbraMemberOf" type="id" cardinality="multi" optionalIn="account" immutable="1">
<desc>dynamic group membership</desc>
</attr>
<attr id="12" name="zimbraMailForwardingAddress" type="email" max="256" cardinality="multi" optionalIn="mailRecipient,groupStaticUnit" flags="accountInfo,domainAdminModifiable">
<desc>RFC822 forwarding address for an account</desc>
</attr>
<attr id="13" name="zimbraMailDeliveryAddress" type="email" max="256" immutable="1" cardinality="multi" optionalIn="mailRecipient">
<desc>RFC822 email address of this recipient for local delivery</desc>
</attr>
<attr id="14" name="zimbraCOSId" type="id" cardinality="single" optionalIn="account" callback="CosId"> <!-- should we set type to cosID and check for valid COS id? -->
<desc>COS zimbraID</desc>
</attr>
<attr id="15" name="zimbraMailStatus" type="enum" value="enabled,disabled" cardinality="single" optionalIn="mailRecipient,group,groupDynamicUnit" flags="domainAdminModifiable">
<desc>mail delivery status (enabled/disabled)</desc>
</attr>
<attr id="16" name="zimbraMailQuota" type="long" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited,domainAdminModifiable">
<defaultCOSValue>0</defaultCOSValue>
<desc>mail quota in bytes</desc>
</attr>
<attr id="17" name="zimbraPrefMailSignature" type="string" cardinality="single" optionalIn="account,identity,signature" flags="domainAdminModifiable" callback="MailSignature">
<desc>mail text signature (deprecatedSince 5.0 in identity)</desc>
</attr>
<attr id="18" name="zimbraPrefMailSignatureEnabled" type="boolean" cardinality="single" optionalIn="account,identity" flags="domainAdminModifiable">
<desc>mail signature enabled (deprecatedSince 5.0 in identity)</desc>
</attr>
<attr id="19" name="zimbraDomainName" type="string" max="256" immutable="1" cardinality="single" requiredIn="domain" flags="idn">
<desc>name of the domain</desc>
</attr>
<attr id="20" name="zimbraMailAlias" type="email" max="256" immutable="1" cardinality="multi" optionalIn="mailRecipient,group,groupDynamicUnit" flags="accountInfo">
<desc>RFC822 email address of this recipient for accepting mail</desc>
</attr>
<attr id="21" name="zimbraCOSInheritedAttr" type="string" max="1024" cardinality="multi" optionalIn="globalConfig" deprecatedSince="5.0">
<desc>zimbraCOS attrs that get inherited in a zimbraAccount</desc>
<deprecateDesc>deprecated in favor of the accountInherited flag</deprecateDesc>
</attr>
<attr id="22" name="zimbraPrefSaveToSent" type="boolean" cardinality="single" optionalIn="account,cos,identity" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>TRUE</defaultCOSValue>
<desc>whether or not to save outgoing mail (deprecatedSince 5.0 in identity)</desc>
</attr>
<attr id="23" name="zimbraLmtpAdvertisedName" type="string" max="128" cardinality="single" optionalIn="server" requiresRestart="mailbox">
<desc>name to use in greeting and sign-off; if empty, uses hostname</desc>
</attr>
<attr id="24" name="zimbraLmtpBindPort" type="port" cardinality="single" optionalIn="globalConfig,server" flags="serverInherited" callback="CheckPortConflict" requiresRestart="mailbox">
<globalConfigValue>7025</globalConfigValue>
<desc>port number on which LMTP server should listen</desc>
</attr>
<attr id="25" name="zimbraLmtpBindAddress" type="string" max="128" cardinality="multi" optionalIn="server" requiresRestart="mailbox">
<desc>interface address on which LMTP server should listen; if empty, binds to all interfaces</desc>
</attr>
<attr id="26" name="zimbraLmtpNumThreads" type="integer" min="0" cardinality="single" optionalIn="globalConfig,server" flags="serverInherited" requiresRestart="mailbox">
<globalConfigValue>20</globalConfigValue>
<desc>number of handler threads, should match MTA concurrency setting for this server</desc>
</attr>
<attr id="31" name="zimbraIsAdminAccount" type="boolean" cardinality="single" optionalIn="account" flags="accountInfo">
<desc>set to true for admin accounts</desc>
</attr>
<attr id="32" name="zimbraMailSieveScript" type="string" cardinality="single" optionalIn="account" callback="MailSieveScript">
<desc>sieve script generated from user filter rules</desc>
</attr>
<attr id="33" name="zimbraPasswordMinLength" type="integer" min="0" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited,domainAdminModifiable">
<defaultCOSValue>6</defaultCOSValue>
<desc>minimum length of a password</desc>
</attr>
<attr id="34" name="zimbraPasswordMaxLength" type="integer" min="0" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited,domainAdminModifiable">
<defaultCOSValue>64</defaultCOSValue>
<desc>max length of a password</desc>
</attr>
<attr id="35" name="zimbraPasswordMinAge" type="integer" min="0" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited,domainAdminModifiable">
<defaultCOSValue>0</defaultCOSValue>
<desc>minimum days between password changes</desc>
</attr>
<attr id="36" name="zimbraPasswordMaxAge" type="integer" min="0" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited,domainAdminModifiable">
<defaultCOSValue>0</defaultCOSValue>
<desc>maximum days between password changes</desc>
</attr>
<attr id="37" name="zimbraPasswordEnforceHistory" type="integer" min="0" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited,domainAdminModifiable">
<defaultCOSValue>0</defaultCOSValue>
<desc>whether or not to enforce password history. Number of unique passwords a user must have before being allowed to re-use an old one. A value of 0 means no password history.</desc>
</attr>
<attr id="38" name="zimbraPasswordHistory" type="ostring" max="128" cardinality="multi" optionalIn="account">
<desc>historical password values</desc>
</attr>
<attr id="39" name="zimbraPasswordModifiedTime" type="gentime" cardinality="single" optionalIn="account" flags="accountInfo">
<desc>time password was last changed</desc>
</attr>
<attr id="40" name="zimbraAliasTargetId" type="string" max="256" immutable="1" cardinality="single" requiredIn="alias">
<desc>zimbraId of alias target</desc>
</attr>
<attr id="41" name="zimbraPasswordMustChange" type="boolean" cardinality="single" optionalIn="account" flags="domainAdminModifiable">
<desc>must change password on auth</desc>
</attr>
<attr id="42" name="zimbraAuthMech" type="string" max="512" cardinality="single" optionalIn="domain" callback="AuthMech">
<desc>mechanism to use for verifying password. Valid values are zimbra, ldap, ad, kerberos5, custom:{handler-name} [arg1 arg2 ...]</desc>
</attr>
<attr id="43" name="zimbraAuthLdapURL" type="string" max="256" cardinality="multi" optionalIn="domain">
<desc>LDAP URL for ldap auth mech</desc>
</attr>
<attr id="44" name="zimbraAuthLdapBindDn" type="string" max="256" cardinality="single" optionalIn="domain">
<desc>LDAP bind dn for ldap auth mech</desc>
</attr>
<attr id="45" name="zimbraPasswordLocked" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>FALSE</defaultCOSValue>
<desc>user is unable to change password</desc>
</attr>
<attr id="46" name="zimbraGalMode" type="enum" value="zimbra,both,ldap" cardinality="single" optionalIn="domain" callback="GalCallback">
<desc>
valid modes are "zimbra" (query internal directory only), "ldap" (query
external directory only), or "both" (query internal and external directory)
</desc>
</attr>
<attr id="47" name="zimbraGalLdapURL" type="string" max="256" cardinality="multi" optionalIn="domain" callback="GalCallback">
<desc>LDAP URL for external GAL queries</desc>
</attr>
<attr id="48" name="zimbraGalLdapSearchBase" type="string" max="256" cardinality="single" optionalIn="domain" callback="GalCallback">
<desc>LDAP search base for external GAL queries</desc>
</attr>
<attr id="49" name="zimbraGalLdapBindDn" type="string" max="256" cardinality="single" optionalIn="domain" callback="GalCallback">
<desc>LDAP bind dn for external GAL queries</desc>
</attr>
<attr id="50" name="zimbraGalLdapBindPassword" type="string" max="256" cardinality="single" optionalIn="domain">
<desc>LDAP bind password for external GAL queries</desc>
</attr>
<attr id="51" name="zimbraGalLdapFilter" type="string" max="4096" cardinality="single" optionalIn="domain" callback="GalCallback">
<desc>LDAP search filter for external GAL search queries</desc>
</attr>
<attr id="52" name="zimbraGalLdapFilterDef" type="string" max="4096" cardinality="multi" optionalIn="globalConfig">
<globalConfigValue>zimbraAccounts:(&(|(displayName=*%s*)(cn=*%s*)(sn=*%s*)(gn=*%s*)(zimbraPhoneticFirstName=*%s*)(zimbraPhoneticLastName=*%s*)(mail=*%s*)(zimbraMailDeliveryAddress=*%s*)(zimbraMailAlias=*%s*))(|(objectclass=zimbraAccount)(objectclass=zimbraDistributionList)(objectclass=zimbraGroup))(!(objectclass=zimbraCalendarResource)))</globalConfigValue>
<globalConfigValue>zimbraAccountAutoComplete:(&(|(displayName=*%s*)(cn=%s*)(sn=%s*)(gn=%s*)(zimbraPhoneticFirstName=%s*)(zimbraPhoneticLastName=%s*)(mail=%s*)(zimbraMailDeliveryAddress=%s*)(zimbraMailAlias=%s*))(|(objectclass=zimbraAccount)(objectclass=zimbraDistributionList)(objectclass=zimbraGroup))(!(objectclass=zimbraCalendarResource)))</globalConfigValue>
<globalConfigValue>zimbraAccountSync:(&(|(objectclass=zimbraAccount)(objectclass=zimbraDistributionList)(objectclass=zimbraGroup))(!(objectclass=zimbraCalendarResource)))</globalConfigValue>
<globalConfigValue>zimbraResources:(&(|(displayName=*%s*)(cn=*%s*)(sn=*%s*)(gn=*%s*)(mail=*%s*)(zimbraMailDeliveryAddress=*%s*)(zimbraMailAlias=*%s*))(objectclass=zimbraCalendarResource)(zimbraAccountStatus=active))</globalConfigValue>
<globalConfigValue>zimbraResourceAutoComplete:(&(|(displayName=%s*)(cn=%s*)(sn=%s*)(gn=%s*)(mail=%s*)(zimbraMailDeliveryAddress=%s*)(zimbraMailAlias=%s*))(objectclass=zimbraCalendarResource)(zimbraAccountStatus=active))</globalConfigValue>
<globalConfigValue>zimbraResourceSync:(&(objectclass=zimbraCalendarResource)(zimbraAccountStatus=active))</globalConfigValue>
<globalConfigValue>zimbraGroups:(&(|(displayName=*%s*)(cn=*%s*)(sn=*%s*)(gn=*%s*)(mail=*%s*)(zimbraMailDeliveryAddress=*%s*)(zimbraMailAlias=*%s*))(|(objectclass=zimbraDistributionList)(objectclass=zimbraGroup)))</globalConfigValue>
<globalConfigValue>zimbraGroupAutoComplete:(&(|(displayName=%s*)(cn=%s*)(sn=%s*)(gn=%s*)(mail=%s*)(zimbraMailDeliveryAddress=%s*)(zimbraMailAlias=%s*))(|(objectclass=zimbraDistributionList)(objectclass=zimbraGroup)))</globalConfigValue>
<globalConfigValue>zimbraGroupSync:(|(objectclass=zimbraDistributionList)(objectclass=zimbraGroup))</globalConfigValue>
<globalConfigValue>zimbraAutoComplete:(&(|(displayName=%s*)(cn=%s*)(sn=%s*)(gn=%s*)(zimbraPhoneticFirstName=%s*)(zimbraPhoneticLastName=%s*)(mail=%s*)(zimbraMailDeliveryAddress=%s*)(zimbraMailAlias=%s*))(|(objectclass=zimbraAccount)(objectclass=zimbraDistributionList)(objectclass=zimbraGroup)))</globalConfigValue>
<globalConfigValue>zimbraSearch:(&(|(displayName=*%s*)(cn=*%s*)(sn=*%s*)(gn=*%s*)(zimbraPhoneticFirstName=*%s*)(zimbraPhoneticLastName=*%s*)(mail=*%s*)(zimbraMailDeliveryAddress=*%s*)(zimbraMailAlias=*%s*))(|(objectclass=zimbraAccount)(objectclass=zimbraDistributionList)(objectclass=zimbraGroup)))</globalConfigValue>
<globalConfigValue>zimbraSync:(&(|(objectclass=zimbraAccount)(objectclass=zimbraDistributionList)(objectclass=zimbraGroup)(objectclass=zimbraAddressList)(objectclass=zimbraHabGroup))(!(&(objectclass=zimbraCalendarResource)(!(|(zimbraAccountStatus=active)(zimbraIsAddressListActive=TRUE)(zimbraMailStatus=enabled))))))</globalConfigValue>
<globalConfigValue>ad:(&(|(displayName=*%s*)(cn=*%s*)(sn=*%s*)(givenName=*%s*)(mail=*%s*))(!(msExchHideFromAddressLists=TRUE))(|(&(objectCategory=person)(objectClass=user)(!(homeMDB=*))(!(msExchHomeServerName=*)))(&(objectCategory=person)(objectClass=user)(|(homeMDB=*)(msExchHomeServerName=*)))(&(objectCategory=person)(objectClass=contact))(objectCategory=group)(objectCategory=publicFolder)(objectCategory=msExchDynamicDistributionList)))</globalConfigValue>
<globalConfigValue>adAutoComplete:(&(|(displayName=%s*)(cn=%s*)(sn=%s*)(givenName=%s*)(mail=%s*))(!(msExchHideFromAddressLists=TRUE))(|(&(objectCategory=person)(objectClass=user)(!(homeMDB=*))(!(msExchHomeServerName=*)))(&(objectCategory=person)(objectClass=user)(|(homeMDB=*)(msExchHomeServerName=*)))(&(objectCategory=person)(objectClass=contact))(objectCategory=group)(objectCategory=publicFolder)(objectCategory=msExchDynamicDistributionList)))</globalConfigValue>
<globalConfigValue>externalLdapAutoComplete:(|(cn=%s*)(sn=%s*)(gn=%s*)(mail=%s*))</globalConfigValue>
<globalConfigValue>email_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email2_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email3_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email4_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email5_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email6_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email7_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email8_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email9_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email10_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email11_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email12_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email13_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email14_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email15_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>email16_has:(mail=*%s*)</globalConfigValue>
<globalConfigValue>department_has:(ou=*%s*)</globalConfigValue>
<globalConfigValue>firstName_has:(gn=*%s*)</globalConfigValue>
<globalConfigValue>lastName_has:(sn=*%s*)</globalConfigValue>
<globalConfigValue>middleName_has:(initials=*%s*)</globalConfigValue>
<globalConfigValue>nickname_has:(|(displayName=*%s*)(cn=*%s*))</globalConfigValue>
<globalConfigValue>phoneticFirstName_has:(zimbraPhoneticFirstName=*%s*)</globalConfigValue>
<globalConfigValue>phoneticLastName_has:(zimbraPhoneticLastName=*%s*)</globalConfigValue>
<globalConfigValue>notes_has:(description=*%s*)</globalConfigValue>
<desc>LDAP search filter definitions for GAL queries</desc>
</attr>
<attr id="53" name="zimbraGalMaxResults" type="integer" min="0" cardinality="single" optionalIn="globalConfig,domain" flags="domainInherited">
<globalConfigValue>100</globalConfigValue>
<desc>maximum number of gal entries to return from a search</desc>
</attr>
<attr id="54" name="zimbraPrefGroupMailBy" type="enum" value="conversation,message" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>conversation</defaultCOSValue>
<desc>how to group mail by default</desc>
</attr>
<attr id="55" name="zimbraPrefIncludeSpamInSearch" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>TRUE</defaultCOSValue>
<defaultExternalCOSValue>TRUE</defaultExternalCOSValue>
<desc>whether or not to include spam in search by default</desc>
</attr>
<attr id="56" name="zimbraPrefIncludeTrashInSearch" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>TRUE</defaultCOSValue>
<defaultExternalCOSValue>TRUE</defaultExternalCOSValue>
<desc>whether or not to include trash in search by default</desc>
</attr>
<attr id="57" name="zimbraPrefMailItemsPerPage" type="integer" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable"> <!-- TODO: get min/max? -->
<defaultCOSValue>25</defaultCOSValue>
<desc>number of messages/conversations per page</desc>
</attr>
<attr id="58" name="zimbraPrefOutOfOfficeReply" type="string" max="8192" callback="OutOfOfficeCallback" cardinality="single" optionalIn="account" flags="domainAdminModifiable">
<desc>out of office message</desc>
</attr>
<attr id="59" name="zimbraPrefOutOfOfficeReplyEnabled" type="boolean" callback="OutOfOfficeCallback" cardinality="single" optionalIn="account" flags="domainAdminModifiable">
<desc>whether or not out of office reply is enabled</desc>
</attr>
<attr id="60" name="zimbraPrefReplyToAddress" type="string" max="256" cardinality="single" optionalIn="account,identity,dataSource,distributionList,group" flags="domainAdminModifiable" callback="Email">
<desc>address to put in reply-to header</desc>
</attr>
<attr id="61" name="zimbraPrefUseKeyboardShortcuts" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>TRUE</defaultCOSValue>
<desc>whether or not keyboard shortcuts are enabled</desc>
</attr>
<attr id="62" name="zimbraServerInheritedAttr" type="string" max="1024" cardinality="multi" optionalIn="globalConfig" deprecatedSince="5.0">
<desc>zimbraServer attrs that get inherited from global config</desc>
<deprecateDesc>deprecated in favor of the serverInherited flag</deprecateDesc>
</attr>
<attr id="63" name="zimbraDomainInheritedAttr" type="string" max="1024" cardinality="multi" optionalIn="globalConfig" deprecatedSince="5.0">
<desc>zimbraDomain attrs that get inherited from global config</desc>
<deprecateDesc>deprecated in favor of the domainInherited flag</deprecateDesc>
</attr>
<attr id="65" name="zimbraServiceHostname" type="string" max="256" cardinality="single" optionalIn="server">
<desc>public hostname of the host</desc>
</attr>
<attr id="74" name="zimbraRedoLogEnabled" type="boolean" cardinality="single" optionalIn="globalConfig,server" flags="serverInherited" requiresRestart="mailbox">
<globalConfigValue>TRUE</globalConfigValue>
<desc>whether redo logging is enabled</desc>
</attr>
<attr id="75" name="zimbraRedoLogLogPath" type="string" max="256" cardinality="single" optionalIn="globalConfig,server" flags="serverInherited" requiresRestart="mailbox">
<globalConfigValue>redolog/redo.log</globalConfigValue>
<desc>name and location of the redolog file</desc>
</attr>
<attr id="76" name="zimbraRedoLogArchiveDir" type="string" max="256" cardinality="single" optionalIn="globalConfig,server" flags="serverInherited" requiresRestart="mailbox">
<globalConfigValue>redolog/archive</globalConfigValue>
<desc>redolog rollover destination</desc>
</attr>
<attr id="78" name="zimbraRedoLogRolloverFileSizeKB" type="integer" min="0" cardinality="single" optionalIn="globalConfig,server" flags="serverInherited" requiresRestart="mailbox">
<globalConfigValue>1048576</globalConfigValue>
<desc>redo.log file becomes eligible for rollover over when it goes over this size</desc>
</attr>
<attr id="79" name="zimbraRedoLogFsyncIntervalMS" type="integer" min="0" cardinality="single" optionalIn="globalConfig,server" flags="serverInherited" requiresRestart="mailbox">
<globalConfigValue>10</globalConfigValue>
<desc>how frequently writes to redo log get fsynced to disk</desc>
</attr>
<attr id="93" name="zimbraPop3AdvertisedName" type="string" max="128" cardinality="single" optionalIn="server" requiresRestart="mailbox">
<desc>name to use in greeting and sign-off; if empty, uses hostname</desc>
</attr>
<attr id="94" name="zimbraPop3BindPort" type="port" cardinality="single" optionalIn="globalConfig,server" flags="serverInherited" callback="CheckPortConflict" requiresRestart="mailbox">
<globalConfigValue>7110</globalConfigValue>
<desc>port number on which POP3 server should listen</desc>
</attr>
<attr id="95" name="zimbraPop3BindAddress" type="string" max="128" cardinality="multi" optionalIn="server" requiresRestart="mailbox">
<desc>interface address on which POP3 server should listen; if empty, binds to all interfaces</desc>
</attr>
<attr id="96" name="zimbraPop3NumThreads" type="integer" cardinality="single" optionalIn="globalConfig,server" flags="serverInherited" requiresRestart="mailbox">
<globalConfigValue>100</globalConfigValue>
<desc>number of handler threads</desc>
</attr>
<attr id="97" name="zimbraSmtpHostname" type="astring" max="256" cardinality="multi" optionalIn="globalConfig,server,domain" flags="serverInherited" callback="ServerConfig">
<globalConfigValue>127.78.0.7</globalConfigValue>
<desc>the SMTP server to connect to when sending mail</desc>
</attr>
<attr id="98" name="zimbraSmtpPort" type="port" cardinality="single" optionalIn="globalConfig,server,domain" flags="serverInherited" requiresRestart="mta">
<globalConfigValue>20025</globalConfigValue>
<desc>the SMTP server port to connect to when sending mail</desc>
</attr>
<attr id="99" name="zimbraSmtpTimeout" type="integer" min="0" cardinality="single" optionalIn="globalConfig,server,domain" flags="serverInherited">
<globalConfigValue>60</globalConfigValue>
<desc>timeout value in seconds</desc>
</attr>
<attr id="100" name="zimbraAuthTokenKey" type="ostring" max="128" immutable="1" cardinality="multi" optionalIn="globalConfig" requiresRestart="mailbox">
<desc>auth token secret key</desc>
</attr>
<attr id="102" name="zimbraPrefMailInitialSearch" type="string" max="512" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>in:inbox</defaultCOSValue>
<desc>initial search done by dhtml client</desc>
</attr>
<attr id="103" name="zimbraPrefSentMailFolder" type="string" max="256" cardinality="single" optionalIn="account,cos,identity" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>sent</defaultCOSValue>
<desc>name of folder to save sent mail in (deprecatedSince 5.0 in identity)</desc>
</attr>
<attr id="104" name="zimbraMailTrashLifetime" type="duration" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable,accountInfo">
<defaultCOSValue>30d</defaultCOSValue>
<desc>
Retention period of messages in the Trash folder. 0 means that all messages
will be retained. This admin-modifiable attribute works in conjunction with
zimbraPrefTrashLifetime, which is user-modifiable. The shorter duration is
used.
</desc>
</attr>
<attr id="105" name="zimbraMailSpamLifetime" type="duration" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable,accountInfo">
<defaultCOSValue>30d</defaultCOSValue>
<desc>
Retention period of messages in the Junk folder. 0 means that all messages
will be retained. This admin-modifiable attribute works in conjunction with
zimbraPrefJunkLifetime, which is user-modifiable. The shorter duration is
used.
</desc>
</attr>
<attr id="106" name="zimbraMailMessageLifetime" type="duration" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable,accountInfo">
<defaultCOSValue>0</defaultCOSValue>
<desc>lifetime of a mail message regardless of location</desc>
</attr>
<attr id="107" name="zimbraContactMaxNumEntries" type="integer" min="0" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited">
<defaultCOSValue>10000</defaultCOSValue>
<desc>Maximum number of contacts allowed in mailbox. 0 means no limit.</desc>
</attr>
<attr id="108" name="zimbraAuthTokenLifetime" type="duration" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable" callback="PositiveTimeInterval">
<defaultCOSValue>2d</defaultCOSValue>
<desc>lifetime of newly created auth tokens</desc>
</attr>
<attr id="109" name="zimbraAdminAuthTokenLifetime" type="duration" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable" callback="PositiveTimeInterval">
<defaultCOSValue>12h</defaultCOSValue>
<desc>lifetime of newly created admin auth tokens</desc>
</attr>
<attr id="110" name="zimbraMailMinPollingInterval" type="duration" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited,domainAdminModifiable">
<defaultCOSValue>2m</defaultCOSValue>
<desc>minimum allowed value for zimbraPrefMailPollingInterval</desc>
</attr>
<attr id="111" name="zimbraPrefMailPollingInterval" type="duration" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>5m</defaultCOSValue>
<desc>interval at which the web client polls the server for new messages</desc>
</attr>
<attr id="112" name="zimbraAccountClientAttr" type="string" max="1024" cardinality="multi" optionalIn="globalConfig" deprecatedSince="5.0">
<desc>additional account attrs that get returned to a client</desc>
<deprecateDesc>deprecated in favor of the accountInfo flag</deprecateDesc>
</attr>
<attr id="113" name="zimbraLastLogonTimestamp" type="gentime" immutable="1" cardinality="single" optionalIn="account" flags="ephemeral">
<desc>rough estimate of when the user last logged in</desc>
</attr>
<attr id="114" name="zimbraLastLogonTimestampFrequency" type="duration" cardinality="single" optionalIn="globalConfig">
<globalConfigValue>1d</globalConfigValue>
<desc>how often the zimbraLastLogonTimestamp is updated.
if set to 0, updating zimbraLastLogonTimestamp is completely disabled
</desc>
</attr>
<attr id="115" name="zimbraAttachmentsBlocked" type="boolean" cardinality="single" optionalIn="account,cos,globalConfig" flags="accountInfo,accountInherited,domainAdminModifiable">
<defaultCOSValue>FALSE</defaultCOSValue>
<globalConfigValue>FALSE</globalConfigValue>
<desc>block all attachment downloading</desc>
</attr>
<attr id="116" name="zimbraAttachmentsViewInHtmlOnly" type="boolean" cardinality="single" optionalIn="account,cos,globalConfig" flags="accountInfo,accountInherited,domainAdminModifiable">
<defaultCOSValue>FALSE</defaultCOSValue>
<globalConfigValue>FALSE</globalConfigValue>
<desc>view all attachments in html only</desc>
</attr>
<attr id="125" name="zimbraMailHostPool" type="id" callback="MailHostPool" cardinality="multi" optionalIn="cos">
<desc>servers that an account can be initially provisioned on</desc>
</attr>
<attr id="126" name="zimbraPrefNewMailNotificationEnabled" type="boolean" cardinality="single" optionalIn="account" flags="domainAdminModifiable">
<desc>whether or not new mail notification is enabled</desc>
</attr>
<attr id="127" name="zimbraPrefNewMailNotificationAddress" type="email" max="256" cardinality="single" optionalIn="account" flags="domainAdminModifiable">
<desc>RFC822 email address for email notifications</desc>
</attr>
<attr id="130" name="zimbraPrefForwardReplyPrefixChar" type="astring" max="1" cardinality="single" optionalIn="account,cos,identity" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>></defaultCOSValue>
<desc>prefix character to use during forward/reply (deprecatedSince 5.0 in identity)</desc>
</attr>
<attr id="131" name="zimbraPrefAutoAddAddressEnabled" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>TRUE</defaultCOSValue>
<desc>whether or not new address in outgoing email are auto added to address book</desc>
</attr>
<attr id="132" name="zimbraIsMonitorHost" type="boolean" cardinality="single" optionalIn="server">
<desc>true if this server is the monitor host</desc>
</attr>
<attr id="133" name="zimbraPrefReplyIncludeOriginalText" type="enum" value="includeAsAttachment,includeBody,includeBodyWithPrefix,includeNone,includeSmart,includeBodyAndHeadersWithPrefix,includeBodyAndHeaders,includeSmartWithPrefix,includeSmartAndHeaders,includeSmartAndHeadersWithPrefix,includeBodyOnly" cardinality="single" optionalIn="account,cos,identity" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>includeBody</defaultCOSValue>
<desc>
what part of the original message to include during replies (deprecatedSince 5.0 in identity).
The value includeBody has been deprecated since 6.0.6, use includeBodyAndHeaders instead.
</desc>
</attr>
<attr id="134" name="zimbraPrefForwardIncludeOriginalText" type="enum" value="includeAsAttachment,includeBody,includeBodyWithPrefix,includeBodyAndHeadersWithPrefix,includeBodyAndHeaders,includeBodyOnly" cardinality="single" optionalIn="account,cos,identity" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>includeBody</defaultCOSValue>
<desc>
what part of the original message to include during forwards (deprecatedSince 5.0 in identity).
The value includeBody has been deprecated since 6.0.6, use includeBodyAndHeaders instead.
</desc>
</attr>
<attr id="135" name="zimbraFeatureContactsEnabled" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited">
<defaultCOSValue>TRUE</defaultCOSValue>
<defaultExternalCOSValue>FALSE</defaultExternalCOSValue>
<desc>contact features</desc>
</attr>
<attr id="136" name="zimbraFeatureCalendarEnabled" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited" callback="FeatureCalendarEnabled">
<defaultCOSValue>TRUE</defaultCOSValue>
<defaultExternalCOSValue>FALSE</defaultExternalCOSValue>
<desc>calendar features</desc>
</attr>
<attr id="137" name="zimbraFeatureTaggingEnabled" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited">
<defaultCOSValue>TRUE</defaultCOSValue>
<defaultExternalCOSValue>FALSE</defaultExternalCOSValue>
<desc>tagging feature</desc>
</attr>
<attr id="138" name="zimbraFeatureAdvancedSearchEnabled" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited" deprecatedSince="8.0.0">
<defaultCOSValue>TRUE</defaultCOSValue>
<desc>advanced search button enabled</desc>
<deprecateDesc>Deprecated as of bug 56924</deprecateDesc>
</attr>
<attr id="139" name="zimbraFeatureSavedSearchesEnabled" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited">
<defaultCOSValue>TRUE</defaultCOSValue>
<defaultExternalCOSValue>FALSE</defaultExternalCOSValue>
<desc>saved search feature</desc>
</attr>
<attr id="140" name="zimbraFeatureConversationsEnabled" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited">
<defaultCOSValue>TRUE</defaultCOSValue>
<desc>conversations</desc>
</attr>
<attr id="141" name="zimbraFeatureChangePasswordEnabled" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited">
<defaultCOSValue>TRUE</defaultCOSValue>
<desc>password changing</desc>
</attr>
<attr id="142" name="zimbraFeatureInitialSearchPreferenceEnabled" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited">
<defaultCOSValue>TRUE</defaultCOSValue>
<desc>preference to set initial search</desc>
</attr>
<attr id="143" name="zimbraFeatureFiltersEnabled" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited">
<defaultCOSValue>TRUE</defaultCOSValue>
<defaultExternalCOSValue>FALSE</defaultExternalCOSValue>
<desc>filter prefs enabled</desc>
</attr>
<attr id="144" name="zimbraPrefDedupeMessagesSentToSelf" type="enum" value="dedupeNone,secondCopyifOnToOrCC,dedupeAll" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>dedupeNone</defaultCOSValue>
<desc>dedupeNone|secondCopyIfOnToOrCC|moveSentMessageToInbox|dedupeAll</desc>
</attr>
<attr id="145" name="zimbraPrefMessageViewHtmlPreferred" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>TRUE</defaultCOSValue>
<desc>whether client prefers text/html or text/plain</desc>
</attr>
<attr id="146" name="zimbraUserServicesEnabled" type="boolean" cardinality="single" optionalIn="server">
<desc>whether end-user services on SOAP and LMTP interfaces are enabled</desc>
</attr>
<attr id="147" name="zimbraMailIdleSessionTimeout" type="duration" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited,domainAdminModifiable">
<defaultCOSValue>1d</defaultCOSValue>
<desc>idle timeout</desc>
</attr>
<attr id="148" name="zimbraPrefContactsPerPage" type="integer" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable"> <!-- TODO: get min/max? -->
<defaultCOSValue>25</defaultCOSValue>
<desc>number of contacts per page</desc>
</attr>
<attr id="149" name="zimbraFeatureGalEnabled" type="boolean" cardinality="single" optionalIn="account,cos" flags="accountInfo,accountInherited">
<defaultCOSValue>TRUE</defaultCOSValue>
<defaultExternalCOSValue>FALSE</defaultExternalCOSValue>
<desc>whether GAL features are enabled</desc>
</attr>
<attr id="150" name="zimbraNewMailNotificationFrom" type="string" max="1000" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>Postmaster <postmaster@${RECIPIENT_DOMAIN}></defaultCOSValue>
<desc>Template used to construct the sender of an email notification message. This attribute is ignored when zimbraNewMailNotificationMessage is set.</desc>
</attr>
<attr id="151" name="zimbraNewMailNotificationSubject" type="string" max="1000" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>New message received at ${RECIPIENT_ADDRESS}</defaultCOSValue>
<desc>Template used to construct the subject of an email notification message. This attribute is ignored when zimbraNewMailNotificationMessage is set.</desc>
</attr>
<attr id="152" name="zimbraNewMailNotificationBody" type="string" max="10000" cardinality="single" optionalIn="account,cos" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>New message received at ${RECIPIENT_ADDRESS}.${NEWLINE}Sender: ${SENDER_ADDRESS}${NEWLINE}Subject: ${SUBJECT}</defaultCOSValue>
<desc>Template used to construct the body of an email notification message. This attribute is ignored when zimbraNewMailNotificationMessage is set.</desc>
</attr>
<attr id="153" name="zimbraGalLdapAttrMap" type="string" max="4096" cardinality="multi" optionalIn="globalConfig,domain,galDataSource" flags="domainInherited">
<globalConfigValue>co=workCountry</globalConfigValue>
<globalConfigValue>company=company</globalConfigValue>
<globalConfigValue>zimbraPhoneticCompany,ms-DS-Phonetic-Company-Name=phoneticCompany</globalConfigValue>
<globalConfigValue>givenName,gn=firstName</globalConfigValue>
<globalConfigValue>zimbraPhoneticFirstName,ms-DS-Phonetic-First-Name=phoneticFirstName</globalConfigValue>
<globalConfigValue>sn=lastName</globalConfigValue>
<globalConfigValue>zimbraPhoneticLastName,ms-DS-Phonetic-Last-Name=phoneticLastName</globalConfigValue>
<globalConfigValue>displayName,cn=fullName,fullName2,fullName3,fullName4,fullName5,fullName6,fullName7,fullName8,fullName9,fullName10</globalConfigValue>
<globalConfigValue>initials=initials</globalConfigValue>
<globalConfigValue>description=notes</globalConfigValue>
<globalConfigValue>l=workCity</globalConfigValue>
<globalConfigValue>physicalDeliveryOfficeName=office</globalConfigValue>
<globalConfigValue>ou=department</globalConfigValue>
<globalConfigValue>street,streetAddress=workStreet</globalConfigValue>
<globalConfigValue>postalCode=workPostalCode</globalConfigValue>
<globalConfigValue>facsimileTelephoneNumber,fax=workFax</globalConfigValue>
<globalConfigValue>homeTelephoneNumber,homePhone=homePhone</globalConfigValue>
<globalConfigValue>mobileTelephoneNumber,mobile=mobilePhone</globalConfigValue>
<globalConfigValue>pagerTelephoneNumber,pager=pager</globalConfigValue>
<globalConfigValue>telephoneNumber=workPhone</globalConfigValue>
<globalConfigValue>st=workState</globalConfigValue>
<globalConfigValue>zimbraMailDeliveryAddress,zimbraMailAlias,mail=email,email2,email3,email4,email5,email6,email7,email8,email9,email10,email11,email12,email13,email14,email15,email16</globalConfigValue>
<globalConfigValue>title=jobTitle</globalConfigValue>
<globalConfigValue>whenChanged,modifyTimeStamp=modifyTimeStamp</globalConfigValue>
<globalConfigValue>whenCreated,createTimeStamp=createTimeStamp</globalConfigValue>
<globalConfigValue>zimbraId=zimbraId</globalConfigValue>
<globalConfigValue>objectClass=objectClass</globalConfigValue>
<globalConfigValue>zimbraMailForwardingAddress=member</globalConfigValue>
<globalConfigValue>zimbraCalResType,msExchResourceSearchProperties=zimbraCalResType</globalConfigValue>
<globalConfigValue>zimbraCalResLocationDisplayName=zimbraCalResLocationDisplayName</globalConfigValue>
<globalConfigValue>zimbraCalResBuilding=zimbraCalResBuilding</globalConfigValue>
<globalConfigValue>zimbraCalResCapacity,msExchResourceCapacity=zimbraCalResCapacity</globalConfigValue>
<globalConfigValue>zimbraCalResFloor=zimbraCalResFloor</globalConfigValue>
<globalConfigValue>zimbraCalResSite=zimbraCalResSite</globalConfigValue>
<globalConfigValue>zimbraCalResContactEmail=zimbraCalResContactEmail</globalConfigValue>
<globalConfigValue>zimbraDistributionListSubscriptionPolicy=zimbraDistributionListSubscriptionPolicy</globalConfigValue>
<globalConfigValue>zimbraDistributionListUnsubscriptionPolicy=zimbraDistributionListUnsubscriptionPolicy</globalConfigValue>
<globalConfigValue>msExchResourceSearchProperties=zimbraAccountCalendarUserType</globalConfigValue>
<globalConfigValue>(certificate) userCertificate=userCertificate</globalConfigValue>
<globalConfigValue>(binary) userSMIMECertificate=userSMIMECertificate</globalConfigValue>
<globalConfigValue>(binary) thumbnailPhoto=thumbnailPhoto</globalConfigValue>
<desc>LDAP Gal attribute to contact attr mapping</desc>
</attr>
<attr id="154" name="zimbraMailPort" type="port" cardinality="single" optionalIn="globalConfig,server" flags="serverInherited" callback="MailPort" requiresRestart="mailbox,mta,nginxproxy">
<globalConfigValue>80</globalConfigValue>
<desc>HTTP port for end-user UI</desc>
</attr>
<attr id="155" name="zimbraAdminPort" type="port" cardinality="single" optionalIn="globalConfig,server" flags="serverInherited" callback="CheckPortConflict">
<globalConfigValue>7071</globalConfigValue>
<desc>SSL port for admin UI</desc>
</attr>
<attr id="156" name="zimbraPrefMailSignatureStyle" type="enum" value="outlook,internet" cardinality="single" optionalIn="account,cos,identity" flags="accountInherited,domainAdminModifiable">
<defaultCOSValue>outlook</defaultCOSValue>
<desc>mail signature style outlook|internet (deprecatedSince 5.0 in identity)</desc>