Show
Ignore:
Timestamp:
06/06/03 16:21:08 (21 years ago)
Author:
jalet
Message:

New LDAP schema.
Small bug fixes.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • pykota/trunk/initscripts/ldap/pykota.schema

    r1015 r1017  
    1616# 
    1717# 
     18# Contributors : Leif Johansson 
     19# 
    1820# THIS IS WORK UNDER HEAVY DEVELOPPMENT ! 
    1921# 
     
    2426# 
    2527 
    26 ## Pykota related LDAP attributes 
     28#         
     29# PyKota Attributes Types 
     30# 
    2731 
     32# pykotaLimitBy 
    2833attributetype ( 1.3.6.1.4.1.16868.1.1.1 NAME 'pykotaLimitBy' 
    2934        DESC 'How to limit the user/group : quota or balance' 
     
    3136        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) 
    3237 
     38# pykotaBalance 
    3339attributetype ( 1.3.6.1.4.1.16868.1.1.2 NAME 'pykotaBalance' 
    3440        DESC 'Current account balance for the user, float' 
     
    3642        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) 
    3743 
     44# pykotaLifeTimePaid 
    3845attributetype ( 1.3.6.1.4.1.16868.1.1.3 NAME 'pykotaLifeTimePaid' 
    3946        DESC 'Total money paid by the user to fill his account balance, float' 
     
    4148        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) 
    4249 
     50# pykotaPricePerPage 
    4351attributetype ( 1.3.6.1.4.1.16868.1.1.4 NAME 'pykotaPricePerPage' 
    4452        DESC 'Price per page for a printer, float' 
     
    4654        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) 
    4755 
     56# pykotaPricePerJob 
    4857attributetype ( 1.3.6.1.4.1.16868.1.1.5 NAME 'pykotaPricePerJob' 
    4958        DESC 'Price per job for a printer, float' 
     
    5160        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) 
    5261 
    53 attributetype ( 1.3.6.1.4.1.16868.1.1.6 NAME 'pykotaPrinterName' 
    54         DESC 'Printer name as defined in the printing environment, e.g. lp' 
    55         EQUALITY caseIgnoreIA5Match 
    56         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) 
    57  
    58 attributetype ( 1.3.6.1.4.1.16868.1.1.7 NAME 'pykotaSoftLimit' 
     62# pykotaSoftLimit 
     63attributetype ( 1.3.6.1.4.1.16868.1.1.6 NAME 'pykotaSoftLimit' 
    5964        DESC 'Soft limit in maximal number of pages' 
    6065        EQUALITY integerMatch 
    6166        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) 
    6267         
    63 attributetype ( 1.3.6.1.4.1.16868.1.1.8 NAME 'pykotaHardLimit' 
     68# pykotaHardLimit         
     69attributetype ( 1.3.6.1.4.1.16868.1.1.7 NAME 'pykotaHardLimit' 
    6470        DESC 'Hard limit in maximal number of pages' 
    6571        EQUALITY integerMatch 
    6672        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) 
    6773 
    68 attributetype ( 1.3.6.1.4.1.16868.1.1.9 NAME 'pykotaDateLimit' 
     74# pykotaDateLimit 
     75attributetype ( 1.3.6.1.4.1.16868.1.1.8 NAME 'pykotaDateLimit' 
    6976        DESC 'Date at which the soft limit becomes a hard one' 
    7077        EQUALITY caseIgnoreIA5Match 
    7178        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) 
    7279 
    73 attributetype ( 1.3.6.1.4.1.16868.1.1.10 NAME 'pykotaPageCounter' 
     80# pykotaPageCounter 
     81attributetype ( 1.3.6.1.4.1.16868.1.1.9 NAME 'pykotaPageCounter' 
    7482        DESC 'Current page counter for the user on a particular printer' 
    7583        EQUALITY integerMatch 
    7684        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) 
    7785 
    78 attributetype ( 1.3.6.1.4.1.16868.1.1.11 NAME 'pykotaLifePageCounter' 
     86# pykotaLifePageCounter 
     87attributetype ( 1.3.6.1.4.1.16868.1.1.10 NAME 'pykotaLifePageCounter' 
    7988        DESC 'Total page counter for the user on a particular printer' 
    8089        EQUALITY integerMatch 
    8190        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) 
    8291 
    83 attributetype ( 1.3.6.1.4.1.16868.1.1.12 NAME 'pykotaJobHistoryId' 
    84         DESC 'Id of an entry in a printer history of jobs' 
    85         EQUALITY integerMatch 
    86         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) 
     92# pykotaJobId 
     93attributetype ( 1.3.6.1.4.1.16868.1.1.11 NAME 'pykotaJobId' 
     94        DESC 'Id of a job in a printer history of jobs' 
     95        EQUALITY caseExactIA5Match 
     96        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) 
    8797 
    88 attributetype ( 1.3.6.1.4.1.16868.1.1.13 NAME 'pykotaJobId' 
    89         DESC 'Id of a job in a printer history of jobs' 
    90         EQUALITY integerMatch 
    91         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) 
    92  
    93 attributetype ( 1.3.6.1.4.1.16868.1.1.14 NAME 'pykotaPrinterPageCounter' 
     98# pykotaPrinterPageCounter 
     99attributetype ( 1.3.6.1.4.1.16868.1.1.12 NAME 'pykotaPrinterPageCounter' 
    94100        DESC 'Life time page counter of a printer when the job began' 
    95101        EQUALITY integerMatch 
    96102        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) 
    97103 
    98 attributetype ( 1.3.6.1.4.1.16868.1.1.15 NAME 'pykotaJobSize' 
     104# pykotaJobSize 
     105attributetype ( 1.3.6.1.4.1.16868.1.1.13 NAME 'pykotaJobSize' 
    99106        DESC 'Current job size in number of pages in the history' 
    100107        EQUALITY integerMatch 
    101108        SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE ) 
    102109 
    103 attributetype ( 1.3.6.1.4.1.16868.1.1.16 NAME 'pykotaAction' 
     110# pykotaAction 
     111attributetype ( 1.3.6.1.4.1.16868.1.1.14 NAME 'pykotaAction' 
    104112        DESC 'Was the job allowed, or denied' 
    105113        EQUALITY caseIgnoreIA5Match 
    106114        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) 
    107115         
    108 attributetype ( 1.3.6.1.4.1.16868.1.1.17 NAME 'pykotaJobDate' 
    109         DESC 'Date of when the job began' 
     116# pykotaPrinterName         
     117attributetype ( 1.3.6.1.4.1.16868.1.1.15 NAME 'pykotaPrinterName' 
     118        DESC 'PyKota printer name as received from the printing subsystem' 
    110119        EQUALITY caseIgnoreIA5Match 
    111120        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) 
     121         
     122# pykotaUserName         
     123attributetype ( 1.3.6.1.4.1.16868.1.1.16 NAME 'pykotaUserName' 
     124        DESC 'PyKota user name' 
     125        EQUALITY caseExactIA5Match 
     126        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) 
     127         
     128# pykotaGroupName         
     129attributetype ( 1.3.6.1.4.1.16868.1.1.17 NAME 'pykotaGroupName' 
     130        DESC 'PyKota group name' 
     131        EQUALITY caseExactIA5Match 
     132        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) 
     133         
     134# pykotaLastJobUUID         
     135attributetype ( 1.3.6.1.4.1.16868.1.1.18 NAME 'pykotaLastJobUUID' 
     136        DESC 'Last job uuid in the history' 
     137        EQUALITY caseExactIA5Match 
     138        SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE ) 
     139         
     140#         
     141# PyKota Object Classes 
     142# 
    112143 
    113  
    114 ## New Pykota User object type 
    115 objectclass ( 1.3.6.1.4.1.16868.1.2.1 NAME 'pykotaUser' SUP top AUXILIARY 
     144# pykotaUser 
     145objectclass ( 1.3.6.1.4.1.16868.1.2.1 NAME 'pykotaAccount' SUP top AUXILIARY 
    116146        DESC 'PyKota Auxiliary User Account' 
    117         MUST ( uid ) 
    118         MAY  ( pykotaLimitBy $ pykotaBalance $ pykotaLifeTimePaid ) ) 
     147        MUST ( uid $ pykotaUserName ) 
     148        MAY  ( pykotaLimitBy ) ) 
    119149         
    120 ## New Pykota Group object type 
     150# pykotaGroup         
    121151objectclass ( 1.3.6.1.4.1.16868.1.2.2 NAME 'pykotaGroup' SUP top AUXILIARY 
    122152        DESC 'PyKota Auxiliary Group' 
    123         MUST ( cn ) 
    124         MAY  ( pykotaLimitBy ) ) 
     153        MUST ( cn $ pykotaGroupName ) 
     154        MAY  ( pykotaLimitBy $ memberUid ) ) 
    125155         
    126 ## New Pykota Printer object type 
    127 objectclass ( 1.3.6.1.4.1.16868.1.2.3 NAME 'pykotaPrinter' SUP top STRUCTURAL 
     156# pykotaPrinter         
     157objectclass ( 1.3.6.1.4.1.16868.1.2.3 NAME 'pykotaPrinter' SUP top AUXILIARY 
    128158        DESC 'PyKota Printer' 
    129         MUST ( pykotaPrinterName ) 
     159        MUST ( cn $ pykotaPrinterName ) 
    130160        MAY  ( pykotaPricePerPage $ pykotaPricePerJob ) ) 
    131161         
    132 ## New PyKota User Print Quota on a Printer         
    133 objectclass ( 1.3.6.1.4.1.16868.1.2.4 NAME 'pykotaUserPQuota' SUP top STRUCTURAL 
     162# pykotaUserPQuota         
     163objectclass ( 1.3.6.1.4.1.16868.1.2.4 NAME 'pykotaUserPQuota' SUP top AUXILIARY 
    134164        DESC 'PyKota User Quota on a Printer' 
    135         MUST ( uid ) 
     165        MUST ( cn $ pykotaUserName $ pykotaPrinterName ) 
    136166        MAY  ( pykotaPageCounter $ pykotaLifePageCounter $ pykotaSoftLimit $ pykotaHardLimit $ pykotaDateLimit ) ) 
    137167         
    138 ## New PyKota Group Print Quota on a Printer         
    139 objectclass ( 1.3.6.1.4.1.16868.1.2.5 NAME 'pykotaGroupPQuota' SUP top STRUCTURAL 
     168# pykotaGroupPQuota         
     169objectclass ( 1.3.6.1.4.1.16868.1.2.5 NAME 'pykotaGroupPQuota' SUP top AUXILIARY 
    140170        DESC 'PyKota Group Quota on a Printer' 
    141         MUST ( cn ) 
     171        MUST ( cn $ pykotaGroupName $ pykotaPrinterName ) 
    142172        MAY  ( pykotaSoftLimit $ pykotaHardLimit $ pykotaDateLimit ) ) 
    143173         
    144 ## New PyKota Job entry in a Printer's history         
    145 objectclass ( 1.3.6.1.4.1.16868.1.2.6 NAME 'pykotaPrinterJob' SUP top STRUCTURAL 
     174# pykotaJob         
     175objectclass ( 1.3.6.1.4.1.16868.1.2.6 NAME 'pykotaJob' SUP top AUXILIARY 
    146176        DESC 'An entry in the job history for a printer' 
    147         MUST ( pykotaJobHistoryId $ uid $ pykotaJobId ) 
    148         MAY  ( pykotaPrinterPageCounter $ pykotaJobSize $ pykotaAction $ pykotaJobDate ) ) 
     177        MUST ( cn $ pykotaUserName $ pykotaPrinterName $ pykotaJobId ) 
     178        MAY  ( pykotaPrinterPageCounter $ pykotaJobSize $ pykotaAction ) ) 
    149179         
     180# pykotaAccountBalance 
     181objectclass ( 1.3.6.1.4.1.16868.1.2.7 NAME 'pykotaAccountBalance' SUP top AUXILIARY 
     182        DESC 'PyKota User account balance' 
     183        MUST ( pykotaUserName ) 
     184        MAY  ( pykotaBalance $ pykotaLifeTimePaid ) ) 
     185         
     186# pykotaLastJob         
     187objectclass ( 1.3.6.1.4.1.16868.1.2.8 NAME 'pykotaLastJob' SUP top AUXILIARY 
     188        DESC 'Last job information for a printer' 
     189        MUST ( pykotaPrinterName $ pykotaLastJobUUID ) ) 
     190         
     191# pykotaNamed - Use it if you have to  
     192objectclass ( 1.3.6.1.4.1.16868.1.2.9 NAME 'pykotaNamed' SUP top STRUCTURAL 
     193        DESC 'PyKota Named Object' 
     194        MUST ( cn ) ) 
     195         
     196