118 // get groups |
118 // get groups |
119 if(tkn == 3) { |
119 if(tkn == 3) { |
120 sstr_t groups_str = sstrtrim(tk[2]); |
120 sstr_t groups_str = sstrtrim(tk[2]); |
121 ssize_t ngroups = 0; |
121 ssize_t ngroups = 0; |
122 sstr_t *groups = sstrsplit(groups_str, sstrn(",", 1), &ngroups); |
122 sstr_t *groups = sstrsplit(groups_str, sstrn(",", 1), &ngroups); |
123 entry->groups = mp->calloc(mp->pool, ngroups, sizeof(sstr_t)); |
123 if(ngroups > 0) { |
124 entry->numgroups = ngroups; |
124 entry->groups = mp->calloc(mp->pool, ngroups, sizeof(sstr_t)); |
125 for(int i=0;i<ngroups;i++) { |
125 entry->numgroups = ngroups; |
126 entry->groups[i] = sstrdup_a(mp, sstrtrim(groups[i])); |
126 for(int i=0;i<ngroups;i++) { |
127 free(groups[i].ptr); |
127 entry->groups[i] = sstrdup_a(mp, sstrtrim(groups[i])); |
|
128 free(groups[i].ptr); |
|
129 } |
|
130 free(groups); |
128 } |
131 } |
129 free(groups); |
|
130 } |
132 } |
131 |
133 |
132 // add user |
134 // add user |
133 conf->users = ucx_list_append_a(mp, conf->users, entry); |
135 conf->users = ucx_list_append_a(mp, conf->users, entry); |
134 |
136 |