/[radius]/radius/lib/envar.c
ViewVC logotype

Diff of /radius/lib/envar.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.4 by gray, Tue Apr 29 13:57:59 2003 UTC revision 1.5 by gray, Wed Apr 30 20:12:24 2003 UTC
# Line 109  char * Line 109  char *
109  envar_lookup(envar_t *env, char *name)  envar_lookup(envar_t *env, char *name)
110  {  {
111          ENVAR *p;          ENVAR *p;
112            ITERATOR *itr = iterator_create(env);
113    
114          for (p = list_first(env); p; p = list_next(env)) {          if (!itr)
115                    return NULL;
116            for (p = iterator_first(itr); p; p = iterator_next(itr)) {
117                  if (strcmp(p->name, name) == 0)                  if (strcmp(p->name, name) == 0)
118                          return p->value;                          break;
119          }          }
120          return NULL;          iterator_destroy(&itr);
121            return p ? p->value : NULL;
122  }  }
123    
124  char *  char *
# Line 153  envar_merge_lists(envar_t *prim, envar_t Line 157  envar_merge_lists(envar_t *prim, envar_t
157  {  {
158          envar_t *list;          envar_t *list;
159          ENVAR *p;          ENVAR *p;
160            ITERATOR *itr;
161            
162          list = list_create();          list = list_create();
163          for (p = list_first(sec); p; p = list_next(sec))          itr = iterator_create(sec);
164                  if (!envar_lookup(prim, p->name)) {          if (itr) {
165                          list_append(list, envar_dup(p));                  for (p = iterator_first(itr); p; p = iterator_next(itr))
166                  }                          if (!envar_lookup(prim, p->name)) {
167          for (p = list_first(prim); p; p = list_next(prim)) {                                  list_append(list, envar_dup(p));
168                  list_append(list, envar_dup(p));                          }
169                    iterator_destroy(&itr);
170            }
171            itr = iterator_create(prim);
172            if (itr) {
173                    for (p = iterator_first(itr); p; p = iterator_next(itr))
174                            list_append(list, envar_dup(p));
175                    iterator_destroy(&itr);
176          }          }
177          return list;          return list;
178  }  }

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.5

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26