Author: biurrun Date: Thu Nov 19 16:09:28 2009 New Revision: 1725 Log: Reorder functions to avoid ugly forward declarations. Modified: trunk/test/ifaddr.c Modified: trunk/test/ifaddr.c ============================================================================== --- trunk/test/ifaddr.c Thu Nov 19 16:01:37 2009 (r1724) +++ trunk/test/ifaddr.c Thu Nov 19 16:09:28 2009 (r1725) @@ -17,30 +17,31 @@ #define PATH_PROCNET_DEV "/proc/net/dev" -static int print_ifaddr(char *ifname); -static char *get_ifname(char *name, char *p); -static void usage(const char *cmdname); - -int main(int argc, char *argv[]) +static char *get_ifname(char *name, char *p) { - char ifname[IFNAMSIZ] = "eth0"; - - if (argc == 2) { - if (strcmp(argv[1], "-h") == 0 || strcmp(argv[1], "--help") == 0) { - usage(argv[0]); - exit(EXIT_FAILURE); - } - strncpy(ifname, argv[1], IFNAMSIZ); - } - else if (argc > 2) { - usage(argv[0]); - exit(EXIT_FAILURE); + while (isspace(*p)) + p++; + while (*p) { + if (isspace(*p)) + break; + if (*p == ':') { /* could be an alias */ + char *dot = p, *dotname = name; + *name++ = *p++; + while (isdigit(*p)) + *name++ = *p++; + if (*p != ':') { /* it wasn't, backup */ + p = dot; + name = dotname; + } + if (*p == '\0') + return NULL; + p++; + break; } - - if (print_ifaddr(ifname) < 0) - return -1; - - return 0; + *name++ = *p++; + } + *name++ = '\0'; + return p; } static int print_ifaddr(char *ifname) @@ -89,37 +90,30 @@ return 0; } -static char *get_ifname(char *name, char *p) -{ - while (isspace(*p)) - p++; - while (*p) { - if (isspace(*p)) - break; - if (*p == ':') { /* could be an alias */ - char *dot = p, *dotname = name; - *name++ = *p++; - while (isdigit(*p)) - *name++ = *p++; - if (*p != ':') { /* it wasn't, backup */ - p = dot; - name = dotname; - } - if (*p == '\0') - return NULL; - p++; - break; - } - *name++ = *p++; - } - *name++ = '\0'; - return p; -} - - static void usage(const char *cmdname) { fprintf(stderr, "Usage: %s [ifname]\n", cmdname); } +int main(int argc, char *argv[]) +{ + char ifname[IFNAMSIZ] = "eth0"; + + if (argc == 2) { + if (strcmp(argv[1], "-h") == 0 || strcmp(argv[1], "--help") == 0) { + usage(argv[0]); + exit(EXIT_FAILURE); + } + strncpy(ifname, argv[1], IFNAMSIZ); + } + else if (argc > 2) { + usage(argv[0]); + exit(EXIT_FAILURE); + } + + if (print_ifaddr(ifname) < 0) + return -1; + + return 0; +}