diff options
Diffstat (limited to 'src/firemon/route.c')
-rw-r--r-- | src/firemon/route.c | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/src/firemon/route.c b/src/firemon/route.c index 145daa152..f083ada0b 100644 --- a/src/firemon/route.c +++ b/src/firemon/route.c | |||
@@ -36,7 +36,7 @@ static IfList *list_find(uint32_t ip, uint32_t mask) { | |||
36 | return ptr; | 36 | return ptr; |
37 | ptr = ptr->next; | 37 | ptr = ptr->next; |
38 | } | 38 | } |
39 | 39 | ||
40 | return NULL; | 40 | return NULL; |
41 | } | 41 | } |
42 | 42 | ||
@@ -47,15 +47,15 @@ static void extract_if(const char *fname) { | |||
47 | free(ifs); | 47 | free(ifs); |
48 | ifs = tmp; | 48 | ifs = tmp; |
49 | } | 49 | } |
50 | assert(ifs == NULL); | 50 | assert(ifs == NULL); |
51 | 51 | ||
52 | FILE *fp = fopen(fname, "r"); | 52 | FILE *fp = fopen(fname, "r"); |
53 | if (!fp) | 53 | if (!fp) |
54 | return; | 54 | return; |
55 | 55 | ||
56 | char buf[MAXBUF]; | 56 | char buf[MAXBUF]; |
57 | int state = 0; // 0 -wait for Local | 57 | int state = 0; // 0 -wait for Local |
58 | // | 58 | // |
59 | while (fgets(buf, MAXBUF, fp)) { | 59 | while (fgets(buf, MAXBUF, fp)) { |
60 | // remove blanks, \n | 60 | // remove blanks, \n |
61 | char *ptr = buf; | 61 | char *ptr = buf; |
@@ -67,7 +67,7 @@ static void extract_if(const char *fname) { | |||
67 | ptr = strchr(ptr, '\n'); | 67 | ptr = strchr(ptr, '\n'); |
68 | if (ptr) | 68 | if (ptr) |
69 | *ptr = '\0'; | 69 | *ptr = '\0'; |
70 | 70 | ||
71 | if (state == 0) { | 71 | if (state == 0) { |
72 | if (strncmp(buf, "Local:", 6) == 0) { | 72 | if (strncmp(buf, "Local:", 6) == 0) { |
73 | state = 1; | 73 | state = 1; |
@@ -105,7 +105,7 @@ static void extract_if(const char *fname) { | |||
105 | } | 105 | } |
106 | } | 106 | } |
107 | } | 107 | } |
108 | 108 | ||
109 | fclose(fp); | 109 | fclose(fp); |
110 | 110 | ||
111 | 111 | ||
@@ -115,7 +115,7 @@ static void print_route(const char *fname) { | |||
115 | FILE *fp = fopen(fname, "r"); | 115 | FILE *fp = fopen(fname, "r"); |
116 | if (!fp) | 116 | if (!fp) |
117 | return; | 117 | return; |
118 | 118 | ||
119 | printf(" Route table:\n"); | 119 | printf(" Route table:\n"); |
120 | char buf[MAXBUF]; | 120 | char buf[MAXBUF]; |
121 | while (fgets(buf, MAXBUF, fp)) { | 121 | while (fgets(buf, MAXBUF, fp)) { |
@@ -147,7 +147,7 @@ static void print_route(const char *fname) { | |||
147 | int rv = sscanf(start, "%s %s %s %s %s %s %s %s\n", ifname, destination, gateway, flags, refcnt, use, metric, mask); | 147 | int rv = sscanf(start, "%s %s %s %s %s %s %s %s\n", ifname, destination, gateway, flags, refcnt, use, metric, mask); |
148 | if (rv != 8) | 148 | if (rv != 8) |
149 | continue; | 149 | continue; |
150 | 150 | ||
151 | // destination ip | 151 | // destination ip |
152 | uint32_t destip; | 152 | uint32_t destip; |
153 | sscanf(destination, "%x", &destip); | 153 | sscanf(destination, "%x", &destip); |
@@ -158,7 +158,7 @@ static void print_route(const char *fname) { | |||
158 | uint32_t gw; | 158 | uint32_t gw; |
159 | sscanf(gateway, "%x", &gw); | 159 | sscanf(gateway, "%x", &gw); |
160 | gw = ntohl(gw); | 160 | gw = ntohl(gw); |
161 | 161 | ||
162 | // printf("#%s# #%s# #%s# #%s# #%s# #%s# #%s# #%s#\n", ifname, destination, gateway, flags, refcnt, use, metric, mask); | 162 | // printf("#%s# #%s# #%s# #%s# #%s# #%s# #%s# #%s#\n", ifname, destination, gateway, flags, refcnt, use, metric, mask); |
163 | if (gw != 0) | 163 | if (gw != 0) |
164 | printf(" %u.%u.%u.%u/%u via %u.%u.%u.%u, dev %s, metric %s\n", | 164 | printf(" %u.%u.%u.%u/%u via %u.%u.%u.%u, dev %s, metric %s\n", |
@@ -176,14 +176,14 @@ static void print_route(const char *fname) { | |||
176 | } | 176 | } |
177 | } | 177 | } |
178 | } | 178 | } |
179 | 179 | ||
180 | fclose(fp); | 180 | fclose(fp); |
181 | 181 | ||
182 | } | 182 | } |
183 | 183 | ||
184 | void route(pid_t pid, int print_procs) { | 184 | void route(pid_t pid, int print_procs) { |
185 | pid_read(pid); | 185 | pid_read(pid); |
186 | 186 | ||
187 | // print processes | 187 | // print processes |
188 | int i; | 188 | int i; |
189 | for (i = 0; i < max_pids; i++) { | 189 | for (i = 0; i < max_pids; i++) { |
@@ -207,5 +207,3 @@ void route(pid_t pid, int print_procs) { | |||
207 | } | 207 | } |
208 | printf("\n"); | 208 | printf("\n"); |
209 | } | 209 | } |
210 | |||
211 | |||