# (c) 2003 Tassilo Erlewein <tassilo.erlewein@erfrakon.de>
# (c) 2003 Martin Konold <martin.konold@erfrakon.de>
# (c) 2003 Achim Frank <achim.frank@erfrakon.de>
# This program is Free Software under the GNU General Public License (>=v2).
# Read the file COPYING that comes with this packages for details.

# This copy of kolab.schema has been adjusted for Mandrake Linux by
# Buchan Milne <bgmilne@linux-mandrake.com> to:
# * Not duplicate the definitions in
#   -core.schema (2.5.X.X)
#   -cosine.schema (0.9.2324.1920030.100.X.X
#   -inetorgperson (2.16.840.1.113730.3.X.X
# * Use the Kolab Foundations Private Enterprise number (19414) in Kolab OIDs
#
# As such, use of this schema file both allows and requires include
# statements in slapd.conf for core.schema, cosine.schema and 
# inetorgperson.schema which precede the inclusion of this schema file.
#
# The remaining OID not owned by Kolab is 1.3.6.1.4.1.5322.13.1.1  (from 
# draft-howard-named-object-00.txt)

####################
# kolab attributes #
####################

attributetype ( 1.3.6.1.4.1.19414.2.1.1
        NAME ( 'k' 'kolab' )
        SUP name )

attributetype ( 1.3.6.1.4.1.19414.2.1.2
	NAME 'deleteflag'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 
	EQUALITY booleanMatch )

attributetype ( 1.3.6.1.4.1.19414.2.1.3
        NAME 'alias' 
        DESC 'RFC1274: RFC822 Mailbox'
    	EQUALITY caseIgnoreIA5Match
    	SUBSTR caseIgnoreIA5SubstringsMatch
    	SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )

# global attributes

attributetype ( 1.3.6.1.4.1.19414.2.1.5
	NAME 'fqhostname'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )

# postfix specific attributes

attributetype ( 1.3.6.1.4.1.19414.2.1.501
	NAME 'postfix-mydomain'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )

attributetype ( 1.3.6.1.4.1.19414.2.1.502
	NAME 'postfix-relaydomains'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )

attributetype ( 1.3.6.1.4.1.19414.2.1.503
	NAME 'postfix-mydestination'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )

attributetype ( 1.3.6.1.4.1.19414.2.1.504
	NAME 'postfix-mynetworks'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )

attributetype ( 1.3.6.1.4.1.19414.2.1.505
        NAME 'postfix-relayhost'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )

attributetype ( 1.3.6.1.4.1.19414.2.1.506
        NAME 'postfix-transport'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )


# imapd specific attributes

attributetype ( 1.3.6.1.4.1.19414.2.1.601
	NAME 'cyrus-autocreatequota'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )

attributetype ( 1.3.6.1.4.1.19414.2.1.602
	NAME 'cyrus-admins'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )

attributetype ( 1.3.6.1.4.1.19414.2.1.603
	NAME 'cyrus-imap'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
	EQUALITY booleanMatch )

attributetype ( 1.3.6.1.4.1.19414.2.1.604
	NAME 'cyrus-pop3'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 
	EQUALITY booleanMatch )

attributetype ( 1.3.6.1.4.1.19414.2.1.605
        NAME 'userquota'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )

attributetype ( 1.3.6.1.4.1.19414.2.1.651
	NAME 'acl'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )

attributetype ( 1.3.6.1.4.1.19414.2.1.606
        NAME 'cyrus-imaps'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
	EQUALITY booleanMatch )

attributetype ( 1.3.6.1.4.1.19414.2.1.607
        NAME 'cyrus-pop3s'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 
	EQUALITY booleanMatch )

attributetype ( 1.3.6.1.4.1.19414.2.1.608
        NAME 'cyrus-sieve'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 
	EQUALITY booleanMatch )

# apache2 and php specific attributes
attributetype ( 1.3.6.1.4.1.19414.2.1.701
	NAME 'apache-http'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 
	EQUALITY booleanMatch )

# proftpd specific attributes

attributetype ( 1.3.6.1.4.1.19414.2.1.901
	NAME 'proftpd-defaultquota'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )

attributetype ( 1.3.6.1.4.1.19414.2.1.902
	NAME 'proftpd-ftp'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 
	EQUALITY booleanMatch )

attributetype ( 1.3.6.1.4.1.19414.2.1.903
	NAME 'proftpd-userPassword'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 ) 

########################
# kolab object classes #
########################

objectclass ( 1.3.6.1.4.1.19414.2.2.1 NAME 'kolab'
	DESC 'Kolab server config'
	MUST k
	SUP top STRUCTURAL
	MAY ( 	fqhostname $
	      	postfix-mydomain $ 
 		postfix-relaydomains $ 
		postfix-mydestination $ 
		postfix-mynetworks $ 
 		postfix-relayhost $ 
		postfix-transport $
	      	cyrus-autocreatequota $ 
		cyrus-admins $ 
		cyrus-imap $ 
		cyrus-pop3 $ 
		cyrus-imaps $ 
		cyrus-pop3s $ 
		cyrus-sieve $
	      	apache-http $
	      	proftpd-ftp $ 
		proftpd-defaultquota $ 
		uid $
		userPassword ) )

objectclass ( 1.3.6.1.4.1.19414.2.2.9 NAME 'sharedfolder'
	DESC 'IMAP shared folder'
	SUP top STRUCTURAL
	MUST cn
	MAY ( acl $ userquota $ deleteflag ) ) 

objectclass ( 1.3.6.1.4.1.5322.13.1.1 NAME 'namedObject' 
	SUP top STRUCTURAL 
	MAY cn )

