Annotation of 43BSDReno/contrib/isode-beta/dsap/common/rdn_cpy.c, revision 1.1.1.1

1.1       root        1: #include "quipu/util.h"
                      2: #include "quipu/name.h"
                      3: #include "quipu/malloc.h"
                      4: 
                      5: extern LLog * log_dsap;
                      6: 
                      7: RDN  rdn_comp_cpy (rdn)
                      8: RDN  rdn;
                      9: {
                     10: register RDN ptr;
                     11: unsigned last_heap;
                     12: 
                     13:        if (rdn==NULLRDN) {
                     14:                DLOG (log_dsap,LLOG_DEBUG,("copy of null rdn"));
                     15:                return (NULLRDN);
                     16:        }
                     17: 
                     18:        ptr = rdn_comp_alloc();
                     19:        ptr->rdn_at = AttrT_cpy (rdn->rdn_at);
                     20: 
                     21:        if ((last_heap = mem_heap) == 1)
                     22:                mem_heap = 2 + attr_index;
                     23: 
                     24:        AttrV_cpy_aux  (&rdn->rdn_av,&ptr->rdn_av);
                     25:        ptr->rdn_next = NULLRDN;
                     26: 
                     27:        mem_heap = last_heap;
                     28: 
                     29:        return (ptr);
                     30: }
                     31: 
                     32: RDN  rdn_cpy (rdn)
                     33: RDN  rdn;
                     34: {
                     35: RDN start;
                     36: register RDN eptr;
                     37: register RDN ptr,ptr2;
                     38: 
                     39:        if (rdn == NULLRDN) {
                     40:                DLOG (log_dsap,LLOG_DEBUG,("rdn_cpy of null rdn"));
                     41:                return (NULLRDN);
                     42:        }
                     43:        start = rdn_comp_cpy (rdn);
                     44:        ptr2 = start;
                     45: 
                     46:        for (eptr=rdn->rdn_next; eptr!=NULLRDN; eptr=eptr->rdn_next) {
                     47:                ptr = rdn_comp_cpy (eptr);
                     48:                ptr2->rdn_next = ptr;
                     49:                ptr2 = ptr;
                     50:        }
                     51:        return (start);
                     52: }
                     53: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.