static char *rcsid
= "$Header: /f/osi/quipu/dish/RCS/showattr.c,v 7.2 91/02/22 09:40:53 mrose Interim $";
* $Header: /f/osi/quipu/dish/RCS/showattr.c,v 7.2 91/02/22 09:40:53 mrose Interim $
* Revision 7.2 91/02/22 09:40:53 mrose
* Revision 7.1 90/10/17 11:55:40 mrose
* Revision 7.0 89/11/23 22:20:21 mrose
* Acquisition, use, and distribution of this module and related
* materials are subject to the restrictions of a license agreement.
* Consult the Preface in the User's Manual for the full terms of
#include "quipu/attrvalue.h"
extern Entry current_entry
;
#define OPT (!frompipe || rps -> ps_byteno == 0 ? opt : rps)
#define RPS (!frompipe || opt -> ps_byteno == 0 ? rps : opt)
extern char print_format
;
extern char show_all_flag
;
static Attr_Sequence ignore_attr
= NULLATTR
;
static char ignore_unknown
= FALSE
;
if ( ! check_want_attr (at
))
} else if ( ! check_want_tmp_attr (at
))
for (eptr
= current_entry
->e_attributes
; eptr
!= NULLATTR
; eptr
= eptr
->attr_link
) {
/* Tiptoe through the list of types until one matches, and then print value. */
if (AttrT_cmp (eptr
->attr_type
,at
) == 0) {
as_comp_print (RPS
,eptr
,print_format
);
avs_print (RPS
,eptr
->attr_value
,print_format
);
AttrT_print (RPS
,at
,print_format
);
ps_printf (OPT
, "%-21s - (No such attribute in this entry)\n", at
->oa_ot
.ot_name
);
ps_printf (OPT
, "No value\n");
if (at
== NULLTABLE_ATTR
)
for (as
=ignore_attr
; as
!= NULLATTR
; as
=as
->attr_link
)
if (AttrT_cmp (at
,as
->attr_type
) == 0)
return (check_want_tmp_attr(at
));
extern Attr_Sequence tmp_ignore
;
extern Attr_Sequence as_flag
;
return (ignore_unknown
|| show_all_flag
);
for (as
=tmp_ignore
; as
!= NULLATTR
; as
=as
->attr_link
)
if (AttrT_cmp (at
,as
->attr_type
) == 0) {
/* may be explicitly wanted... */
for (as2
=as_flag
; as2
!= NULLATTR
; as2
=as2
->attr_link
)
if (AttrT_cmp (as2
->attr_type
,as
->attr_type
) == 0)
if ((at
= str2AttrT (ptr
)) == NULLAttrT
)
newas
= as_comp_new (at
,NULLAV
,NULLACL_INFO
);
ignore_attr
= as_merge(ignore_attr
,newas
);