[7779] | 1 | development files for lert program |
---|
| 2 | |
---|
| 3 | lert is supposed to notify a user during login via zephyr or cat if the |
---|
| 4 | user belongs to a group (originally, users whose accounts are |
---|
| 5 | scheduled for deactivation). |
---|
| 6 | |
---|
| 7 | client/server needed (rather than simple world readable file) to |
---|
| 8 | protect privacy of those scheduled for deactivation (important since |
---|
| 9 | such accounts are often targets for crackers). |
---|
| 10 | |
---|
| 11 | client program uses kerberos to ask server if we need to notify. |
---|
| 12 | this assures server that client is who it says it is. |
---|
| 13 | |
---|
| 14 | server looks in database and returns string of characters, one |
---|
| 15 | character for each group. |
---|
| 16 | |
---|
| 17 | client then sends one message (zephyr or cat) for each character. |
---|
| 18 | files with messages are kept in well-known location, since I don't |
---|
| 19 | think either the text of the messages or the existence of the groups |
---|
| 20 | needs to be a secret. |
---|
| 21 | |
---|
| 22 | administrators of the lert system have lertload to add users with a |
---|
| 23 | letter group and lertdump to look at the db, lertstop to remove a |
---|
| 24 | category, and lertused to remove a user. |
---|
| 25 | |
---|
| 26 | idiot# files are test files I used to learn something about kerberos, |
---|
| 27 | the zwrite code from gms, and the improved zwrite code I'm using for |
---|
| 28 | this. |
---|
| 29 | |
---|
| 30 | idiot4 is a stand-alone version of the client/server without kerberos or |
---|
| 31 | networking. It may turn out to be handy for showing the administrators |
---|
| 32 | just what lert will do...since it allows you to cheat and tell it which |
---|
| 33 | user name to use. |
---|
| 34 | |
---|
| 35 | krbreq.c and ticode.c are example code -- nonworking. |
---|
| 36 | |
---|
| 37 | lert.c is the client. |
---|
| 38 | usage: lert [-z] |
---|
| 39 | lertsrv.c is the server. |
---|
| 40 | usage: lert |
---|
| 41 | lertload.c is the db load. |
---|
| 42 | usage: lertload type < namefile |
---|
| 43 | lertdump.c is the db dump. |
---|
| 44 | usage: lertdump |
---|
| 45 | lertstop.c removes a category |
---|
| 46 | usage: lertstop type |
---|
| 47 | lertused.c removes a user |
---|
| 48 | usage: lertstop name |
---|
| 49 | lertsaid.c dumps the log db |
---|
| 50 | usage: lertdump |
---|
| 51 | |
---|
| 52 | note: code here is neither well-commented nor particularly |
---|
| 53 | well-designed. I think it all works, and given a bit more time, |
---|
| 54 | should comment it and package it better, but... |
---|
| 55 | |
---|
| 56 | futures: |
---|
| 57 | lertsrv actually sees every login in the place. it might be |
---|
| 58 | interesting/useful sometimes to be able to track those (if there isn't |
---|
| 59 | anything else doing it). you could add this pretty easily... |
---|
| 60 | lertsrv also could count accesses, msgs, etc. stats are so much fun. |
---|
| 61 | |
---|
| 62 | |
---|
| 63 | |
---|