diff options
Diffstat (limited to 'pingu_route.c')
-rw-r--r-- | pingu_route.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/pingu_route.c b/pingu_route.c index 2c96a8d..3a82f70 100644 --- a/pingu_route.c +++ b/pingu_route.c @@ -4,6 +4,7 @@ #include <stdio.h> #include <stdlib.h> #include <string.h> +#include <unistd.h> #include "list.h" #include "log.h" @@ -145,6 +146,19 @@ struct pingu_route *pingu_route_first_default(struct list_head *route_list) return NULL; } +void pingu_route_dump(int fd, struct list_head *route_list) +{ + struct pingu_route *entry; + list_for_each_entry(entry, route_list, route_list_entry) { + char str[512] = ""; + pingu_route_to_string(entry, str, sizeof(str)); + if (str[0] != '\0') { + strncat(str, "\n", sizeof(str)); + write(fd, str, strlen(str)); + } + } +} + void pingu_route_cleanup(struct list_head *route_list) { struct pingu_route *entry, *n; |