1 03/13/84  canonicalize_mailbox
  2 
  3 Syntax:  canonicalize_mailbox path {-control_args}
  4 
  5 
  6 Function:  converts the messages in a mailbox into their canonical form
  7 as defined by the MR10.2 mail system.
  8 
  9 
 10 Arguments:
 11 path
 12    is the pathname of the mailbox whose messages are to be converted.
 13    The suffix "mbx" is supplied if needed.  The star convention is
 14    accepted.
 15 
 16 
 17 Control arguments:
 18 -force, -fc
 19    temporarily alters your access to the mailbox when necessary to
 20    convert the messages in the mailbox (see "Access required" below).
 21 -no_force, -nfc
 22    never alters your access to the mailbox.  (Default)
 23 -privilege, -priv
 24    uses privileges to bypass the restrictions on the canonicalization
 25    process introduced by the Access Isolation Mechanism (see "Notes on
 26    AIM" below).
 27 -no_privilege, -npriv
 28    does not use privileges.  (Default)
 29 
 30 
 31 Access required:  You must have status (s), modify (m), and append (a)
 32 access to the directory containing the mailbox.  In addition, if
 33 -force is not specified, you must have read (r), add (a), and delete
 34 (d) extended access to the mailbox itself.
 35 
 36 If -privilege is specified, you must have execute (e) access to the
 37 system_privilege_ gate and your maximum process authorization must be
 38 system_high.
 39 
 40 
 41 Notes: The canonical form of a message is similar to the text of the
 42 printed representation of that message when formatted using the default
 43 formatting modes.  For a description of the canonical form, type
 44    help message_format.gi -section canonical form
 45 
 46 Messages stored in mailboxes prior to MR10.2 were not stored in their
 47 canonical form.  Unless these messages are converted to their
 48 canonical form, subsystems, such as read_mail, that provide the option
 49 to select message by content are required to format the messages
 50 during the search.  This formatting while searching severely affects
 51 the performance of the selection process.
 52 
 53 Messages stored in a mailbox after the installation of MR10.2 are
 54 stored in canonical form and will not affect the performance of context
 55 searches.
 56 
 57 
 58 This command needs to be used only once on any given mailbox.  It is
 59 especially recommended that this command be used on any large mailbox
 60 (e.g., logboxes or saveboxes containing more than fifty messages).
 61 
 62 This command first creates a new mailbox in the same directory as the
 63 mailbox whose messages are to be converted.  The messages are then
 64 read from the original message, canonicalized, and stored in the new
 65 mailbox.  Next, the names, access control list, maximum length, and
 66 safety switch setting of the original mailbox are moved to the new
 67 mailbox.  Finally, the original mailbox is deleted.
 68 
 69 If the directory containing the original mailbox has insufficient
 70 quota for the new mailbox, the original mailbox is left intact and an
 71 error message is printed.
 72 
 73 
 74 The record of any process accepting messages on the original mailbox
 75 is lost during the canonicalization process.  You must reissue the
 76 accept_messages command, if needed, for each mailbox that is
 77 processed by canonicalize_mailbox.  Due to the nature of the
 78 accept_messages command, the explicit pathname of your default
 79 mailbox (>udd>Project_id>Person_id>Person_id.mbx) must be supplied if
 80 that mailbox is canonicalized in order to reaccept messages.
 81 
 82 After a mailbox has been canonicalized, all messages in the mailbox
 83 are owned by the user who issued the canonicalize_mailbox command.  If
 84 you originally placed a message in the mailbox, you cannot delete it
 85 if you have own (o) extended access on the mailbox.  Normally, this
 86 side effect of canonicalization is invisible for logboxes and
 87 saveboxes as only the creator of the logbox or savebox has access on
 88 that mailbox.
 89 
 90 
 91 Notes on AIM: If the Access Isolation Mechanism (AIM) is in force at a
 92 site, several restrictions are placed on the use of
 93 canonicalize_mailbox.  These restrictions are eliminated through the
 94 use of -privilege provided that you have sufficient access to use that
 95 control argument (see "Access required" above).
 96 
 97 To use canonicalize_mailbox, your process authorization must be equal
 98 to the access class of the directory containing the mailbox whose
 99 messages are to be converted.
100 
101 Unlike ordinary segments, the access class of a mailbox may be greater
102 than the access class of its containing directory.  Each message in a
103 mailbox has its own access class; the access class of the mailbox
104 specifies the maximum access class for any message that may be added
105 to the mailbox.
106 
107 
108 If the access class of a mailbox is greater than your process
109 authorization, it may contain messages that you can not read.  If you
110 were to canonicalize that mailbox, any such messages would be lost.
111 Therefore, the canonicalize_mailbox command queries for permission to
112 continue if asked to process a mailbox whose access class is greater
113 than the process authorization.  Unless you are quite certain that
114 there are no upgraded messages in the mailbox, you should answer "no"
115 to this query and ask a system administrator to canonicalize the
116 mailbox using -privilege.
117 
118 
119 The canonicalized mailbox created by this command has an access class
120 equal to your maximum process authorization.  If this access class is
121 less than the previous acess class of the mailbox, a warning is
122 issued.  If the new access class is insufficient (e.g., a mailbox
123 shared by several users with different maximum authorizations), ask a
124 system administrator to reclassify the mailbox via the
125 reclassify_sys_seg command.