[1015] | 1 | # $Id$ |
---|
| 2 | # |
---|
| 3 | # pykota.schema |
---|
| 4 | # |
---|
| 5 | # LDAP Schema for Pykota Quota System |
---|
| 6 | # Version 0.2 |
---|
| 7 | # |
---|
[1098] | 8 | # Include it in OpenLDAP's configuration file (/etc/ldap/slapd.conf) |
---|
| 9 | # and restart slapd. |
---|
| 10 | # |
---|
[1015] | 11 | # Written 2003-05-28 by Wayne Godoy and John Flynn <wgodoy =AT= ub -DOT- edu -DOT- bz> |
---|
| 12 | # |
---|
| 13 | # Modified by Jerome Alet 2003-06-01 |
---|
| 14 | # |
---|
| 15 | # 16868.x => Conseil Internet & Logiciels Libres |
---|
| 16 | # 16868.1.x => Pykota |
---|
| 17 | # 16868.1.1.x => attributes |
---|
| 18 | # 16868.1.2.x => classes |
---|
| 19 | # |
---|
[1108] | 20 | # Contributors : Leif Johansson - Stockholm University |
---|
[1017] | 21 | # |
---|
[1015] | 22 | |
---|
[1017] | 23 | # |
---|
| 24 | # PyKota Attributes Types |
---|
| 25 | # |
---|
[1015] | 26 | |
---|
[1017] | 27 | # pykotaLimitBy |
---|
[1015] | 28 | attributetype ( 1.3.6.1.4.1.16868.1.1.1 NAME 'pykotaLimitBy' |
---|
| 29 | DESC 'How to limit the user/group : quota or balance' |
---|
| 30 | EQUALITY caseIgnoreIA5Match |
---|
| 31 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
| 32 | |
---|
[1017] | 33 | # pykotaBalance |
---|
[1015] | 34 | attributetype ( 1.3.6.1.4.1.16868.1.1.2 NAME 'pykotaBalance' |
---|
| 35 | DESC 'Current account balance for the user, float' |
---|
| 36 | EQUALITY caseIgnoreIA5Match |
---|
| 37 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
| 38 | |
---|
[1017] | 39 | # pykotaLifeTimePaid |
---|
[1015] | 40 | attributetype ( 1.3.6.1.4.1.16868.1.1.3 NAME 'pykotaLifeTimePaid' |
---|
| 41 | DESC 'Total money paid by the user to fill his account balance, float' |
---|
| 42 | EQUALITY caseIgnoreIA5Match |
---|
| 43 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
| 44 | |
---|
[1017] | 45 | # pykotaPricePerPage |
---|
[1015] | 46 | attributetype ( 1.3.6.1.4.1.16868.1.1.4 NAME 'pykotaPricePerPage' |
---|
| 47 | DESC 'Price per page for a printer, float' |
---|
| 48 | EQUALITY caseIgnoreIA5Match |
---|
| 49 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
| 50 | |
---|
[1017] | 51 | # pykotaPricePerJob |
---|
[1015] | 52 | attributetype ( 1.3.6.1.4.1.16868.1.1.5 NAME 'pykotaPricePerJob' |
---|
| 53 | DESC 'Price per job for a printer, float' |
---|
| 54 | EQUALITY caseIgnoreIA5Match |
---|
| 55 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
| 56 | |
---|
[1017] | 57 | # pykotaSoftLimit |
---|
| 58 | attributetype ( 1.3.6.1.4.1.16868.1.1.6 NAME 'pykotaSoftLimit' |
---|
[1015] | 59 | DESC 'Soft limit in maximal number of pages' |
---|
[1041] | 60 | EQUALITY caseIgnoreIA5Match |
---|
| 61 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
[1015] | 62 | |
---|
[1017] | 63 | # pykotaHardLimit |
---|
| 64 | attributetype ( 1.3.6.1.4.1.16868.1.1.7 NAME 'pykotaHardLimit' |
---|
[1015] | 65 | DESC 'Hard limit in maximal number of pages' |
---|
[1041] | 66 | EQUALITY caseIgnoreIA5Match |
---|
| 67 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
[1015] | 68 | |
---|
[1017] | 69 | # pykotaDateLimit |
---|
| 70 | attributetype ( 1.3.6.1.4.1.16868.1.1.8 NAME 'pykotaDateLimit' |
---|
[1015] | 71 | DESC 'Date at which the soft limit becomes a hard one' |
---|
| 72 | EQUALITY caseIgnoreIA5Match |
---|
| 73 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
| 74 | |
---|
[1017] | 75 | # pykotaPageCounter |
---|
| 76 | attributetype ( 1.3.6.1.4.1.16868.1.1.9 NAME 'pykotaPageCounter' |
---|
[1015] | 77 | DESC 'Current page counter for the user on a particular printer' |
---|
| 78 | EQUALITY integerMatch |
---|
| 79 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) |
---|
| 80 | |
---|
[1017] | 81 | # pykotaLifePageCounter |
---|
| 82 | attributetype ( 1.3.6.1.4.1.16868.1.1.10 NAME 'pykotaLifePageCounter' |
---|
[1015] | 83 | DESC 'Total page counter for the user on a particular printer' |
---|
| 84 | EQUALITY integerMatch |
---|
| 85 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) |
---|
| 86 | |
---|
[1017] | 87 | # pykotaJobId |
---|
| 88 | attributetype ( 1.3.6.1.4.1.16868.1.1.11 NAME 'pykotaJobId' |
---|
[1015] | 89 | DESC 'Id of a job in a printer history of jobs' |
---|
[1017] | 90 | EQUALITY caseExactIA5Match |
---|
| 91 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
[1015] | 92 | |
---|
[1017] | 93 | # pykotaPrinterPageCounter |
---|
| 94 | attributetype ( 1.3.6.1.4.1.16868.1.1.12 NAME 'pykotaPrinterPageCounter' |
---|
[1015] | 95 | DESC 'Life time page counter of a printer when the job began' |
---|
| 96 | EQUALITY integerMatch |
---|
| 97 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) |
---|
| 98 | |
---|
[1017] | 99 | # pykotaJobSize |
---|
| 100 | attributetype ( 1.3.6.1.4.1.16868.1.1.13 NAME 'pykotaJobSize' |
---|
[1015] | 101 | DESC 'Current job size in number of pages in the history' |
---|
[1200] | 102 | EQUALITY integerMatch |
---|
| 103 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) |
---|
[1015] | 104 | |
---|
[1017] | 105 | # pykotaAction |
---|
| 106 | attributetype ( 1.3.6.1.4.1.16868.1.1.14 NAME 'pykotaAction' |
---|
[1018] | 107 | DESC 'Was the job allowed, or denied : ( "ALLOW" | "DENY" )' |
---|
| 108 | EQUALITY caseExactIA5Match |
---|
[1015] | 109 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
| 110 | |
---|
[1017] | 111 | # pykotaPrinterName |
---|
| 112 | attributetype ( 1.3.6.1.4.1.16868.1.1.15 NAME 'pykotaPrinterName' |
---|
| 113 | DESC 'PyKota printer name as received from the printing subsystem' |
---|
[1200] | 114 | EQUALITY caseExactIA5Match |
---|
| 115 | SUBSTR caseExactIA5SubstringsMatch |
---|
[1015] | 116 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
[1017] | 117 | |
---|
| 118 | # pykotaUserName |
---|
| 119 | attributetype ( 1.3.6.1.4.1.16868.1.1.16 NAME 'pykotaUserName' |
---|
| 120 | DESC 'PyKota user name' |
---|
| 121 | EQUALITY caseExactIA5Match |
---|
[1200] | 122 | SUBSTR caseExactIA5SubstringsMatch |
---|
[1017] | 123 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
| 124 | |
---|
| 125 | # pykotaGroupName |
---|
| 126 | attributetype ( 1.3.6.1.4.1.16868.1.1.17 NAME 'pykotaGroupName' |
---|
| 127 | DESC 'PyKota group name' |
---|
| 128 | EQUALITY caseExactIA5Match |
---|
[1200] | 129 | SUBSTR caseExactIA5SubstringsMatch |
---|
[1017] | 130 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
| 131 | |
---|
[1018] | 132 | # pykotaLastJobIdent |
---|
| 133 | attributetype ( 1.3.6.1.4.1.16868.1.1.18 NAME 'pykotaLastJobIdent' |
---|
| 134 | DESC 'Identifies the last job in the history' |
---|
[1017] | 135 | EQUALITY caseExactIA5Match |
---|
| 136 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
| 137 | |
---|
[1200] | 138 | # pykotaFileName |
---|
| 139 | attributetype ( 1.3.6.1.4.1.16868.1.1.19 NAME 'pykotaFileName' |
---|
| 140 | DESC 'Print job filename' |
---|
| 141 | EQUALITY caseExactIA5Match |
---|
| 142 | SUBSTR caseExactIA5SubstringsMatch |
---|
| 143 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
| 144 | |
---|
| 145 | # pykotaTitle |
---|
| 146 | attributetype ( 1.3.6.1.4.1.16868.1.1.20 NAME 'pykotaTitle' |
---|
| 147 | DESC 'Print job title' |
---|
| 148 | EQUALITY caseIgnoreIA5Match |
---|
| 149 | SUBSTR caseIgnoreIA5SubstringsMatch |
---|
| 150 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
| 151 | |
---|
| 152 | # pykotaCopies |
---|
| 153 | attributetype ( 1.3.6.1.4.1.16868.1.1.21 NAME 'pykotaCopies' |
---|
| 154 | DESC 'Number of copies of the current print job' |
---|
| 155 | EQUALITY integerMatch |
---|
| 156 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) |
---|
| 157 | |
---|
| 158 | # pykotaOptions |
---|
| 159 | attributetype ( 1.3.6.1.4.1.16868.1.1.22 NAME 'pykotaOptions' |
---|
| 160 | DESC 'Print job options' |
---|
| 161 | EQUALITY caseExactIA5Match |
---|
| 162 | SUBSTR caseExactIA5SubstringsMatch |
---|
| 163 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
| 164 | |
---|
[1017] | 165 | # |
---|
| 166 | # PyKota Object Classes |
---|
| 167 | # |
---|
[1015] | 168 | |
---|
[1017] | 169 | # pykotaUser |
---|
| 170 | objectclass ( 1.3.6.1.4.1.16868.1.2.1 NAME 'pykotaAccount' SUP top AUXILIARY |
---|
[1015] | 171 | DESC 'PyKota Auxiliary User Account' |
---|
[1018] | 172 | MUST ( uid ) |
---|
| 173 | MAY ( pykotaUserName $ pykotaLimitBy ) ) |
---|
[1015] | 174 | |
---|
[1017] | 175 | # pykotaGroup |
---|
[1015] | 176 | objectclass ( 1.3.6.1.4.1.16868.1.2.2 NAME 'pykotaGroup' SUP top AUXILIARY |
---|
| 177 | DESC 'PyKota Auxiliary Group' |
---|
[1018] | 178 | MUST ( cn ) |
---|
| 179 | MAY ( pykotaGroupName $ pykotaLimitBy $ memberUid $ uniqueMember $ member ) ) |
---|
[1015] | 180 | |
---|
[1017] | 181 | # pykotaPrinter |
---|
| 182 | objectclass ( 1.3.6.1.4.1.16868.1.2.3 NAME 'pykotaPrinter' SUP top AUXILIARY |
---|
[1015] | 183 | DESC 'PyKota Printer' |
---|
[1018] | 184 | MUST ( cn ) |
---|
| 185 | MAY ( pykotaPrinterName $ pykotaPricePerPage $ pykotaPricePerJob ) ) |
---|
[1015] | 186 | |
---|
[1017] | 187 | # pykotaUserPQuota |
---|
| 188 | objectclass ( 1.3.6.1.4.1.16868.1.2.4 NAME 'pykotaUserPQuota' SUP top AUXILIARY |
---|
[1015] | 189 | DESC 'PyKota User Quota on a Printer' |
---|
[1017] | 190 | MUST ( cn $ pykotaUserName $ pykotaPrinterName ) |
---|
[1015] | 191 | MAY ( pykotaPageCounter $ pykotaLifePageCounter $ pykotaSoftLimit $ pykotaHardLimit $ pykotaDateLimit ) ) |
---|
| 192 | |
---|
[1017] | 193 | # pykotaGroupPQuota |
---|
| 194 | objectclass ( 1.3.6.1.4.1.16868.1.2.5 NAME 'pykotaGroupPQuota' SUP top AUXILIARY |
---|
[1015] | 195 | DESC 'PyKota Group Quota on a Printer' |
---|
[1017] | 196 | MUST ( cn $ pykotaGroupName $ pykotaPrinterName ) |
---|
[1015] | 197 | MAY ( pykotaSoftLimit $ pykotaHardLimit $ pykotaDateLimit ) ) |
---|
| 198 | |
---|
[1017] | 199 | # pykotaJob |
---|
| 200 | objectclass ( 1.3.6.1.4.1.16868.1.2.6 NAME 'pykotaJob' SUP top AUXILIARY |
---|
[1015] | 201 | DESC 'An entry in the job history for a printer' |
---|
[1017] | 202 | MUST ( cn $ pykotaUserName $ pykotaPrinterName $ pykotaJobId ) |
---|
[1200] | 203 | MAY ( pykotaPrinterPageCounter $ pykotaJobSize $ pykotaAction $ pykotaFileName $ pykotaTitle $ pykotaCopies $ pykotaOptions ) ) |
---|
[1015] | 204 | |
---|
[1017] | 205 | # pykotaAccountBalance |
---|
| 206 | objectclass ( 1.3.6.1.4.1.16868.1.2.7 NAME 'pykotaAccountBalance' SUP top AUXILIARY |
---|
| 207 | DESC 'PyKota User account balance' |
---|
[1018] | 208 | MAY ( pykotaUserName $ pykotaBalance $ pykotaLifeTimePaid ) ) |
---|
[1017] | 209 | |
---|
| 210 | # pykotaLastJob |
---|
| 211 | objectclass ( 1.3.6.1.4.1.16868.1.2.8 NAME 'pykotaLastJob' SUP top AUXILIARY |
---|
| 212 | DESC 'Last job information for a printer' |
---|
[1018] | 213 | MUST ( pykotaLastJobIdent ) |
---|
| 214 | MAY ( pykotaPrinterName ) ) |
---|
[1017] | 215 | |
---|
[1018] | 216 | # pykotaObject - Use it if you have to |
---|
| 217 | objectclass ( 1.3.6.1.4.1.16868.1.2.9 NAME 'pykotaObject' SUP top STRUCTURAL |
---|
| 218 | DESC 'PyKota Object' |
---|
[1017] | 219 | MUST ( cn ) ) |
---|
| 220 | |
---|
| 221 | |
---|