|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T e
Length: 2299 (0x8fb) Types: TextFile Names: »entryinfo.c«
└─⟦3d0c2be1b⟧ Bits:30001254 ISODE-5.0 Tape └─⟦eba4602b1⟧ »./isode-5.0.tar.Z« └─⟦d3ac74d73⟧ └─⟦this⟧ »isode-5.0/dsap/common/entryinfo.c«
/* entryinfo.c - Entry Information routines */ #ifndef lint static char *rcsid = "$Header: /f/osi/dsap/common/RCS/entryinfo.c,v 6.0 89/03/18 23:27:36 mrose Rel $"; #endif /* * $Header: /f/osi/dsap/common/RCS/entryinfo.c,v 6.0 89/03/18 23:27:36 mrose Rel $ * * * $Log: entryinfo.c,v $ * Revision 6.0 89/03/18 23:27:36 mrose * Release 5.0 * */ /* * NOTICE * * 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 * this agreement. * */ /* LINTLIBRARY */ #include "quipu/util.h" #include "quipu/commonarg.h" entryinfo_comp_free (a,state) register EntryInfo *a; int state; { register EntryInfo * einfo; register Attr_Sequence as; if (a == NULLENTRYINFO) return; dn_free (a->ent_dn); if (state == 1) for ( as=a->ent_attr; as!= NULLATTR; as=as->attr_link) free ((char *) as); else as_free (a->ent_attr); for (einfo=a->ent_next; einfo!=NULLENTRYINFO; einfo=einfo->ent_next) { dn_free (einfo->ent_dn); if (state == 1) for ( as=einfo->ent_attr; as!= NULLATTR; as=as->attr_link) free ((char *) as); else as_free (einfo->ent_attr); free ((char *) einfo); } } entryinfo_free (a,state) register EntryInfo * a; register int state; { if (a == NULLENTRYINFO) return; entryinfo_comp_free (a,state); free ((char *) a); } entryinfo_cpy (a,b) register EntryInfo *a; register EntryInfo *b; { a->ent_dn = dn_cpy (b->ent_dn); a->ent_attr = as_cpy (b->ent_attr); a->ent_iscopy = b->ent_iscopy; a->ent_age = b->ent_age; a->ent_next = a->ent_next; } entryinfo_append (a,b) register EntryInfo *a,*b; { register EntryInfo *ptr; if ( a == NULLENTRYINFO ) return; for (ptr=a; ptr->ent_next != NULLENTRYINFO; ptr=ptr->ent_next) ; /* noop */ ptr->ent_next = b; } entryinfo_print (ps,entryinfo,format) PS ps; EntryInfo *entryinfo; int format; { register EntryInfo *einfo; for (einfo= entryinfo; einfo!=NULLENTRYINFO; einfo=einfo->ent_next) { dn_decode (einfo->ent_dn); dn_print(ps,einfo->ent_dn,format); ps_print (ps,"\n"); as_decode (einfo->ent_attr); as_print (ps,einfo->ent_attr,format); ps_print (ps,"\n"); } }