386BSD 0.1 development
[unix-history] / usr / othersrc / contrib / isode / dsap / common / as_cpy.c
CommitLineData
04c6839a
WJ
1#include "quipu/util.h"
2#include "quipu/attrvalue.h"
3#include "quipu/malloc.h"
4
5extern LLog * log_dsap;
6
7Attr_Sequence as_comp_cpy (as)
8Attr_Sequence as;
9{
10Attr_Sequence ptr;
11
12 if (as==NULLATTR) {
13 return (NULLATTR);
14 }
15
16 ptr = (Attr_Sequence) smalloc (sizeof(attrcomp));
17 ptr->attr_type = AttrT_cpy (as->attr_type);
18
19 ATTRIBUTE_HEAP;
20
21 ptr->attr_value = avs_cpy (as->attr_value);
22 ptr->attr_link = NULLATTR;
23 ptr->attr_acl = NULLACL_INFO;
24
25 RESTORE_HEAP;
26
27 return (ptr);
28}
29
30Attr_Sequence as_cpy (as)
31Attr_Sequence as;
32{
33Attr_Sequence start;
34Attr_Sequence ptr,ptr2;
35register Attr_Sequence eptr;
36
37 if (as == NULLATTR) {
38 return (NULLATTR);
39 }
40 start = as_comp_cpy (as);
41 ptr2 = start;
42
43 for(eptr = as->attr_link; eptr != NULLATTR; eptr=eptr->attr_link) {
44 ptr = as_comp_cpy (eptr);
45 ptr2->attr_link = ptr;
46 ptr2 = ptr;
47 }
48 return (start);
49}
50