Lines Matching full:v
59 struct views* v = (struct views*)calloc(1, in views_create() local
60 sizeof(*v)); in views_create()
61 if(!v) in views_create()
63 rbtree_init(&v->vtree, &view_cmp); in views_create()
64 lock_rw_init(&v->lock); in views_create()
65 lock_protect(&v->lock, &v->vtree, sizeof(v->vtree)); in views_create()
66 return v; in views_create()
75 view_delete(struct view* v) in view_delete() argument
77 if(!v) in view_delete()
79 lock_rw_destroy(&v->lock); in view_delete()
80 local_zones_delete(v->local_zones); in view_delete()
81 respip_set_delete(v->respip_set); in view_delete()
82 free(v->name); in view_delete()
83 free(v); in view_delete()
89 struct view* v = (struct view*)n; in delviewnode() local
90 view_delete(v); in delviewnode()
94 views_delete(struct views* v) in views_delete() argument
96 if(!v) in views_delete()
98 lock_rw_destroy(&v->lock); in views_delete()
99 traverse_postorder(&v->vtree, delviewnode, NULL); in views_delete()
100 free(v); in views_delete()
107 struct view* v = (struct view*)calloc(1, sizeof(*v)); in view_create() local
108 if(!v) in view_create()
110 v->node.key = v; in view_create()
111 if(!(v->name = strdup(name))) { in view_create()
112 free(v); in view_create()
115 lock_rw_init(&v->lock); in view_create()
116 lock_protect(&v->lock, &v->name, sizeof(*v)-sizeof(rbnode_type)); in view_create()
117 return v; in view_create()
124 struct view* v = view_create(name); in views_enter_view_name() local
125 if(!v) { in views_enter_view_name()
132 lock_rw_wrlock(&v->lock); in views_enter_view_name()
133 if(!rbtree_insert(&vs->vtree, &v->node)) { in views_enter_view_name()
135 lock_rw_unlock(&v->lock); in views_enter_view_name()
136 view_delete(v); in views_enter_view_name()
141 return v; in views_enter_view_name()
148 struct view* v; in views_apply_cfg() local
158 if(!(v = views_enter_view_name(vs, cv->name))) in views_apply_cfg()
160 v->isfirst = cv->isfirst; in views_apply_cfg()
162 if(!(v->local_zones = local_zones_create())){ in views_apply_cfg()
163 lock_rw_unlock(&v->lock); in views_apply_cfg()
171 if(v->isfirst) { in views_apply_cfg()
186 lock_rw_unlock(&v->lock); in views_apply_cfg()
193 lock_rw_unlock(&v->lock); in views_apply_cfg()
202 lock_rw_unlock(&v->lock); in views_apply_cfg()
207 if(!local_zones_apply_cfg(v->local_zones, &lz_cfg)){ in views_apply_cfg()
208 lock_rw_unlock(&v->lock); in views_apply_cfg()
218 lock_rw_unlock(&v->lock); in views_apply_cfg()
227 struct view* v; in views_find_view() local
229 key.node.key = &v; in views_find_view()
232 if(!(v = (struct view*)rbtree_search(&vs->vtree, &key.node))) { in views_find_view()
237 lock_rw_wrlock(&v->lock); in views_find_view()
239 lock_rw_rdlock(&v->lock); in views_find_view()
242 return v; in views_find_view()
245 void views_print(struct views* v) in views_print() argument
248 (void)v; in views_print()