home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.wwiv.com
/
ftp.wwiv.com.zip
/
ftp.wwiv.com
/
pub
/
UTILITY
/
EXMT-TXT.ARJ
/
EXMT-TXT.MOD
Wrap
Text File
|
1992-03-05
|
5KB
|
130 lines
1Zaphod Beeblebrox #1 @62500
77March 3, 19920 at 712:31:41pm00
This was posted somewhere a while back.. near the end of last year. It will
work with 4.20. It's a list of all exemptions and how to come up with
individual ones when programming (an explanation of bit-wise ands and other
things)
1 P/C Ratio
2 Time
3 Time/ P/c Ratio
4 All
5 All,Ratio
6 All,Time
7 All,Time,P/C
8 Post
9 Post,Ratio
10 Post,Time
11 Post,Time,Ratio
12 Post,All
13 Post,All,Ratio
14 Post,All,Time
15 Post,All,Time,Ratio
16 Delete
17 Delete,Ratio
18 Delete,Time
19 Delete,Time,Ratio
20 Delete,All
21 Delete,All,Ratio
22 delete,all,time
23 delete,all,time,ratio
24 delete,post
25 delete,post,ratio
26 delete,post,time
27 delete,post,time,ratio
28 delete,post,all
29 delete,post,all,ratio
30 delete,post,all,time
31 delete,post,all,time,ratio
6[4Filo's Note6]0 I do not believe all of those will work without
doing some modification to the source code.
Ok...Here is a full description of user exemptions.
The exemptions are:
EXEMPTION HEX-VALUE BINARY-VALUE DECIMAL-VALUE
exempt_ratio 0x01 00001 1
exempt_time 0x02 00010 2
exempt_all 0x04 00100 4
exempt_post 0x08 01000 8
exempt_delete 0x10 10000 16
The key value is the binary-value in that if you notice for each exemption
there is a 1 in only 1 space. Now when you want one of your users to
be exempt from something, you put in their exemption a decimal-value
which the BBS will take and &(that does a bit-wise and or an and on the
binary level) and returns either a non-zero or a zero for true and false
respectivly. Here is how a bit-wise and is done.
If you are given the values 10101 and 01100 and you use & on them it will get:
10101
&01100
------
00100
Only where there are 2 1's will it make a 1, otherwise it will be 0. That
applies to the BBS in that if you want a user to be exempt from deletion
you will notice in the auto_delete it uses & with thisuser.exempt and
exempt_delete. So you will have to have a number which has a binary 1
in the same plae as exempt_delete to make it a non-zero number and thus
being exempt from deletion.
exempt delete is 10000, so you will need a value which has 10000 or at
least 16 when you enter the user exemption.
Now if you want your user exempt from different things, just put a 1 in
the corresponding space:
00000
|||||
||||exempt_ratio
|||exempt_time
||exempt_all
|exempt_post
exempt_delete
So, if you wanted to have your user exempt from the ratio and posting,
the binary number you would have would be:
01001
Which is 9 in decimal and what you would enter in your user exemption
space. Here is a listing of all the possible combinations and their
equivelant meaning and decimal number.
------------------------------------------------------------------------------
Hex # for Meaning ^
# user |
|
00000 0 No exemptions |
00001 1 ratio |
00010 2 time |
00011 3 time,ratio |
00100 4 all |
00101 5 all,ratio |
00110 6 all,time |
00111 7 all,time,ratio STOCK WWIV
01000 8 post |
01001 9 post,ratio |
01010 10 post,time |
01011 11 post,time,ratio |
01100 12 post,all |
01101 13 post,all,ratio |
01110 14 post,all,time |
01111 15 post,all,time,ratio V
------------------------------------------------------------------------------
10000 16 delete 10001 17 delete,ratio
10010 18 delete,time
10011 19 delete,time,ratio
10100 20 delete,all
10101 21 delete,all,ratio
10110 22 delete,all,time
10111 23 delete,all,time,ratio
11000 24 delete,post
11001 25 delete,post,ratio (MY visiting sysops)
11010 26 delete,post,time
11011 27 delete,post,time,ratio
11100 28 delete,post,all
11101 29 delete,post,all,ratio
11110 30 delete,post,all,time
11111 31 delete,post,all,time,ratio /*SYSOP!!!*/