{
{   The purpose of this request is to allow a user to change
{ attributes of a segment.  Some attribute changes (such as
{ changing a segment attribute to BINDING) are rejected unless
{ the calling procedure is running within a certain ring bracket.
{
{       MMP$STORE_SEGMENT_ATTRIBUTES (PVA, VALIDATION_RING_NUMBER,
{         SEG_ATTRIBUTES, STATUS)
{
{ PVA: (input) This parameter specifies the segment to be changed.
{
{ VALIDATION_RING_NUMBER: (input) This parameter specifies the ring
{       of execution for whom the change is being made.  The
{       ring number used for validation is the max of caller ring
{       number and 'validation_ring_number'.
{
{ SEG_ATTRIBUTES: (input) This parameter is an adaptable array of
{       segment attribute descriptors.  Each attribute descriptor specifies
{       a new value for a segment attribute.
{
{ STATUS: (output) This parameter specifies the request status.
{       The possible error codes are:
{             dme$unable_to_get_fd_lock
{             dme$unable_to_locate_fde
{             mme$address_not_0_mod_16384
{             mme$asid_specified
{             mme$binding_attribute_invalid
{             mme$execute_global_invalid
{             mme$execute_local_invalid
{             mme$invalid_asid_specified
{             mme$invalid_ring_brackets
{             mme$invalid_shadow_segment
{             mme$length_not_0_mod_16384
{             mme$ring_violation
{             mme$segment_number_is_in_use
{             mme$segment_number_not_in_use
{             mme$segment_number_too_big
{             mme$segment_origin_change
{             mme$segment_orgin_invalid
{             mme$set_unmodifiable_attribute
{             mme$software_attribute_invalid
{             mme$unsupported_keyword
{

