XMXSEC2 ;ISC-SF/GMB-Message security and restrictions (cont.) ;04/18/2002 08:01
Source file <XMXSEC2.m>
Name | Comments | DBIA/ICR reference |
---|---|---|
SET(XMCD,XMDN,XMOPT,XMOX) | ;
|
|
EDIT(XMDUZ,XMZ,XMZREC) | ; May the user edit the message? (1=may, 0=may not)
|
|
OPTMSG(XMDUZ,XMK,XMZ,XMIM,XMINSTR,XMIU,XMOPT,XMOX,XMQDNUM) | ; The user has access to the message. Now what may the user do with it?
; in: ; XMDUZ = the user ; XMK = basket IEN if message is in a basket ; = ! if super search (option XM SUPER SEARCH) ; = 0 otherwise ; XMZ = the message IEN ; The following are set by INMSG1 and INMSG2^XMXUTIL2 ; XMIM("FROM") = piece 2 of the message's zero node ; XMINSTR = special instructions ; XMIU("ORIGN8")= ; XMIU("IEN") = the user's IEN in the message's recipient multiple ; XMQDNUM = 0 - set XMOPT(<opt>,"?")=dialog text (default) ; 1 - set XMOPT(<opt>,"?")=dialog number (all are TYPE: ERROR) ; FYI, XMOPT(<opt>,"?") is displayed in SHOWERR^XMJDIR. ; out: ; XMOPT(<opt>) Possible options ; '$D(XMOPT(<opt>,"?")) User may do these things. ; $D(XMOPT(<opt>,"?")) User may NOT do these things. |
|
OPTEDIT(XMINSTR,XMOPT,XMOX,XMQDNUM) | ; We know the user may edit the message.
; Now, what, exactly, may be edited? |
|
OPTR(XMDUZ,XMK,XMZ,XMIU,XMSECPAK,XMINSTR) | ; User must be self or have 'read' privilege as surrogate.
|
|
Q(XMCD,XMDN) | ;
|
|
OPTW(XMDUZ,XMZ,XMFROM,XMORIGN8,XMSECPAK,XMINSTR) | ; User must be self or have 'write' privilege as surrogate.
|
Name | Line Occurrences (* Changed, ! Killed) |
---|---|
^TMP("XMY" | OPTEDIT+20 |
^XMB(3.9 - [#3.9] | EDIT+2, EDIT+3, EDIT+4, OPTEDIT+12, OPTMSG+20, OPTW+3, OPTW+15, OPTW+22, OPTR+1, OPTR+13 |
^XUSEC("XUPROGMODE" | OPTR+16 |
Name | Line Occurrences |
---|---|
OPTR | OPTMSG+55 |
OPTW | OPTMSG+52 |
Q | OPTEDIT+14, OPTEDIT+15, OPTEDIT+18, OPTEDIT+21, OPTEDIT+22, OPTMSG+56, OPTW+1, OPTW+2, OPTW+4, OPTW+6 , OPTW+7, OPTW+10, OPTW+13, OPTW+14, OPTW+22, OPTW+23, OPTR+1, OPTR+3, OPTR+4, OPTR+5 , OPTR+6, OPTR+8, OPTR+10, OPTR+12, OPTR+13, OPTR+14, OPTR+16, OPTR+17 |
SET | OPTEDIT+2, OPTEDIT+3, OPTEDIT+4, OPTEDIT+5, OPTEDIT+6, OPTEDIT+7, OPTEDIT+8, OPTEDIT+9, OPTEDIT+10, OPTEDIT+11 , OPTEDIT+12, OPTMSG+23, OPTMSG+24, OPTMSG+25, OPTMSG+26, OPTMSG+27, OPTMSG+28, OPTMSG+29, OPTMSG+30, OPTMSG+31 , OPTMSG+32, OPTMSG+34, OPTMSG+35, OPTMSG+36, OPTMSG+37, OPTMSG+38, OPTMSG+39, OPTMSG+40, OPTMSG+41, OPTMSG+42 , OPTMSG+43, OPTMSG+44, OPTMSG+45, OPTMSG+46, OPTMSG+47, OPTMSG+48, OPTMSG+49, OPTMSG+50 |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
DIR | OPTW+19~ |
DIR("?" | OPTW+21 |
DUZ | OPTEDIT+18, OPTMSG+51, OPTMSG+56, OPTW+10, OPTR+16 |
U | EDIT+2, OPTW+15, OPTR+13 |
XMCD | SET~, SET+3, SET+4, SET+5, Q~, Q+1, Q+2 |
XMDN | SET~, SET+2, Q~, Q+1, Q+2 |
XMDREC | SET+1~, SET+2*, SET+3, SET+4, SET+5 |
XMDUZ | EDIT~, EDIT+1, OPTEDIT+16, OPTEDIT+18, OPTMSG~, OPTMSG+51, OPTMSG+52, OPTMSG+55, OPTMSG+57, OPTMSG+58 , OPTW~, OPTW+8, OPTW+10, OPTR~ |
XMFROM | OPTW~, OPTW+15 |
XMIM | OPTMSG~ |
XMIM("FROM" | OPTMSG+52 |
XMINSTR | OPTEDIT~, OPTMSG~, OPTMSG+52, OPTMSG+55, OPTMSG+57, OPTW~, OPTR~ |
XMINSTR("FLAGS" | OPTEDIT+2, OPTEDIT+4, OPTEDIT+6, OPTEDIT+7, OPTEDIT+11, OPTMSG+40, OPTMSG+42, OPTMSG+44, OPTW+2, OPTR+5 , OPTR+6, OPTR+12 |
XMINSTR("RCPT | BSKT" , OPTEDIT+3 |
XMINSTR("SCR | KEY" , OPTEDIT+12 |
XMINSTR("TYPE" | EDIT+4, OPTEDIT+13, OPTMSG+20, OPTMSG+50, OPTW+1, OPTR+15 |
XMINSTR("VAPOR" | OPTEDIT+10 |
XMIU | OPTMSG~, OPTMSG+55, OPTR~ |
XMIU("IEN" | OPTR+13 |
XMIU("ORIGN8" | OPTMSG+52, OPTMSG+54, OPTMSG+57, OPTR+6, OPTR+11 |
XMK | OPTMSG~, OPTMSG+33, OPTMSG+55, OPTMSG+57, OPTMSG+58, OPTR~, OPTR+2 |
XMOPT | OPTEDIT~, OPTEDIT+2, OPTEDIT+3, OPTEDIT+4, OPTEDIT+5, OPTEDIT+6, OPTEDIT+7, OPTEDIT+8, OPTEDIT+9, OPTEDIT+10 , OPTEDIT+11, OPTEDIT+12, SET~, OPTMSG~, OPTMSG+22!, OPTMSG+23, OPTMSG+24, OPTMSG+25, OPTMSG+26, OPTMSG+27 , OPTMSG+28, OPTMSG+29, OPTMSG+30, OPTMSG+31, OPTMSG+32, OPTMSG+34, OPTMSG+35, OPTMSG+36, OPTMSG+37, OPTMSG+38 , OPTMSG+39, OPTMSG+40, OPTMSG+41, OPTMSG+42, OPTMSG+43, OPTMSG+44, OPTMSG+45, OPTMSG+46, OPTMSG+47, OPTMSG+48 , OPTMSG+49, OPTMSG+50 |
XMOPT( | SET+3*, Q+1*, Q+2* |
XMOPT("A" | OPTW+6, OPTW+8, OPTW+11* |
XMOPT("C" | OPTW+7 |
XMOPT("E" | OPTW+18*, OPTW+21* |
XMOPT("H" | OPTR+9* |
XMOPT("NS" | OPTEDIT+16, OPTEDIT+19* |
XMOPT("P" | OPTR+9 |
XMORIGN8 | OPTW~, OPTW+2, OPTW+12 |
XMOX | OPTEDIT~, OPTEDIT+2, OPTEDIT+3, OPTEDIT+4, OPTEDIT+5, OPTEDIT+6, OPTEDIT+7, OPTEDIT+8, OPTEDIT+9, OPTEDIT+10 , OPTEDIT+11, OPTEDIT+12, SET~, OPTMSG~, OPTMSG+22!, OPTMSG+23, OPTMSG+24, OPTMSG+25, OPTMSG+26, OPTMSG+27 , OPTMSG+28, OPTMSG+29, OPTMSG+30, OPTMSG+31, OPTMSG+32, OPTMSG+34, OPTMSG+35, OPTMSG+36, OPTMSG+37, OPTMSG+38 , OPTMSG+39, OPTMSG+40, OPTMSG+41, OPTMSG+42, OPTMSG+43, OPTMSG+44, OPTMSG+45, OPTMSG+46, OPTMSG+47, OPTMSG+48 , OPTMSG+49, OPTMSG+50 |
XMOX("O" | SET+4* |
XMOX("X" | SET+5* |
>> XMPAKMAN | OPTEDIT+13 |
XMQDNUM | OPTEDIT~, Q+1, OPTMSG~, OPTW+18 |
XMSECPAK | OPTMSG+19~, OPTMSG+20*, OPTMSG+21*, OPTMSG+52, OPTMSG+55, OPTW~, OPTW+4, OPTW+23, OPTR~, OPTR+7 |
>> XMV("NAME" | OPTEDIT+19, OPTW+11 |
>> XMV("PRIV" | OPTMSG+51 |
XMZ | EDIT~, EDIT+2, EDIT+3, EDIT+4, OPTEDIT+12, OPTMSG~, OPTMSG+20, OPTMSG+52, OPTMSG+55, OPTW~ , OPTW+3, OPTW+15, OPTW+22, OPTR~, OPTR+1, OPTR+13, OPTR+14 |
XMZREC | EDIT~, EDIT+1, EDIT+2 |