[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' |
---|
[1455] | 141 | EQUALITY caseExactMatch |
---|
| 142 | SUBSTR caseExactSubstringsMatch |
---|
| 143 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE ) |
---|
[1200] | 144 | |
---|
| 145 | # pykotaTitle |
---|
| 146 | attributetype ( 1.3.6.1.4.1.16868.1.1.20 NAME 'pykotaTitle' |
---|
| 147 | DESC 'Print job title' |
---|
[1455] | 148 | EQUALITY caseIgnoreMatch |
---|
| 149 | SUBSTR caseIgnoreSubstringsMatch |
---|
| 150 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE ) |
---|
[1200] | 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' |
---|
[1480] | 161 | EQUALITY caseIgnoreMatch |
---|
| 162 | SUBSTR caseIgnoreSubstringsMatch |
---|
| 163 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE ) |
---|
[1200] | 164 | |
---|
[1203] | 165 | # pykotaJobPrice |
---|
| 166 | attributetype ( 1.3.6.1.4.1.16868.1.1.23 NAME 'pykotaJobPrice' |
---|
| 167 | DESC 'Price of a particular job in the history, float' |
---|
| 168 | EQUALITY caseIgnoreIA5Match |
---|
| 169 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) |
---|
| 170 | |
---|
[1473] | 171 | # pykotaHostName |
---|
| 172 | attributetype ( 1.3.6.1.4.1.16868.1.1.24 NAME 'pykotaHostName' |
---|
| 173 | DESC 'The host the job is coming from' |
---|
| 174 | EQUALITY caseIgnoreMatch |
---|
| 175 | SUBSTR caseIgnoreSubstringsMatch |
---|
| 176 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} ) |
---|
[1520] | 177 | |
---|
| 178 | # pykotaJobSizeBytes |
---|
| 179 | attributetype ( 1.3.6.1.4.1.16868.1.1.25 NAME 'pykotaJobSizeBytes' |
---|
| 180 | DESC 'Current job size in number of bytes in the history' |
---|
| 181 | EQUALITY integerMatch |
---|
| 182 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) |
---|
[1473] | 183 | |
---|
[1520] | 184 | # pykotaPayments |
---|
| 185 | attributetype ( 1.3.6.1.4.1.16868.1.1.26 NAME 'pykotaPayments' |
---|
[1522] | 186 | DESC 'Stores all payments made by an user, encoded to store both date and amount, separated by a # between two spaces' |
---|
[1520] | 187 | EQUALITY caseExactIA5Match |
---|
| 188 | SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 ) |
---|
| 189 | |
---|
[1017] | 190 | # |
---|
| 191 | # PyKota Object Classes |
---|
| 192 | # |
---|
[1015] | 193 | |
---|
[1223] | 194 | # pykotaAccount |
---|
[1017] | 195 | objectclass ( 1.3.6.1.4.1.16868.1.2.1 NAME 'pykotaAccount' SUP top AUXILIARY |
---|
[1015] | 196 | DESC 'PyKota Auxiliary User Account' |
---|
[1018] | 197 | MUST ( uid ) |
---|
[1223] | 198 | MAY ( pykotaUserName $ pykotaLimitBy $ mail ) ) |
---|
[1015] | 199 | |
---|
[1017] | 200 | # pykotaGroup |
---|
[1015] | 201 | objectclass ( 1.3.6.1.4.1.16868.1.2.2 NAME 'pykotaGroup' SUP top AUXILIARY |
---|
| 202 | DESC 'PyKota Auxiliary Group' |
---|
[1018] | 203 | MUST ( cn ) |
---|
| 204 | MAY ( pykotaGroupName $ pykotaLimitBy $ memberUid $ uniqueMember $ member ) ) |
---|
[1015] | 205 | |
---|
[1017] | 206 | # pykotaPrinter |
---|
| 207 | objectclass ( 1.3.6.1.4.1.16868.1.2.3 NAME 'pykotaPrinter' SUP top AUXILIARY |
---|
[1015] | 208 | DESC 'PyKota Printer' |
---|
[1018] | 209 | MUST ( cn ) |
---|
[1240] | 210 | MAY ( pykotaPrinterName $ pykotaPricePerPage $ pykotaPricePerJob $ uniqueMember ) ) |
---|
[1015] | 211 | |
---|
[1017] | 212 | # pykotaUserPQuota |
---|
| 213 | objectclass ( 1.3.6.1.4.1.16868.1.2.4 NAME 'pykotaUserPQuota' SUP top AUXILIARY |
---|
[1015] | 214 | DESC 'PyKota User Quota on a Printer' |
---|
[1017] | 215 | MUST ( cn $ pykotaUserName $ pykotaPrinterName ) |
---|
[1015] | 216 | MAY ( pykotaPageCounter $ pykotaLifePageCounter $ pykotaSoftLimit $ pykotaHardLimit $ pykotaDateLimit ) ) |
---|
| 217 | |
---|
[1017] | 218 | # pykotaGroupPQuota |
---|
| 219 | objectclass ( 1.3.6.1.4.1.16868.1.2.5 NAME 'pykotaGroupPQuota' SUP top AUXILIARY |
---|
[1015] | 220 | DESC 'PyKota Group Quota on a Printer' |
---|
[1017] | 221 | MUST ( cn $ pykotaGroupName $ pykotaPrinterName ) |
---|
[1015] | 222 | MAY ( pykotaSoftLimit $ pykotaHardLimit $ pykotaDateLimit ) ) |
---|
| 223 | |
---|
[1017] | 224 | # pykotaJob |
---|
| 225 | objectclass ( 1.3.6.1.4.1.16868.1.2.6 NAME 'pykotaJob' SUP top AUXILIARY |
---|
[1015] | 226 | DESC 'An entry in the job history for a printer' |
---|
[1017] | 227 | MUST ( cn $ pykotaUserName $ pykotaPrinterName $ pykotaJobId ) |
---|
[1520] | 228 | MAY ( pykotaPrinterPageCounter $ pykotaJobSize $ pykotaAction $ pykotaJobPrice $ pykotaFileName $ pykotaTitle $ pykotaCopies $ pykotaOptions $ pykotaHostName $ pykotaJobSizeBytes ) ) |
---|
[1015] | 229 | |
---|
[1017] | 230 | # pykotaAccountBalance |
---|
| 231 | objectclass ( 1.3.6.1.4.1.16868.1.2.7 NAME 'pykotaAccountBalance' SUP top AUXILIARY |
---|
| 232 | DESC 'PyKota User account balance' |
---|
[1520] | 233 | MAY ( pykotaUserName $ pykotaBalance $ pykotaLifeTimePaid $ pykotaPayments ) ) |
---|
[1017] | 234 | |
---|
| 235 | # pykotaLastJob |
---|
| 236 | objectclass ( 1.3.6.1.4.1.16868.1.2.8 NAME 'pykotaLastJob' SUP top AUXILIARY |
---|
| 237 | DESC 'Last job information for a printer' |
---|
[1018] | 238 | MUST ( pykotaLastJobIdent ) |
---|
| 239 | MAY ( pykotaPrinterName ) ) |
---|
[1017] | 240 | |
---|
[1018] | 241 | # pykotaObject - Use it if you have to |
---|
| 242 | objectclass ( 1.3.6.1.4.1.16868.1.2.9 NAME 'pykotaObject' SUP top STRUCTURAL |
---|
| 243 | DESC 'PyKota Object' |
---|
[1017] | 244 | MUST ( cn ) ) |
---|
| 245 | |
---|
| 246 | |
---|