X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=utilities%2Fovs-discover.c;h=3830e0739929decf44bde819efc22b5f436ff1d0;hb=e89e5374bebd6ae00098ce40511a36daa09fc77e;hp=dc91bce3d3d23d9c2958cc27f6e332b7fee9337a;hpb=3f355f47f8e7343e909ccfa854454d667baf3c38;p=openvswitch diff --git a/utilities/ovs-discover.c b/utilities/ovs-discover.c index dc91bce3..3830e073 100644 --- a/utilities/ovs-discover.c +++ b/utilities/ovs-discover.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008, 2009 Nicira Networks. + * Copyright (c) 2008, 2009, 2010 Nicira Networks. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -60,7 +60,7 @@ static bool exit_without_bind; static bool exit_after_bind; static bool iface_init(struct iface *, const char *netdev_name); -static void release_ifaces(void *aux UNUSED); +static void release_ifaces(void *aux OVS_UNUSED); static void parse_options(int argc, char *argv[]); static void usage(void) NO_RETURN; @@ -75,6 +75,7 @@ main(int argc, char *argv[]) int retval; int i; + proctitle_init(argc, argv); set_program_name(argv[0]); time_init(); vlog_init(); @@ -102,7 +103,7 @@ main(int argc, char *argv[]) struct iface *iface = &ifaces[i]; dhclient_init(iface->dhcp, 0); } - fatal_signal_add_hook(release_ifaces, NULL, true); + fatal_signal_add_hook(release_ifaces, NULL, NULL, true); retval = regcomp(&accept_controller_regex, accept_controller_re, REG_NOSUB | REG_EXTENDED); @@ -115,14 +116,13 @@ main(int argc, char *argv[]) retval = unixctl_server_create(NULL, &unixctl); if (retval) { - ovs_fatal(retval, "Could not listen for unixctl connections"); + exit(EXIT_FAILURE); } die_if_already_running(); signal(SIGPIPE, SIG_IGN); for (;;) { - fatal_signal_block(); for (i = 0; i < n_ifaces; i++) { struct iface *iface = &ifaces[i]; dhclient_run(iface->dhcp); @@ -195,7 +195,6 @@ main(int argc, char *argv[]) dhclient_wait(iface->dhcp); } unixctl_server_wait(unixctl); - fatal_signal_unblock(); poll_block(); } @@ -215,7 +214,7 @@ iface_init(struct iface *iface, const char *netdev_name) * persists past program termination. */ struct netdev *netdev; - retval = netdev_open(iface->name, NETDEV_ETH_TYPE_NONE, &netdev); + retval = netdev_open_default(iface->name, &netdev); if (retval) { ovs_error(retval, "Could not open %s device", iface->name); return false; @@ -239,7 +238,7 @@ iface_init(struct iface *iface, const char *netdev_name) } static void -release_ifaces(void *aux UNUSED) +release_ifaces(void *aux OVS_UNUSED) { int i; @@ -253,13 +252,13 @@ release_ifaces(void *aux UNUSED) } static void -modify_dhcp_request(struct dhcp_msg *msg, void *aux UNUSED) +modify_dhcp_request(struct dhcp_msg *msg, void *aux OVS_UNUSED) { dhcp_msg_put_string(msg, DHCP_CODE_VENDOR_CLASS, "OpenFlow"); } static bool -validate_dhcp_offer(const struct dhcp_msg *msg, void *aux UNUSED) +validate_dhcp_offer(const struct dhcp_msg *msg, void *aux OVS_UNUSED) { static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(60, 60); char *vconn_name; @@ -282,7 +281,8 @@ parse_options(int argc, char *argv[]) OPT_ACCEPT_VCONN = UCHAR_MAX + 1, OPT_EXIT_WITHOUT_BIND, OPT_EXIT_AFTER_BIND, - OPT_NO_DETACH + OPT_NO_DETACH, + VLOG_OPTION_ENUMS }; static struct option long_options[] = { {"accept-vconn", required_argument, 0, OPT_ACCEPT_VCONN}, @@ -292,9 +292,9 @@ parse_options(int argc, char *argv[]) {"timeout", required_argument, 0, 't'}, {"pidfile", optional_argument, 0, OPT_PIDFILE}, {"overwrite-pidfile", no_argument, 0, OPT_OVERWRITE_PIDFILE}, - {"verbose", optional_argument, 0, 'v'}, {"help", no_argument, 0, 'h'}, {"version", no_argument, 0, 'V'}, + VLOG_LONG_OPTIONS, {0, 0, 0, 0}, }; char *short_options = long_options_to_short_options(long_options); @@ -354,9 +354,7 @@ parse_options(int argc, char *argv[]) OVS_PRINT_VERSION(0, 0); exit(EXIT_SUCCESS); - case 'v': - vlog_set_verbosity(optarg); - break; + VLOG_OPTION_HANDLERS case '?': exit(EXIT_FAILURE);