|
|
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 f
Length: 1775 (0x6ef)
Types: TextFile
Names: »filter.c«
└─⟦3d0c2be1b⟧ Bits:30001254 ISODE-5.0 Tape
└─⟦eba4602b1⟧ »./isode-5.0.tar.Z«
└─⟦d3ac74d73⟧
└─⟦this⟧ »isode-5.0/dsap/common/filter.c«
/* filter.c - Directory Operation Filters */
#ifndef lint
static char *rcsid = "$Header: /f/osi/dsap/common/RCS/filter.c,v 6.0 89/03/18 23:27:37 mrose Rel $";
#endif
/*
* $Header: /f/osi/dsap/common/RCS/filter.c,v 6.0 89/03/18 23:27:37 mrose Rel $
*
*
* $Log: filter.c,v $
* Revision 6.0 89/03/18 23:27:37 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/ds_search.h"
extern LLog * log_dsap;
filter_free (filt)
Filter filt;
{
register Filter ptr;
for (ptr = filt; ptr != NULLFILTER; ptr=ptr->flt_next) {
if (ptr->flt_type == FILTER_ITEM) {
switch (ptr->FUITEM.fi_type) {
case FILTERITEM_EQUALITY:
case FILTERITEM_GREATEROREQUAL:
case FILTERITEM_LESSOREQUAL:
case FILTERITEM_APPROX:
AttrT_free (ptr->FUITEM.UNAVA.ava_type);
AttrV_free (ptr->FUITEM.UNAVA.ava_value);
break;
case FILTERITEM_PRESENT:
AttrT_free (ptr->FUITEM.UNTYPE);
break;
case FILTERITEM_SUBSTRINGS:
AttrT_free (ptr->FUITEM.UNSUB.fi_sub_type);
avs_free (ptr->FUITEM.UNSUB.fi_sub_initial);
avs_free (ptr->FUITEM.UNSUB.fi_sub_any);
avs_free (ptr->FUITEM.UNSUB.fi_sub_final);
break;
}
} else
filter_free (ptr->flt_un.flt_un_filter);
free ((char *) ptr);
}
}
filter_append (a,b)
Filter a,b;
{
register Filter ptr,trail;
if ( a == NULLFILTER)
DLOG (log_dsap,LLOG_DEBUG,("appending to null filter !"));
for (ptr=a; ptr!= NULLFILTER; ptr=ptr->flt_next)
trail = ptr;
trail->flt_next = b;
}