Lines Matching defs:v

60 	struct views* v = (struct views*)calloc(1, 
61 sizeof(*v));
62 if(!v)
64 rbtree_init(&v->vtree, &view_cmp);
65 lock_rw_init(&v->lock);
66 lock_protect(&v->lock, &v->vtree, sizeof(v->vtree));
67 return v;
71 view_delete(struct view* v)
73 if(!v)
75 lock_rw_destroy(&v->lock);
76 local_zones_delete(v->local_zones);
77 respip_set_delete(v->respip_set);
78 free(v->name);
79 free(v);
85 struct view* v = (struct view*)n;
86 view_delete(v);
90 views_delete(struct views* v)
92 if(!v)
94 lock_rw_destroy(&v->lock);
95 traverse_postorder(&v->vtree, delviewnode, NULL);
96 free(v);
103 struct view* v = (struct view*)calloc(1, sizeof(*v));
104 if(!v)
106 v->node.key = v;
107 if(!(v->name = strdup(name))) {
108 free(v);
111 lock_rw_init(&v->lock);
112 lock_protect(&v->lock, &v->name, sizeof(*v)-sizeof(rbnode_type));
113 return v;
120 struct view* v = view_create(name);
121 if(!v) {
128 lock_rw_wrlock(&v->lock);
129 if(!rbtree_insert(&vs->vtree, &v->node)) {
131 lock_rw_unlock(&v->lock);
132 view_delete(v);
137 return v;
144 struct view* v;
154 if(!(v = views_enter_view_name(vs, cv->name)))
156 v->isfirst = cv->isfirst;
158 if(!(v->local_zones = local_zones_create())){
159 lock_rw_unlock(&v->lock);
167 if(v->isfirst) {
182 lock_rw_unlock(&v->lock);
189 lock_rw_unlock(&v->lock);
198 lock_rw_unlock(&v->lock);
203 if(!local_zones_apply_cfg(v->local_zones, &lz_cfg)){
204 lock_rw_unlock(&v->lock);
214 lock_rw_unlock(&v->lock);
223 struct view* v;
225 key.node.key = &v;
228 if(!(v = (struct view*)rbtree_search(&vs->vtree, &key.node))) {
233 lock_rw_wrlock(&v->lock);
235 lock_rw_rdlock(&v->lock);
238 return v;
241 void views_print(struct views* v)
244 (void)v;
249 struct view* v;
254 RBTREE_FOR(v, struct view*, &vs->vtree) {
255 m += view_get_mem(v);
261 size_t view_get_mem(struct view* v)
263 size_t m = sizeof(*v);
264 lock_rw_rdlock(&v->lock);
265 m += getmem_str(v->name);
266 m += local_zones_get_mem(v->local_zones);
267 m += respip_set_get_mem(v->respip_set);
268 lock_rw_unlock(&v->lock);