Lines Matching defs:rose_node

38 static struct rose_node  *rose_node_list;
54 struct rose_node *rose_node, *rose_tmpn, *rose_tmpp;
61 rose_node = rose_node_list;
62 while (rose_node != NULL) {
63 if ((rose_node->mask == rose_route->mask) &&
64 (rosecmpm(&rose_route->address, &rose_node->address,
67 rose_node = rose_node->next;
70 if (rose_node != NULL && rose_node->loopback) {
137 if (rose_node == NULL) {
151 rose_node = kmalloc(sizeof(*rose_node), GFP_ATOMIC);
152 if (rose_node == NULL) {
157 rose_node->address = rose_route->address;
158 rose_node->mask = rose_route->mask;
159 rose_node->count = 1;
160 rose_node->loopback = 0;
161 rose_node->neighbour[0] = rose_neigh;
165 rose_node_list = rose_node;
166 rose_node->next = NULL;
168 rose_tmpp->next = rose_node;
169 rose_node->next = NULL;
173 rose_node->next = rose_node_list;
174 rose_node_list = rose_node;
176 rose_tmpp->next = rose_node;
177 rose_node->next = rose_tmpn;
186 if (rose_node->count < 3) {
187 rose_node->neighbour[rose_node->count] = rose_neigh;
188 rose_node->count++;
202 static void rose_remove_node(struct rose_node *rose_node)
204 struct rose_node *s;
206 if ((s = rose_node_list) == rose_node) {
207 rose_node_list = rose_node->next;
208 kfree(rose_node);
213 if (s->next == rose_node) {
214 s->next = rose_node->next;
215 kfree(rose_node);
295 struct rose_node *rose_node;
302 rose_node = rose_node_list;
303 while (rose_node != NULL) {
304 if ((rose_node->mask == rose_route->mask) &&
305 (rosecmpm(&rose_route->address, &rose_node->address,
308 rose_node = rose_node->next;
311 if (rose_node == NULL || rose_node->loopback) {
330 for (i = 0; i < rose_node->count; i++) {
331 if (rose_node->neighbour[i] == rose_neigh) {
337 rose_node->count--;
339 if (rose_node->count == 0) {
340 rose_remove_node(rose_node);
344 rose_node->neighbour[0] =
345 rose_node->neighbour[1];
348 rose_node->neighbour[1] =
349 rose_node->neighbour[2];
405 struct rose_node *rose_node;
410 rose_node = rose_node_list;
411 while (rose_node != NULL) {
412 if ((rose_node->mask == 10) &&
413 (rosecmpm(address, &rose_node->address, 10) == 0) &&
414 rose_node->loopback)
416 rose_node = rose_node->next;
419 if (rose_node != NULL)
422 if ((rose_node = kmalloc(sizeof(*rose_node), GFP_ATOMIC)) == NULL) {
427 rose_node->address = *address;
428 rose_node->mask = 10;
429 rose_node->count = 1;
430 rose_node->loopback = 1;
431 rose_node->neighbour[0] = rose_loopback_neigh;
434 rose_node->next = rose_node_list;
435 rose_node_list = rose_node;
450 struct rose_node *rose_node;
454 rose_node = rose_node_list;
455 while (rose_node != NULL) {
456 if ((rose_node->mask == 10) &&
457 (rosecmpm(address, &rose_node->address, 10) == 0) &&
458 rose_node->loopback)
460 rose_node = rose_node->next;
463 if (rose_node == NULL)
466 rose_remove_node(rose_node);
480 struct rose_node *t, *rose_node;
493 rose_node = rose_node_list;
495 while (rose_node != NULL) {
496 t = rose_node;
497 rose_node = rose_node->next;
555 struct rose_node *t, *rose_node;
561 rose_node = rose_node_list;
563 while (rose_node != NULL) {
564 t = rose_node;
565 rose_node = rose_node->next;
680 struct rose_node *node;
1093 struct rose_node *rose_node;
1100 for (rose_node = rose_node_list; rose_node && i < *pos;
1101 rose_node = rose_node->next, ++i);
1103 return (i == *pos) ? rose_node : NULL;
1111 : ((struct rose_node *)v)->next;
1128 const struct rose_node *rose_node = v;
1129 /* if (rose_node->loopback) {
1131 rose2asc(rsbuf, &rose_node->address),
1132 rose_node->mask);
1135 rose2asc(rsbuf, &rose_node->address),
1136 rose_node->mask,
1137 rose_node->count);
1139 for (i = 0; i < rose_node->count; i++)
1141 rose_node->neighbour[i]->number);
1306 struct rose_node *t, *rose_node = rose_node_list;
1316 while (rose_node != NULL) {
1317 t = rose_node;
1318 rose_node = rose_node->next;