From: Ben Pfaff Date: Mon, 24 Jun 2013 17:54:49 +0000 (-0700) Subject: Replace all uses of strerror() by ovs_strerror(), for thread safety. X-Git-Tag: sliver-openvswitch-1.10.90-3~6^2 X-Git-Url: http://git.onelab.eu/?p=sliver-openvswitch.git;a=commitdiff_plain;h=10a89ef04df5669c5cdd02f786150a7ab8454e01 Replace all uses of strerror() by ovs_strerror(), for thread safety. Signed-off-by: Ben Pfaff --- diff --git a/lib/daemon.c b/lib/daemon.c index 56b32b80b..3c1e5c3b7 100644 --- a/lib/daemon.c +++ b/lib/daemon.c @@ -210,7 +210,7 @@ make_pidfile(void) file = fopen(tmpfile, "a+"); if (!file) { - VLOG_FATAL("%s: create failed (%s)", tmpfile, strerror(errno)); + VLOG_FATAL("%s: create failed (%s)", tmpfile, ovs_strerror(errno)); } error = lock_pidfile(file, F_SETLK); @@ -218,7 +218,8 @@ make_pidfile(void) /* Looks like we failed to acquire the lock. Note that, if we failed * for some other reason (and '!overwrite_pidfile'), we will have * left 'tmpfile' as garbage in the file system. */ - VLOG_FATAL("%s: fcntl(F_SETLK) failed (%s)", tmpfile, strerror(error)); + VLOG_FATAL("%s: fcntl(F_SETLK) failed (%s)", tmpfile, + ovs_strerror(error)); } if (!overwrite_pidfile) { @@ -229,16 +230,16 @@ make_pidfile(void) } if (fstat(fileno(file), &s) == -1) { - VLOG_FATAL("%s: fstat failed (%s)", tmpfile, strerror(errno)); + VLOG_FATAL("%s: fstat failed (%s)", tmpfile, ovs_strerror(errno)); } if (ftruncate(fileno(file), 0) == -1) { - VLOG_FATAL("%s: truncate failed (%s)", tmpfile, strerror(errno)); + VLOG_FATAL("%s: truncate failed (%s)", tmpfile, ovs_strerror(errno)); } fprintf(file, "%ld\n", pid); if (fflush(file) == EOF) { - VLOG_FATAL("%s: write failed (%s)", tmpfile, strerror(errno)); + VLOG_FATAL("%s: write failed (%s)", tmpfile, ovs_strerror(errno)); } error = rename(tmpfile, pidfile); @@ -249,7 +250,7 @@ make_pidfile(void) if (error < 0) { VLOG_FATAL("failed to rename \"%s\" to \"%s\" (%s)", - tmpfile, pidfile, strerror(errno)); + tmpfile, pidfile, ovs_strerror(errno)); } /* Ensure that the pidfile will get deleted on exit. */ @@ -339,7 +340,7 @@ fork_and_wait_for_startup(int *fdp) status_msg); } } else if (retval < 0) { - VLOG_FATAL("waitpid failed (%s)", strerror(errno)); + VLOG_FATAL("waitpid failed (%s)", ovs_strerror(errno)); } else { NOT_REACHED(); } @@ -364,7 +365,7 @@ fork_notify_startup(int fd) error = write_fully(fd, "", 1, &bytes_written); if (error) { - VLOG_FATAL("pipe write failed (%s)", strerror(error)); + VLOG_FATAL("pipe write failed (%s)", ovs_strerror(error)); } close(fd); @@ -415,7 +416,7 @@ monitor_daemon(pid_t daemon_pid) } while (retval == -1 && errno == EINTR); if (retval == -1) { - VLOG_FATAL("waitpid failed (%s)", strerror(errno)); + VLOG_FATAL("waitpid failed (%s)", ovs_strerror(errno)); } else if (retval == daemon_pid) { char *s = process_status_msg(status); if (should_restart(status)) { @@ -433,7 +434,7 @@ monitor_daemon(pid_t daemon_pid) r.rlim_max = 0; if (setrlimit(RLIMIT_CORE, &r) == -1) { VLOG_WARN("failed to disable core dumps: %s", - strerror(errno)); + ovs_strerror(errno)); } } @@ -641,13 +642,13 @@ read_pidfile__(const char *pidfile, bool delete_if_stale) return 0; } error = errno; - VLOG_WARN("%s: open: %s", pidfile, strerror(error)); + VLOG_WARN("%s: open: %s", pidfile, ovs_strerror(error)); goto error; } error = lock_pidfile__(file, F_GETLK, &lck); if (error) { - VLOG_WARN("%s: fcntl: %s", pidfile, strerror(error)); + VLOG_WARN("%s: fcntl: %s", pidfile, ovs_strerror(error)); goto error; } if (lck.l_type == F_UNLCK) { @@ -686,7 +687,7 @@ read_pidfile__(const char *pidfile, bool delete_if_stale) if (unlink(pidfile)) { error = errno; VLOG_WARN("%s: failed to delete stale pidfile (%s)", - pidfile, strerror(error)); + pidfile, ovs_strerror(error)); goto error; } VLOG_DBG("%s: deleted stale pidfile", pidfile); @@ -697,7 +698,7 @@ read_pidfile__(const char *pidfile, bool delete_if_stale) if (!fgets(line, sizeof line, file)) { if (ferror(file)) { error = errno; - VLOG_WARN("%s: read: %s", pidfile, strerror(error)); + VLOG_WARN("%s: read: %s", pidfile, ovs_strerror(error)); } else { error = ESRCH; VLOG_WARN("%s: read: unexpected end of file", pidfile); @@ -743,6 +744,6 @@ check_already_running(void) VLOG_FATAL("%s: already running as pid %ld, aborting", pidfile, pid); } else if (pid < 0) { VLOG_FATAL("%s: pidfile check failed (%s), aborting", - pidfile, strerror(-pid)); + pidfile, ovs_strerror(-pid)); } } diff --git a/lib/dpif-linux.c b/lib/dpif-linux.c index fb87f8185..804a90ffd 100644 --- a/lib/dpif-linux.c +++ b/lib/dpif-linux.c @@ -937,7 +937,8 @@ dpif_linux_flow_dump_next(const struct dpif *dpif_ OVS_UNUSED, void *state_, if (error == ENOENT) { VLOG_DBG("dumped flow disappeared on get"); } else if (error) { - VLOG_WARN("error fetching dumped flow: %s", strerror(error)); + VLOG_WARN("error fetching dumped flow: %s", + ovs_strerror(error)); } } } while (error); @@ -1208,7 +1209,7 @@ dpif_linux_recv_set(struct dpif *dpif_, bool enable) } else { VLOG_WARN_RL(&error_rl, "%s: failed to set upcall pid on port: %s", - dpif_name(&dpif->dpif), strerror(error)); + dpif_name(&dpif->dpif), ovs_strerror(error)); nl_sock_destroy(sock); if (error == ENODEV || error == ENOENT) { @@ -1321,7 +1322,7 @@ dpif_linux_recv(struct dpif *dpif_, struct dpif_upcall *upcall, } while (retval < 0 && errno == EINTR); if (retval < 0) { static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 1); - VLOG_WARN_RL(&rl, "epoll_wait failed (%s)", strerror(errno)); + VLOG_WARN_RL(&rl, "epoll_wait failed (%s)", ovs_strerror(errno)); } else if (retval > 0) { dpif->n_events = retval; } @@ -1492,7 +1493,7 @@ dpif_linux_is_internal_device(const char *name) ofpbuf_delete(buf); } else if (error != ENODEV && error != ENOENT) { VLOG_WARN_RL(&error_rl, "%s: vport query failed (%s)", - name, strerror(error)); + name, ovs_strerror(error)); } return reply.type == OVS_VPORT_TYPE_INTERNAL; diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c index 8e5e6df75..f8f1f881e 100644 --- a/lib/dpif-netdev.c +++ b/lib/dpif-netdev.c @@ -406,7 +406,7 @@ do_add_port(struct dp_netdev *dp, const char *devname, const char *type, if (error && !(error == EOPNOTSUPP && dpif_netdev_class_is_dummy(dp->class))) { VLOG_ERR("%s: cannot receive packets on this network device (%s)", - devname, strerror(errno)); + devname, ovs_strerror(errno)); netdev_close(netdev); return error; } @@ -1094,7 +1094,7 @@ dpif_netdev_run(struct dpif *dpif) static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 5); VLOG_ERR_RL(&rl, "error receiving data from %s: %s", - netdev_get_name(port->netdev), strerror(error)); + netdev_get_name(port->netdev), ovs_strerror(error)); } } ofpbuf_uninit(&packet); diff --git a/lib/dpif.c b/lib/dpif.c index 169be202d..e79326271 100644 --- a/lib/dpif.c +++ b/lib/dpif.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008, 2009, 2010, 2011, 2012 Nicira, Inc. + * Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -216,7 +216,7 @@ dp_enumerate_names(const char *type, struct sset *names) if (error) { VLOG_WARN("failed to enumerate %s datapaths: %s", dpif_class->type, - strerror(error)); + ovs_strerror(error)); } return error; @@ -311,10 +311,11 @@ dpif_create_and_open(const char *name, const char *type, struct dpif **dpifp) error = dpif_open(name, type, dpifp); if (error) { VLOG_WARN("datapath %s already exists but cannot be opened: %s", - name, strerror(error)); + name, ovs_strerror(error)); } } else if (error) { - VLOG_WARN("failed to create datapath %s: %s", name, strerror(error)); + VLOG_WARN("failed to create datapath %s: %s", + name, ovs_strerror(error)); } return error; } @@ -461,7 +462,7 @@ dpif_port_add(struct dpif *dpif, struct netdev *netdev, odp_port_t *port_nop) dpif_name(dpif), netdev_name, port_no); } else { VLOG_WARN_RL(&error_rl, "%s: failed to add %s as port: %s", - dpif_name(dpif), netdev_name, strerror(error)); + dpif_name(dpif), netdev_name, ovs_strerror(error)); port_no = ODPP_NONE; } if (port_nop) { @@ -518,7 +519,7 @@ dpif_port_exists(const struct dpif *dpif, const char *devname) int error = dpif->dpif_class->port_query_by_name(dpif, devname, NULL); if (error != 0 && error != ENOENT && error != ENODEV) { VLOG_WARN_RL(&error_rl, "%s: failed to query port %s: %s", - dpif_name(dpif), devname, strerror(error)); + dpif_name(dpif), devname, ovs_strerror(error)); } return !error; @@ -541,7 +542,7 @@ dpif_port_query_by_number(const struct dpif *dpif, odp_port_t port_no, } else { memset(port, 0, sizeof *port); VLOG_WARN_RL(&error_rl, "%s: failed to query port %"PRIu32": %s", - dpif_name(dpif), port_no, strerror(error)); + dpif_name(dpif), port_no, ovs_strerror(error)); } return error; } @@ -570,7 +571,7 @@ dpif_port_query_by_name(const struct dpif *dpif, const char *devname, VLOG_RL(&error_rl, error == ENOENT || error == ENODEV ? VLL_DBG : VLL_WARN, "%s: failed to query port %s: %s", - dpif_name(dpif), devname, strerror(error)); + dpif_name(dpif), devname, ovs_strerror(error)); } return error; } @@ -1256,7 +1257,7 @@ log_operation(const struct dpif *dpif, const char *operation, int error) dpif_name(dpif), operation, ofperr_get_name(error)); } else { VLOG_WARN_RL(&error_rl, "%s: %s failed (%s)", - dpif_name(dpif), operation, strerror(error)); + dpif_name(dpif), operation, ovs_strerror(error)); } } @@ -1292,7 +1293,7 @@ log_flow_message(const struct dpif *dpif, int error, const char *operation, } ds_put_format(&ds, "%s ", operation); if (error) { - ds_put_format(&ds, "(%s) ", strerror(error)); + ds_put_format(&ds, "(%s) ", ovs_strerror(error)); } odp_flow_format(key, key_len, mask, mask_len, &ds); if (stats) { @@ -1355,7 +1356,7 @@ log_execute_message(struct dpif *dpif, const struct dpif_execute *execute, ds_put_format(&ds, "%s: execute ", dpif_name(dpif)); format_odp_actions(&ds, execute->actions, execute->actions_len); if (error) { - ds_put_format(&ds, " failed (%s)", strerror(error)); + ds_put_format(&ds, " failed (%s)", ovs_strerror(error)); } ds_put_format(&ds, " on packet %s", packet); vlog(THIS_MODULE, error ? VLL_WARN : VLL_DBG, "%s", ds_cstr(&ds)); diff --git a/lib/entropy.c b/lib/entropy.c index c1f088687..02f56e0f4 100644 --- a/lib/entropy.c +++ b/lib/entropy.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2008, 2009, 2010, 2011 Nicira, Inc. +/* Copyright (c) 2008, 2009, 2010, 2011, 2013 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +39,7 @@ get_entropy(void *buffer, size_t n) fd = open(urandom, O_RDONLY); if (fd < 0) { - VLOG_ERR("%s: open failed (%s)", urandom, strerror(errno)); + VLOG_ERR("%s: open failed (%s)", urandom, ovs_strerror(errno)); return errno ? errno : EINVAL; } diff --git a/lib/fatal-signal.c b/lib/fatal-signal.c index 8c66ef5e0..1770457f3 100644 --- a/lib/fatal-signal.c +++ b/lib/fatal-signal.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008, 2009, 2010, 2011, 2012 Nicira, Inc. + * Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -84,7 +84,7 @@ fatal_signal_init(void) xsigaction(sig_nr, NULL, &old_sa); if (old_sa.sa_handler == SIG_DFL && signal(sig_nr, fatal_signal_handler) == SIG_ERR) { - VLOG_FATAL("signal failed (%s)", strerror(errno)); + VLOG_FATAL("signal failed (%s)", ovs_strerror(errno)); } } atexit(atexit_handler); @@ -238,7 +238,7 @@ fatal_signal_unlink_file_now(const char *file) { int error = unlink(file) ? errno : 0; if (error) { - VLOG_WARN("could not unlink \"%s\" (%s)", file, strerror(error)); + VLOG_WARN("could not unlink \"%s\" (%s)", file, ovs_strerror(error)); } fatal_signal_remove_file_to_unlink(file); diff --git a/lib/json.c b/lib/json.c index af385c695..56dc5ef72 100644 --- a/lib/json.c +++ b/lib/json.c @@ -1026,7 +1026,8 @@ json_from_file(const char *file_name) stream = fopen(file_name, "r"); if (!stream) { return json_string_create_nocopy( - xasprintf("error opening \"%s\": %s", file_name, strerror(errno))); + xasprintf("error opening \"%s\": %s", file_name, + ovs_strerror(errno))); } json = json_from_stream(stream); fclose(stream); @@ -1063,7 +1064,7 @@ json_from_stream(FILE *stream) if (ferror(stream)) { json_destroy(json); json = json_string_create_nocopy( - xasprintf("error reading JSON stream: %s", strerror(errno))); + xasprintf("error reading JSON stream: %s", ovs_strerror(errno))); } return json; diff --git a/lib/jsonrpc.c b/lib/jsonrpc.c index 1ea5398b4..56b4ccefe 100644 --- a/lib/jsonrpc.c +++ b/lib/jsonrpc.c @@ -129,7 +129,7 @@ jsonrpc_run(struct jsonrpc *rpc) } else { if (retval != -EAGAIN) { VLOG_WARN_RL(&rl, "%s: send error: %s", - rpc->name, strerror(-retval)); + rpc->name, ovs_strerror(-retval)); jsonrpc_error(rpc, -retval); } break; @@ -307,7 +307,7 @@ jsonrpc_recv(struct jsonrpc *rpc, struct jsonrpc_msg **msgp) return EAGAIN; } else { VLOG_WARN_RL(&rl, "%s: receive error: %s", - rpc->name, strerror(-retval)); + rpc->name, ovs_strerror(-retval)); jsonrpc_error(rpc, -retval); return rpc->status; } @@ -1116,7 +1116,8 @@ jsonrpc_session_set_dscp(struct jsonrpc_session *s, error = pstream_set_dscp(s->pstream, dscp); if (error) { VLOG_ERR("%s: failed set_dscp %s", - reconnect_get_name(s->reconnect), strerror(error)); + reconnect_get_name(s->reconnect), + ovs_strerror(error)); } /* * XXX race window between setting dscp to listening socket diff --git a/lib/learning-switch.c b/lib/learning-switch.c index f2b331904..9e028608c 100644 --- a/lib/learning-switch.c +++ b/lib/learning-switch.c @@ -208,7 +208,7 @@ lswitch_handshake(struct lswitch *sw) if (error) { VLOG_INFO_RL(&rl, "%s: failed to queue default flows (%s)", - rconn_get_name(sw->rconn), strerror(error)); + rconn_get_name(sw->rconn), ovs_strerror(error)); } } else { VLOG_INFO_RL(&rl, "%s: failed to set usable protocol", @@ -433,7 +433,7 @@ queue_tx(struct lswitch *sw, struct ofpbuf *b) } else { VLOG_WARN_RL(&rl, "%016llx: %s: send: %s", sw->datapath_id, rconn_get_name(sw->rconn), - strerror(retval)); + ovs_strerror(retval)); } } } diff --git a/lib/lockfile.c b/lib/lockfile.c index c37f332f4..14e553d29 100644 --- a/lib/lockfile.c +++ b/lib/lockfile.c @@ -1,4 +1,4 @@ - /* Copyright (c) 2008, 2009, 2010, 2011, 2012 Nicira, Inc. + /* Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -118,7 +118,7 @@ lockfile_lock(const char *file, struct lockfile **lockfilep) "pid %ld", lock_name, (long int) pid); } else { VLOG_WARN("%s: failed to lock file: %s", - lock_name, strerror(error)); + lock_name, ovs_strerror(error)); } } @@ -225,7 +225,7 @@ lockfile_try_lock(const char *name, pid_t *pidp, struct lockfile **lockfilep) } } else if (errno != ENOENT) { VLOG_WARN("%s: failed to stat lock file: %s", - name, strerror(errno)); + name, ovs_strerror(errno)); return errno; } @@ -233,13 +233,14 @@ lockfile_try_lock(const char *name, pid_t *pidp, struct lockfile **lockfilep) fd = open(name, O_RDWR | O_CREAT, 0600); if (fd < 0) { VLOG_WARN("%s: failed to open lock file: %s", - name, strerror(errno)); + name, ovs_strerror(errno)); return errno; } /* Get the inode and device number for the lock table. */ if (fstat(fd, &s)) { - VLOG_ERR("%s: failed to fstat lock file: %s", name, strerror(errno)); + VLOG_ERR("%s: failed to fstat lock file: %s", + name, ovs_strerror(errno)); close(fd); return errno; } diff --git a/lib/netdev-bsd.c b/lib/netdev-bsd.c index 0fb0057a2..f2cf852d8 100644 --- a/lib/netdev-bsd.c +++ b/lib/netdev-bsd.c @@ -189,7 +189,7 @@ netdev_bsd_init(void) af_inet_sock = socket(AF_INET, SOCK_DGRAM, 0); status = af_inet_sock >= 0 ? 0 : errno; if (status) { - VLOG_ERR("failed to create inet socket: %s", strerror(status)); + VLOG_ERR("failed to create inet socket: %s", ovs_strerror(status)); return status; } @@ -197,7 +197,7 @@ netdev_bsd_init(void) af_link_sock = socket(AF_LINK, SOCK_DGRAM, 0); status = af_link_sock >= 0 ? 0 : errno; if (status) { - VLOG_ERR("failed to create link socket: %s", strerror(status)); + VLOG_ERR("failed to create link socket: %s", Ovs_strerror(status)); close(af_inet_sock); af_inet_sock = -1; } @@ -361,7 +361,7 @@ netdev_bsd_create_tap(const struct netdev_class *class, const char *name, netdev->change_seq = 1; if (netdev->tap_fd < 0) { error = errno; - VLOG_WARN("opening \"/dev/tap\" failed: %s", strerror(error)); + VLOG_WARN("opening \"/dev/tap\" failed: %s", ovs_strerror(error)); goto error_undef_notifier; } @@ -482,7 +482,7 @@ netdev_bsd_open_pcap(const char *name, pcap_t **pcapp, int *fdp) * buffer becomes full or a timeout occurs. */ if (ioctl(fd, BIOCIMMEDIATE, &one) < 0 ) { VLOG_ERR_RL(&rl, "ioctl(BIOCIMMEDIATE) on %s device failed: %s", - name, strerror(errno)); + name, ovs_strerror(errno)); error = errno; goto error; } @@ -637,7 +637,7 @@ netdev_rx_bsd_recv_tap(struct netdev_rx_bsd *rx, void *data, size_t size) } else if (errno != EINTR) { if (errno != EAGAIN) { VLOG_WARN_RL(&rl, "error receiving Ethernet packet on %s: %s", - strerror(errno), netdev_rx_get_name(&rx->up)); + ovs_strerror(errno), netdev_rx_get_name(&rx->up)); } return -errno; } @@ -677,7 +677,7 @@ netdev_rx_bsd_drain(struct netdev_rx *rx_) strcpy(ifr.ifr_name, netdev_get_kernel_name(netdev_rx_get_netdev(rx_))); if (ioctl(rx->fd, BIOCFLUSH, &ifr) == -1) { VLOG_DBG_RL(&rl, "%s: ioctl(BIOCFLUSH) failed: %s", - netdev_rx_get_name(rx_), strerror(errno)); + netdev_rx_get_name(rx_), ovs_strerror(errno)); return errno; } return 0; @@ -712,7 +712,7 @@ netdev_bsd_send(struct netdev *netdev_, const void *data, size_t size) continue; } else if (errno != EAGAIN) { VLOG_WARN_RL(&rl, "error sending Ethernet packet on %s: %s", - name, strerror(errno)); + name, ovs_strerror(errno)); } return errno; } else if (retval != size) { @@ -845,7 +845,7 @@ netdev_bsd_get_carrier(const struct netdev *netdev_, bool *carrier) if (ioctl(af_inet_sock, SIOCGIFMEDIA, &ifmr) == -1) { VLOG_DBG_RL(&rl, "%s: ioctl(SIOCGIFMEDIA) failed: %s", - netdev_get_name(netdev_), strerror(errno)); + netdev_get_name(netdev_), ovs_strerror(errno)); return errno; } @@ -913,7 +913,7 @@ netdev_bsd_get_stats(const struct netdev *netdev_, struct netdev_stats *stats) if (sysctl(mib, 5, &if_count, &len, (void *)0, 0) == -1) { VLOG_DBG_RL(&rl, "%s: sysctl failed: %s", - netdev_get_name(netdev_), strerror(errno)); + netdev_get_name(netdev_), ovs_strerror(errno)); return errno; } @@ -924,7 +924,7 @@ netdev_bsd_get_stats(const struct netdev *netdev_, struct netdev_stats *stats) mib[4] = i; //row if (sysctl(mib, 6, &ifmd, &len, (void *)0, 0) == -1) { VLOG_DBG_RL(&rl, "%s: sysctl failed: %s", - netdev_get_name(netdev_), strerror(errno)); + netdev_get_name(netdev_), ovs_strerror(errno)); return errno; } else if (!strcmp(ifmd.ifmd_name, netdev_get_name(netdev_))) { convert_stats(stats, &ifmd.ifmd_data); @@ -1053,7 +1053,7 @@ netdev_bsd_get_features(const struct netdev *netdev, * them. */ if (ioctl(af_inet_sock, SIOCGIFMEDIA, &ifmr) == -1) { VLOG_DBG_RL(&rl, "%s: ioctl(SIOCGIFMEDIA) failed: %s", - netdev_get_name(netdev), strerror(errno)); + netdev_get_name(netdev), ovs_strerror(errno)); return errno; } @@ -1069,7 +1069,7 @@ netdev_bsd_get_features(const struct netdev *netdev, if (ioctl(af_inet_sock, SIOCGIFMEDIA, &ifmr) == -1) { VLOG_DBG_RL(&rl, "%s: ioctl(SIOCGIFMEDIA) failed: %s", - netdev_get_name(netdev), strerror(errno)); + netdev_get_name(netdev), ovs_strerror(errno)); error = errno; goto cleanup; } @@ -1168,7 +1168,7 @@ netdev_bsd_get_in6(const struct netdev *netdev_, struct in6_addr *in6) if (getifaddrs(&head) != 0) { VLOG_ERR("getifaddrs on %s device failed: %s", netdev_name, - strerror(errno)); + ovs_strerror(errno)); return errno; } @@ -1593,7 +1593,7 @@ get_etheraddr(const char *netdev_name, uint8_t ea[ETH_ADDR_LEN]) if (getifaddrs(&head) != 0) { VLOG_ERR("getifaddrs on %s device failed: %s", netdev_name, - strerror(errno)); + ovs_strerror(errno)); return errno; } @@ -1630,7 +1630,7 @@ set_etheraddr(const char *netdev_name OVS_UNUSED, int hwaddr_family OVS_UNUSED, memcpy(ifr.ifr_addr.sa_data, mac, hwaddr_len); if (ioctl(af_inet_sock, SIOCSIFLLADDR, &ifr) < 0) { VLOG_ERR("ioctl(SIOCSIFLLADDR) on %s device failed: %s", - netdev_name, strerror(errno)); + netdev_name, ovs_strerror(errno)); return errno; } return 0; @@ -1696,7 +1696,7 @@ netdev_bsd_do_ioctl(const char *name, struct ifreq *ifr, unsigned long cmd, strncpy(ifr->ifr_name, name, sizeof ifr->ifr_name); if (ioctl(af_inet_sock, cmd, ifr) == -1) { VLOG_DBG_RL(&rl, "%s: ioctl(%s) failed: %s", name, cmd_name, - strerror(errno)); + ovs_strerror(errno)); return errno; } return 0; diff --git a/lib/netdev-dummy.c b/lib/netdev-dummy.c index 6f0e8f8e6..a940df81c 100644 --- a/lib/netdev-dummy.c +++ b/lib/netdev-dummy.c @@ -129,7 +129,7 @@ netdev_dummy_run(void) list_init(&s->txq); } else if (error != EAGAIN) { VLOG_WARN("%s: accept failed (%s)", - pstream_get_name(dev->pstream), strerror(error)); + pstream_get_name(dev->pstream), ovs_strerror(error)); pstream_close(dev->pstream); dev->pstream = NULL; } @@ -322,7 +322,8 @@ netdev_dummy_set_config(struct netdev *netdev_, const struct smap *args) error = pstream_open(pstream, &netdev->pstream, DSCP_DEFAULT); if (error) { - VLOG_WARN("%s: open failed (%s)", pstream, strerror(error)); + VLOG_WARN("%s: open failed (%s)", + pstream, ovs_strerror(error)); } } } diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c index 014c579d5..8790f14ec 100644 --- a/lib/netdev-linux.c +++ b/lib/netdev-linux.c @@ -475,7 +475,7 @@ netdev_linux_init(void) af_inet_sock = socket(AF_INET, SOCK_DGRAM, 0); status = af_inet_sock >= 0 ? 0 : errno; if (status) { - VLOG_ERR("failed to create inet socket: %s", strerror(status)); + VLOG_ERR("failed to create inet socket: %s", ovs_strerror(status)); } /* Create rtnetlink socket. */ @@ -483,7 +483,7 @@ netdev_linux_init(void) status = nl_sock_create(NETLINK_ROUTE, &rtnl_sock); if (status) { VLOG_ERR_RL(&rl, "failed to create rtnetlink socket: %s", - strerror(status)); + ovs_strerror(status)); } } } @@ -672,7 +672,7 @@ netdev_linux_create_tap(const struct netdev_class *class OVS_UNUSED, state->fd = open(tap_dev, O_RDWR); if (state->fd < 0) { error = errno; - VLOG_WARN("opening \"%s\" failed: %s", tap_dev, strerror(error)); + VLOG_WARN("opening \"%s\" failed: %s", tap_dev, ovs_strerror(error)); goto error_unref_notifier; } @@ -681,7 +681,7 @@ netdev_linux_create_tap(const struct netdev_class *class OVS_UNUSED, ovs_strzcpy(ifr.ifr_name, name, sizeof ifr.ifr_name); if (ioctl(state->fd, TUNSETIFF, &ifr) == -1) { VLOG_WARN("%s: creating tap device failed: %s", name, - strerror(errno)); + ovs_strerror(errno)); error = errno; goto error_unref_notifier; } @@ -758,7 +758,7 @@ netdev_linux_rx_open(struct netdev *netdev_, struct netdev_rx **rxp) fd = socket(PF_PACKET, SOCK_RAW, 0); if (fd < 0) { error = errno; - VLOG_ERR("failed to create raw socket (%s)", strerror(error)); + VLOG_ERR("failed to create raw socket (%s)", ovs_strerror(error)); goto error; } @@ -782,7 +782,7 @@ netdev_linux_rx_open(struct netdev *netdev_, struct netdev_rx **rxp) if (bind(fd, (struct sockaddr *) &sll, sizeof sll) < 0) { error = errno; VLOG_ERR("%s: failed to bind raw socket (%s)", - netdev_get_name(netdev_), strerror(error)); + netdev_get_name(netdev_), ovs_strerror(error)); goto error; } @@ -792,7 +792,7 @@ netdev_linux_rx_open(struct netdev *netdev_, struct netdev_rx **rxp) if (error) { error = errno; VLOG_ERR("%s: failed attach filter (%s)", - netdev_get_name(netdev_), strerror(error)); + netdev_get_name(netdev_), ovs_strerror(error)); goto error; } } @@ -842,7 +842,7 @@ netdev_rx_linux_recv(struct netdev_rx *rx_, void *data, size_t size) } else { if (errno != EAGAIN) { VLOG_WARN_RL(&rl, "error receiving Ethernet packet on %s: %s", - strerror(errno), netdev_rx_get_name(rx_)); + ovs_strerror(errno), netdev_rx_get_name(rx_)); } return -errno; } @@ -946,7 +946,7 @@ netdev_linux_send(struct netdev *netdev_, const void *data, size_t size) continue; } else if (errno != EAGAIN) { VLOG_WARN_RL(&rl, "error sending Ethernet packet on %s: %s", - netdev_get_name(netdev_), strerror(errno)); + netdev_get_name(netdev_), ovs_strerror(errno)); } return errno; } else if (retval != size) { @@ -1263,7 +1263,7 @@ check_for_working_netlink_stats(void) } else { VLOG_INFO("RTM_GETLINK failed (%s), obtaining netdev stats " "via proc (you are probably running a pre-2.6.19 " - "kernel)", strerror(error)); + "kernel)", ovs_strerror(error)); return false; } } @@ -1342,7 +1342,8 @@ get_stats_via_vport(const struct netdev *netdev_, error = get_stats_via_vport__(netdev_, stats); if (error && error != ENOENT) { VLOG_WARN_RL(&rl, "%s: obtaining netdev stats via vport failed " - "(%s)", netdev_get_name(netdev_), strerror(error)); + "(%s)", + netdev_get_name(netdev_), ovs_strerror(error)); } netdev->vport_stats_error = error; netdev->cache_valid |= VALID_VPORT_STAT_ERROR; @@ -1777,7 +1778,7 @@ netdev_linux_set_policing(struct netdev *netdev_, error = tc_add_del_ingress_qdisc(netdev_, false); if (error) { VLOG_WARN_RL(&rl, "%s: removing policing failed: %s", - netdev_name, strerror(error)); + netdev_name, ovs_strerror(error)); goto out; } @@ -1785,14 +1786,14 @@ netdev_linux_set_policing(struct netdev *netdev_, error = tc_add_del_ingress_qdisc(netdev_, true); if (error) { VLOG_WARN_RL(&rl, "%s: adding policing qdisc failed: %s", - netdev_name, strerror(error)); + netdev_name, ovs_strerror(error)); goto out; } error = tc_add_policer(netdev_, kbits_rate, kbits_burst); if (error){ VLOG_WARN_RL(&rl, "%s: adding policing action failed: %s", - netdev_name, strerror(error)); + netdev_name, ovs_strerror(error)); goto out; } } @@ -2235,7 +2236,7 @@ netdev_linux_add_router(struct netdev *netdev OVS_UNUSED, struct in_addr router) rt.rt_flags = RTF_UP | RTF_GATEWAY; error = ioctl(af_inet_sock, SIOCADDRT, &rt) < 0 ? errno : 0; if (error) { - VLOG_WARN("ioctl(SIOCADDRT): %s", strerror(error)); + VLOG_WARN("ioctl(SIOCADDRT): %s", ovs_strerror(error)); } return error; } @@ -2252,7 +2253,7 @@ netdev_linux_get_next_hop(const struct in_addr *host, struct in_addr *next_hop, *netdev_name = NULL; stream = fopen(fn, "r"); if (stream == NULL) { - VLOG_WARN_RL(&rl, "%s: open failed: %s", fn, strerror(errno)); + VLOG_WARN_RL(&rl, "%s: open failed: %s", fn, ovs_strerror(errno)); return errno; } @@ -2364,7 +2365,8 @@ netdev_linux_arp_lookup(const struct netdev *netdev, memcpy(mac, r.arp_ha.sa_data, ETH_ADDR_LEN); } else if (retval != ENXIO) { VLOG_WARN_RL(&rl, "%s: could not look up ARP entry for "IP_FMT": %s", - netdev_get_name(netdev), IP_ARGS(ip), strerror(retval)); + netdev_get_name(netdev), IP_ARGS(ip), + ovs_strerror(retval)); } return retval; } @@ -2633,7 +2635,7 @@ htb_setup_class__(struct netdev *netdev, unsigned int handle, tc_get_major(handle), tc_get_minor(handle), tc_get_major(parent), tc_get_minor(parent), class->min_rate, class->max_rate, - class->burst, class->priority, strerror(error)); + class->burst, class->priority, ovs_strerror(error)); } return error; } @@ -3293,7 +3295,7 @@ hfsc_setup_class__(struct netdev *netdev, unsigned int handle, netdev_get_name(netdev), tc_get_major(handle), tc_get_minor(handle), tc_get_major(parent), tc_get_minor(parent), - class->min_rate, class->max_rate, strerror(error)); + class->min_rate, class->max_rate, ovs_strerror(error)); } return error; @@ -3798,7 +3800,7 @@ read_psched(void) stream = fopen(fn, "r"); if (!stream) { - VLOG_WARN("%s: open failed: %s", fn, strerror(errno)); + VLOG_WARN("%s: open failed: %s", fn, ovs_strerror(errno)); return; } @@ -4002,7 +4004,7 @@ tc_query_class(const struct netdev *netdev, netdev_get_name(netdev), tc_get_major(handle), tc_get_minor(handle), tc_get_major(parent), tc_get_minor(parent), - strerror(error)); + ovs_strerror(error)); } return error; } @@ -4027,7 +4029,7 @@ tc_delete_class(const struct netdev *netdev, unsigned int handle) VLOG_WARN_RL(&rl, "delete %s class %u:%u failed (%s)", netdev_get_name(netdev), tc_get_major(handle), tc_get_minor(handle), - strerror(error)); + ovs_strerror(error)); } return error; } @@ -4127,7 +4129,7 @@ tc_query_qdisc(const struct netdev *netdev_) } else { /* Who knows? Maybe the device got deleted. */ VLOG_WARN_RL(&rl, "query %s qdisc failed (%s)", - netdev_get_name(netdev_), strerror(error)); + netdev_get_name(netdev_), ovs_strerror(error)); ops = &tc_ops_other; } @@ -4356,7 +4358,7 @@ get_stats_via_proc(const char *netdev_name, struct netdev_stats *stats) stream = fopen(fn, "r"); if (!stream) { - VLOG_WARN_RL(&rl, "%s: open failed: %s", fn, strerror(errno)); + VLOG_WARN_RL(&rl, "%s: open failed: %s", fn, ovs_strerror(errno)); return errno; } @@ -4436,7 +4438,7 @@ do_get_ifindex(const char *netdev_name) COVERAGE_INC(netdev_get_ifindex); if (ioctl(af_inet_sock, SIOCGIFINDEX, &ifr) < 0) { VLOG_WARN_RL(&rl, "ioctl(SIOCGIFINDEX) on %s device failed: %s", - netdev_name, strerror(errno)); + netdev_name, ovs_strerror(errno)); return -errno; } return ifr.ifr_ifindex; @@ -4479,7 +4481,7 @@ get_etheraddr(const char *netdev_name, uint8_t ea[ETH_ADDR_LEN]) * to INFO for that case. */ VLOG(errno == ENODEV ? VLL_INFO : VLL_ERR, "ioctl(SIOCGIFHWADDR) on %s device failed: %s", - netdev_name, strerror(errno)); + netdev_name, ovs_strerror(errno)); return errno; } hwaddr_family = ifr.ifr_hwaddr.sa_family; @@ -4504,7 +4506,7 @@ set_etheraddr(const char *netdev_name, COVERAGE_INC(netdev_set_hwaddr); if (ioctl(af_inet_sock, SIOCSIFHWADDR, &ifr) < 0) { VLOG_ERR("ioctl(SIOCSIFHWADDR) on %s device failed: %s", - netdev_name, strerror(errno)); + netdev_name, ovs_strerror(errno)); return errno; } return 0; @@ -4526,7 +4528,7 @@ netdev_linux_do_ethtool(const char *name, struct ethtool_cmd *ecmd, } else { if (errno != EOPNOTSUPP) { VLOG_WARN_RL(&rl, "ethtool command %s on network device %s " - "failed: %s", cmd_name, name, strerror(errno)); + "failed: %s", cmd_name, name, ovs_strerror(errno)); } else { /* The device doesn't support this operation. That's pretty * common, so there's no point in logging anything. */ @@ -4542,7 +4544,7 @@ netdev_linux_do_ioctl(const char *name, struct ifreq *ifr, int cmd, ovs_strzcpy(ifr->ifr_name, name, sizeof ifr->ifr_name); if (ioctl(af_inet_sock, cmd, ifr) == -1) { VLOG_DBG_RL(&rl, "%s: ioctl(%s) failed: %s", name, cmd_name, - strerror(errno)); + ovs_strerror(errno)); return errno; } return 0; @@ -4580,7 +4582,8 @@ af_packet_sock(void) } } else { sock = -errno; - VLOG_ERR("failed to create packet socket: %s", strerror(errno)); + VLOG_ERR("failed to create packet socket: %s", + ovs_strerror(errno)); } } diff --git a/lib/netdev.c b/lib/netdev.c index d255dcc72..727c538a5 100644 --- a/lib/netdev.c +++ b/lib/netdev.c @@ -139,7 +139,7 @@ netdev_register_provider(const struct netdev_class *new_class) int error = new_class->init(); if (error) { VLOG_ERR("failed to initialize %s network device class: %s", - new_class->type, strerror(error)); + new_class->type, ovs_strerror(error)); return error; } } @@ -526,7 +526,7 @@ netdev_get_mtu(const struct netdev *netdev, int *mtup) *mtup = 0; if (error != EOPNOTSUPP) { VLOG_DBG_RL(&rl, "failed to retrieve MTU for network device %s: " - "%s", netdev_get_name(netdev), strerror(error)); + "%s", netdev_get_name(netdev), ovs_strerror(error)); } } return error; @@ -547,7 +547,7 @@ netdev_set_mtu(const struct netdev *netdev, int mtu) error = class->set_mtu ? class->set_mtu(netdev, mtu) : EOPNOTSUPP; if (error && error != EOPNOTSUPP) { VLOG_DBG_RL(&rl, "failed to set MTU for network device %s: %s", - netdev_get_name(netdev), strerror(error)); + netdev_get_name(netdev), ovs_strerror(error)); } return error; @@ -825,7 +825,7 @@ do_update_flags(struct netdev *netdev, enum netdev_flags off, if (error) { VLOG_WARN_RL(&rl, "failed to %s flags for network device %s: %s", off || on ? "set" : "get", netdev_get_name(netdev), - strerror(error)); + ovs_strerror(error)); old_flags = 0; } else if ((off || on) && sfp) { enum netdev_flags new_flags = (old_flags & ~off) | on; @@ -956,7 +956,7 @@ netdev_get_carrier(const struct netdev *netdev) &carrier); if (error) { VLOG_DBG("%s: failed to get network device carrier status, assuming " - "down: %s", netdev_get_name(netdev), strerror(error)); + "down: %s", netdev_get_name(netdev), ovs_strerror(error)); carrier = false; } diff --git a/lib/netlink-notifier.c b/lib/netlink-notifier.c index 1e1a317b5..9aa185d5b 100644 --- a/lib/netlink-notifier.c +++ b/lib/netlink-notifier.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009, 2010, 2011, 2012 Nicira, Inc. + * Copyright (c) 2009, 2010, 2011, 2012, 2013 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -115,7 +115,8 @@ nln_notifier_create(struct nln *nln, nln_notify_func *cb, void *aux) } if (error) { nl_sock_destroy(sock); - VLOG_WARN("could not create netlink socket: %s", strerror(error)); + VLOG_WARN("could not create netlink socket: %s", + ovs_strerror(error)); return NULL; } nln->notify_sock = sock; @@ -184,7 +185,7 @@ nln_run(struct nln *nln) VLOG_WARN_RL(&rl, "netlink receive buffer overflowed"); } else { VLOG_WARN_RL(&rl, "error reading netlink socket: %s", - strerror(error)); + ovs_strerror(error)); } nln_report(nln, NULL); } diff --git a/lib/netlink-socket.c b/lib/netlink-socket.c index fbb1724f5..dfe39ac9f 100644 --- a/lib/netlink-socket.c +++ b/lib/netlink-socket.c @@ -99,7 +99,7 @@ nl_sock_create(int protocol, struct nl_sock **sockp) max_iovs = sysconf(_SC_UIO_MAXIOV); if (max_iovs < _XOPEN_IOV_MAX) { if (max_iovs == -1 && errno) { - VLOG_WARN("sysconf(_SC_UIO_MAXIOV): %s", strerror(errno)); + VLOG_WARN("sysconf(_SC_UIO_MAXIOV): %s", ovs_strerror(errno)); } max_iovs = _XOPEN_IOV_MAX; } else if (max_iovs > MAX_IOVS) { @@ -114,7 +114,7 @@ nl_sock_create(int protocol, struct nl_sock **sockp) sock->fd = socket(AF_NETLINK, SOCK_RAW, protocol); if (sock->fd < 0) { - VLOG_ERR("fcntl: %s", strerror(errno)); + VLOG_ERR("fcntl: %s", ovs_strerror(errno)); goto error; } sock->protocol = protocol; @@ -128,7 +128,7 @@ nl_sock_create(int protocol, struct nl_sock **sockp) * Warn only if the failure is therefore unexpected. */ if (errno != EPERM) { VLOG_WARN_RL(&rl, "setting %d-byte socket receive buffer failed " - "(%s)", rcvbuf, strerror(errno)); + "(%s)", rcvbuf, ovs_strerror(errno)); } } @@ -144,14 +144,14 @@ nl_sock_create(int protocol, struct nl_sock **sockp) remote.nl_family = AF_NETLINK; remote.nl_pid = 0; if (connect(sock->fd, (struct sockaddr *) &remote, sizeof remote) < 0) { - VLOG_ERR("connect(0): %s", strerror(errno)); + VLOG_ERR("connect(0): %s", ovs_strerror(errno)); goto error; } /* Obtain pid assigned by kernel. */ local_size = sizeof local; if (getsockname(sock->fd, (struct sockaddr *) &local, &local_size) < 0) { - VLOG_ERR("getsockname: %s", strerror(errno)); + VLOG_ERR("getsockname: %s", ovs_strerror(errno)); goto error; } if (local_size < sizeof local || local.nl_family != AF_NETLINK) { @@ -222,7 +222,7 @@ nl_sock_join_mcgroup(struct nl_sock *sock, unsigned int multicast_group) if (setsockopt(sock->fd, SOL_NETLINK, NETLINK_ADD_MEMBERSHIP, &multicast_group, sizeof multicast_group) < 0) { VLOG_WARN("could not join multicast group %u (%s)", - multicast_group, strerror(errno)); + multicast_group, ovs_strerror(errno)); return errno; } return 0; @@ -245,7 +245,7 @@ nl_sock_leave_mcgroup(struct nl_sock *sock, unsigned int multicast_group) if (setsockopt(sock->fd, SOL_NETLINK, NETLINK_DROP_MEMBERSHIP, &multicast_group, sizeof multicast_group) < 0) { VLOG_WARN("could not leave multicast group %u (%s)", - multicast_group, strerror(errno)); + multicast_group, ovs_strerror(errno)); return errno; } return 0; @@ -527,7 +527,7 @@ nl_sock_transact_multiple__(struct nl_sock *sock, } if (txn->error) { VLOG_DBG_RL(&rl, "received NAK error=%d (%s)", - error, strerror(txn->error)); + error, ovs_strerror(txn->error)); } } else { txn->error = 0; @@ -629,7 +629,7 @@ nl_sock_transact_multiple(struct nl_sock *sock, if (error == ENOBUFS) { VLOG_DBG_RL(&rl, "receive buffer overflow, resending request"); } else if (error) { - VLOG_ERR_RL(&rl, "transaction error (%s)", strerror(error)); + VLOG_ERR_RL(&rl, "transaction error (%s)", ovs_strerror(error)); nl_sock_record_errors__(transactions, n, error); } } @@ -815,7 +815,7 @@ nl_dump_recv(struct nl_dump *dump) if (nl_msg_nlmsgerr(&dump->buffer, &retval)) { VLOG_INFO_RL(&rl, "netlink dump request error (%s)", - strerror(retval)); + ovs_strerror(retval)); return retval && retval != EAGAIN ? retval : EPROTO; } @@ -1187,7 +1187,7 @@ nlmsg_to_string(const struct ofpbuf *buffer, int protocol) if (e) { ds_put_format(&ds, " error(%d", e->error); if (e->error < 0) { - ds_put_format(&ds, "(%s)", strerror(-e->error)); + ds_put_format(&ds, "(%s)", ovs_strerror(-e->error)); } ds_put_cstr(&ds, ", in-reply-to("); nlmsghdr_to_string(&e->msg, protocol, &ds); @@ -1200,7 +1200,7 @@ nlmsg_to_string(const struct ofpbuf *buffer, int protocol) if (error) { ds_put_format(&ds, " done(%d", *error); if (*error < 0) { - ds_put_format(&ds, "(%s)", strerror(-*error)); + ds_put_format(&ds, "(%s)", ovs_strerror(-*error)); } ds_put_cstr(&ds, ")"); } else { @@ -1232,6 +1232,6 @@ log_nlmsg(const char *function, int error, ofpbuf_use_const(&buffer, message, size); nlmsg = nlmsg_to_string(&buffer, protocol); - VLOG_DBG_RL(&rl, "%s (%s): %s", function, strerror(error), nlmsg); + VLOG_DBG_RL(&rl, "%s (%s): %s", function, ovs_strerror(error), nlmsg); free(nlmsg); } diff --git a/lib/ofp-errors.c b/lib/ofp-errors.c index 52856458c..30a021bee 100644 --- a/lib/ofp-errors.c +++ b/lib/ofp-errors.c @@ -154,7 +154,7 @@ ofperr_encode_msg__(enum ofperr error, enum ofp_version ofp_version, if (!ofperr_is_valid(error)) { /* 'error' seems likely to be a system errno value. */ VLOG_ERR_RL(&rl, "invalid OpenFlow error code %d (%s)", - error, strerror(error)); + error, ovs_strerror(error)); error = OFPERR_NXBRC_UNENCODABLE_ERROR; } else if (domain->errors[error - OFPERR_OFS].code < 0) { VLOG_ERR_RL(&rl, "cannot encode %s for %s", @@ -328,10 +328,12 @@ ofperr_decode_msg(const struct ofp_header *oh, struct ofpbuf *payload) /* If 'error' is a valid OFPERR_* value, returns its name * (e.g. "OFPBRC_BAD_TYPE" for OFPBRC_BAD_TYPE). Otherwise, assumes that - * 'error' is a positive errno value and returns what strerror() produces for - * 'error'. */ + * 'error' is a positive errno value and returns what ovs_strerror() produces + * for 'error'. */ const char * ofperr_to_string(enum ofperr error) { - return ofperr_is_valid(error) ? ofperr_get_name(error) : strerror(error); + return (ofperr_is_valid(error) + ? ofperr_get_name(error) + : ovs_strerror(error)); } diff --git a/lib/ovs-thread.c b/lib/ovs-thread.c index 3ea07b5f4..d08751c02 100644 --- a/lib/ovs-thread.c +++ b/lib/ovs-thread.c @@ -153,7 +153,7 @@ pid_t pid = fork(); if (pid < 0) { - VLOG_FATAL("fork failed (%s)", strerror(errno)); + VLOG_FATAL("fork failed (%s)", ovs_strerror(errno)); } return pid; } diff --git a/lib/poll-loop.c b/lib/poll-loop.c index 985530683..ea00d265a 100644 --- a/lib/poll-loop.c +++ b/lib/poll-loop.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008, 2009, 2010, 2011, 2012 Nicira, Inc. + * Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -249,7 +249,7 @@ poll_block(void) retval = time_poll(pollfds, n_pollfds, timeout_when, &elapsed); if (retval < 0) { static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 5); - VLOG_ERR_RL(&rl, "poll: %s", strerror(-retval)); + VLOG_ERR_RL(&rl, "poll: %s", ovs_strerror(-retval)); } else if (!retval) { log_wakeup(timeout_where, NULL, elapsed); } diff --git a/lib/process.c b/lib/process.c index 266c90b6a..143347ca5 100644 --- a/lib/process.c +++ b/lib/process.c @@ -193,7 +193,7 @@ process_start(char **argv, struct process **pp) pid = fork(); if (pid < 0) { - VLOG_WARN("fork failed: %s", strerror(errno)); + VLOG_WARN("fork failed: %s", ovs_strerror(errno)); return errno; } else if (pid) { /* Running in parent process. */ @@ -210,7 +210,7 @@ process_start(char **argv, struct process **pp) } execvp(argv[0], argv); fprintf(stderr, "execvp(\"%s\") failed: %s\n", - argv[0], strerror(errno)); + argv[0], ovs_strerror(errno)); _exit(1); } } @@ -316,7 +316,7 @@ process_run(void) p->exited = true; p->status = status; } else if (retval < 0) { - VLOG_WARN("waitpid: %s", strerror(errno)); + VLOG_WARN("waitpid: %s", ovs_strerror(errno)); p->exited = true; p->status = -1; } diff --git a/lib/rconn.c b/lib/rconn.c index ffd2738ed..e4caaa945 100644 --- a/lib/rconn.c +++ b/lib/rconn.c @@ -379,7 +379,8 @@ reconnect(struct rconn *rc) rc->backoff_deadline = time_now() + rc->backoff; state_transition(rc, S_CONNECTING); } else { - VLOG_WARN("%s: connection failed (%s)", rc->name, strerror(retval)); + VLOG_WARN("%s: connection failed (%s)", + rc->name, ovs_strerror(retval)); rc->backoff_deadline = TIME_MAX; /* Prevent resetting backoff. */ disconnect(rc, retval); } @@ -417,7 +418,7 @@ run_CONNECTING(struct rconn *rc) } else if (retval != EAGAIN) { if (rconn_logging_connection_attempts__(rc)) { VLOG_INFO("%s: connection failed (%s)", - rc->name, strerror(retval)); + rc->name, ovs_strerror(retval)); } disconnect(rc, retval); } else if (timed_out(rc)) { @@ -962,7 +963,8 @@ report_error(struct rconn *rc, int error) enum vlog_level level = rc->reliable ? VLL_INFO : VLL_DBG; VLOG(level, "%s: connection closed by peer", rc->name); } else { - VLOG_WARN("%s: connection dropped (%s)", rc->name, strerror(error)); + VLOG_WARN("%s: connection dropped (%s)", + rc->name, ovs_strerror(error)); } } diff --git a/lib/reconnect.c b/lib/reconnect.c index b914ef687..fae35b1ec 100644 --- a/lib/reconnect.c +++ b/lib/reconnect.c @@ -331,7 +331,7 @@ reconnect_disconnected(struct reconnect *fsm, long long int now, int error) if (fsm->state & (S_ACTIVE | S_IDLE)) { if (error > 0) { VLOG_WARN("%s: connection dropped (%s)", - fsm->name, strerror(error)); + fsm->name, ovs_strerror(error)); } else if (error == EOF) { VLOG(fsm->info, "%s: connection closed by peer", fsm->name); } else { @@ -340,7 +340,7 @@ reconnect_disconnected(struct reconnect *fsm, long long int now, int error) } else if (fsm->state == S_LISTENING) { if (error > 0) { VLOG_WARN("%s: error listening for connections (%s)", - fsm->name, strerror(error)); + fsm->name, ovs_strerror(error)); } else { VLOG(fsm->info, "%s: error listening for connections", fsm->name); @@ -349,7 +349,7 @@ reconnect_disconnected(struct reconnect *fsm, long long int now, int error) const char *type = fsm->passive ? "listen" : "connection"; if (error > 0) { VLOG_WARN("%s: %s attempt failed (%s)", - fsm->name, type, strerror(error)); + fsm->name, type, ovs_strerror(error)); } else { VLOG(fsm->info, "%s: %s attempt timed out", fsm->name, type); } diff --git a/lib/rtbsd.c b/lib/rtbsd.c index c5fe03a39..b706c20e7 100644 --- a/lib/rtbsd.c +++ b/lib/rtbsd.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011 Gaetano Catalli. + * Copyright (c) 2011, 2013 Gaetano Catalli. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -55,13 +55,13 @@ rtbsd_notifier_register(struct rtbsd_notifier *notifier, notify_sock = socket(PF_ROUTE, SOCK_RAW, 0); if (notify_sock < 0) { VLOG_WARN("could not create PF_ROUTE socket: %s", - strerror(errno)); + ovs_strerror(errno)); return errno; } error = set_nonblocking(notify_sock); if (error) { VLOG_WARN("error set_nonblocking PF_ROUTE socket: %s", - strerror(error)); + ovs_strerror(error)); return error; } } else { @@ -120,7 +120,7 @@ rtbsd_notifier_run(void) VLOG_WARN_RL(&rl, "PF_ROUTE receive buffer overflowed"); } else { VLOG_WARN_RL(&rl, "error reading PF_ROUTE socket: %s", - strerror(errno)); + ovs_strerror(errno)); } rtbsd_report_notify_error(); } diff --git a/lib/sflow_agent.c b/lib/sflow_agent.c index f55e6d449..817420d83 100644 --- a/lib/sflow_agent.c +++ b/lib/sflow_agent.c @@ -6,6 +6,7 @@ */ #include "sflow_api.h" +#include "util.h" static void * sflAlloc(SFLAgent *agent, size_t bytes); static void sflFree(SFLAgent *agent, void *obj); @@ -469,7 +470,7 @@ void sfl_agent_error(SFLAgent *agent, char *modName, char *msg) void sfl_agent_sysError(SFLAgent *agent, char *modName, char *msg) { char errm[MAX_ERRMSG_LEN]; - snprintf(errm, sizeof errm, "sfl_agent_sysError: %s: %s (errno = %d - %s)\n", modName, msg, errno, strerror(errno)); + snprintf(errm, sizeof errm, "sfl_agent_sysError: %s: %s (errno = %d - %s)\n", modName, msg, errno, ovs_strerror(errno)); if(agent->errorFn) (*agent->errorFn)(agent->magic, agent, errm); else { fprintf(stderr, "%s\n", errm); diff --git a/lib/signals.c b/lib/signals.c index 1340f54c8..f11ed0568 100644 --- a/lib/signals.c +++ b/lib/signals.c @@ -130,7 +130,7 @@ xsigaction(int signum, const struct sigaction *new, struct sigaction *old) VLOG_FATAL("sigaction(%s) failed (%s)", signal_name(signum, namebuf, sizeof namebuf), - strerror(errno)); + ovs_strerror(errno)); } } @@ -139,6 +139,6 @@ xpthread_sigmask(int how, const sigset_t *new, sigset_t *old) { int error = pthread_sigmask(how, new, old); if (error) { - VLOG_FATAL("pthread_sigmask failed (%s)", strerror(error)); + VLOG_FATAL("pthread_sigmask failed (%s)", ovs_strerror(error)); } } diff --git a/lib/socket-util.c b/lib/socket-util.c index 2dff9f592..fa55480d3 100644 --- a/lib/socket-util.c +++ b/lib/socket-util.c @@ -72,11 +72,11 @@ set_nonblocking(int fd) if (fcntl(fd, F_SETFL, flags | O_NONBLOCK) != -1) { return 0; } else { - VLOG_ERR("fcntl(F_SETFL) failed: %s", strerror(errno)); + VLOG_ERR("fcntl(F_SETFL) failed: %s", ovs_strerror(errno)); return errno; } } else { - VLOG_ERR("fcntl(F_GETFL) failed: %s", strerror(errno)); + VLOG_ERR("fcntl(F_GETFL) failed: %s", ovs_strerror(errno)); return errno; } } @@ -259,7 +259,7 @@ check_connection_completion(int fd) } return 0; } else if (retval < 0) { - VLOG_ERR_RL(&rl, "poll: %s", strerror(errno)); + VLOG_ERR_RL(&rl, "poll: %s", ovs_strerror(errno)); return errno; } else { return EAGAIN; @@ -452,7 +452,8 @@ make_unix_socket(int style, bool nonblock, int dirfd; if (unlink(bind_path) && errno != ENOENT) { - VLOG_WARN("unlinking \"%s\": %s\n", bind_path, strerror(errno)); + VLOG_WARN("unlinking \"%s\": %s\n", + bind_path, ovs_strerror(errno)); } fatal_signal_add_file_to_unlink(bind_path); @@ -602,7 +603,7 @@ inet_open_active(int style, const char *target, uint16_t default_port, /* Create non-blocking socket. */ fd = socket(AF_INET, style, 0); if (fd < 0) { - VLOG_ERR("%s: socket: %s", target, strerror(errno)); + VLOG_ERR("%s: socket: %s", target, ovs_strerror(errno)); error = errno; goto exit; } @@ -616,7 +617,7 @@ inet_open_active(int style, const char *target, uint16_t default_port, * connect(), the handshake SYN frames will be sent with a TOS of 0. */ error = set_dscp(fd, dscp); if (error) { - VLOG_ERR("%s: socket: %s", target, strerror(error)); + VLOG_ERR("%s: socket: %s", target, ovs_strerror(error)); goto exit; } @@ -728,7 +729,7 @@ inet_open_passive(int style, const char *target, int default_port, fd = socket(AF_INET, style, 0); if (fd < 0) { error = errno; - VLOG_ERR("%s: socket: %s", target, strerror(error)); + VLOG_ERR("%s: socket: %s", target, ovs_strerror(error)); return -error; } error = set_nonblocking(fd); @@ -738,14 +739,15 @@ inet_open_passive(int style, const char *target, int default_port, if (style == SOCK_STREAM && setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, &yes, sizeof yes) < 0) { error = errno; - VLOG_ERR("%s: setsockopt(SO_REUSEADDR): %s", target, strerror(error)); + VLOG_ERR("%s: setsockopt(SO_REUSEADDR): %s", + target, ovs_strerror(error)); goto error; } /* Bind. */ if (bind(fd, (struct sockaddr *) &sin, sizeof sin) < 0) { error = errno; - VLOG_ERR("%s: bind: %s", target, strerror(error)); + VLOG_ERR("%s: bind: %s", target, ovs_strerror(error)); goto error; } @@ -754,14 +756,14 @@ inet_open_passive(int style, const char *target, int default_port, * connect(), the handshake SYN frames will be sent with a TOS of 0. */ error = set_dscp(fd, dscp); if (error) { - VLOG_ERR("%s: socket: %s", target, strerror(error)); + VLOG_ERR("%s: socket: %s", target, ovs_strerror(error)); goto error; } /* Listen. */ if (style == SOCK_STREAM && listen(fd, 10) < 0) { error = errno; - VLOG_ERR("%s: listen: %s", target, strerror(error)); + VLOG_ERR("%s: listen: %s", target, ovs_strerror(error)); goto error; } @@ -770,7 +772,7 @@ inet_open_passive(int style, const char *target, int default_port, socklen_t sin_len = sizeof sin; if (getsockname(fd, (struct sockaddr *) &sin, &sin_len) < 0) { error = errno; - VLOG_ERR("%s: getsockname: %s", target, strerror(error)); + VLOG_ERR("%s: getsockname: %s", target, ovs_strerror(error)); goto error; } if (sin.sin_family != AF_INET || sin_len != sizeof sin) { @@ -805,7 +807,7 @@ get_null_fd(void) null_fd = open("/dev/null", O_RDWR); if (null_fd < 0) { int error = errno; - VLOG_ERR("could not open /dev/null: %s", strerror(error)); + VLOG_ERR("could not open /dev/null: %s", ovs_strerror(error)); return -error; } } @@ -873,13 +875,13 @@ fsync_parent_dir(const char *file_name) * really an error. */ } else { error = errno; - VLOG_ERR("%s: fsync failed (%s)", dir, strerror(error)); + VLOG_ERR("%s: fsync failed (%s)", dir, ovs_strerror(error)); } } close(fd); } else { error = errno; - VLOG_ERR("%s: open failed (%s)", dir, strerror(error)); + VLOG_ERR("%s: open failed (%s)", dir, ovs_strerror(error)); } free(dir); @@ -917,7 +919,7 @@ void xpipe(int fds[2]) { if (pipe(fds)) { - VLOG_FATAL("failed to create pipe (%s)", strerror(errno)); + VLOG_FATAL("failed to create pipe (%s)", ovs_strerror(errno)); } } @@ -933,7 +935,7 @@ void xsocketpair(int domain, int type, int protocol, int fds[2]) { if (socketpair(domain, type, protocol, fds)) { - VLOG_FATAL("failed to create socketpair (%s)", strerror(errno)); + VLOG_FATAL("failed to create socketpair (%s)", ovs_strerror(errno)); } } @@ -948,7 +950,7 @@ getsockopt_int(int fd, int level, int option, const char *optname, int *valuep) len = sizeof value; if (getsockopt(fd, level, option, &value, &len)) { error = errno; - VLOG_ERR_RL(&rl, "getsockopt(%s): %s", optname, strerror(error)); + VLOG_ERR_RL(&rl, "getsockopt(%s): %s", optname, ovs_strerror(error)); } else if (len != sizeof value) { error = EINVAL; VLOG_ERR_RL(&rl, "getsockopt(%s): value is %u bytes (expected %zu)", @@ -1076,7 +1078,7 @@ describe_fd(int fd) ds_init(&string); if (fstat(fd, &s)) { - ds_put_format(&string, "fstat failed (%s)", strerror(errno)); + ds_put_format(&string, "fstat failed (%s)", ovs_strerror(errno)); } else if (S_ISSOCK(s.st_mode)) { describe_sockaddr(&string, fd, getsockname); ds_put_cstr(&string, "<->"); diff --git a/lib/stream-fd.c b/lib/stream-fd.c index df5e8b0e8..d102582af 100644 --- a/lib/stream-fd.c +++ b/lib/stream-fd.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008, 2009, 2010, 2012 Nicira, Inc. + * Copyright (c) 2008, 2009, 2010, 2012, 2013 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -233,7 +233,7 @@ pfd_accept(struct pstream *pstream, struct stream **new_streamp) if (new_fd < 0) { retval = errno; if (retval != EAGAIN) { - VLOG_DBG_RL(&rl, "accept: %s", strerror(retval)); + VLOG_DBG_RL(&rl, "accept: %s", ovs_strerror(retval)); } return retval; } diff --git a/lib/stream-ssl.c b/lib/stream-ssl.c index c373ca960..3b9270f93 100644 --- a/lib/stream-ssl.c +++ b/lib/stream-ssl.c @@ -246,7 +246,7 @@ new_ssl_stream(const char *name, int fd, enum session_type type, /* Disable Nagle. */ retval = setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, &on, sizeof on); if (retval) { - VLOG_ERR("%s: setsockopt(TCP_NODELAY): %s", name, strerror(errno)); + VLOG_ERR("%s: setsockopt(TCP_NODELAY): %s", name, ovs_strerror(errno)); retval = errno; goto error; } @@ -323,7 +323,7 @@ ssl_open(const char *name, char *suffix, struct stream **streamp, uint8_t dscp) int state = error ? STATE_TCP_CONNECTING : STATE_SSL_CONNECTING; return new_ssl_stream(name, fd, CLIENT, state, &sin, streamp); } else { - VLOG_ERR("%s: connect: %s", name, strerror(error)); + VLOG_ERR("%s: connect: %s", name, ovs_strerror(error)); return error; } } @@ -369,7 +369,7 @@ do_ca_cert_bootstrap(struct stream *stream) return EPROTO; } else { VLOG_ERR("could not bootstrap CA cert: creating %s failed: %s", - ca_cert.file_name, strerror(errno)); + ca_cert.file_name, ovs_strerror(errno)); return errno; } } @@ -378,7 +378,7 @@ do_ca_cert_bootstrap(struct stream *stream) if (!file) { error = errno; VLOG_ERR("could not bootstrap CA cert: fdopen failed: %s", - strerror(error)); + ovs_strerror(error)); unlink(ca_cert.file_name); return error; } @@ -395,7 +395,7 @@ do_ca_cert_bootstrap(struct stream *stream) if (fclose(file)) { error = errno; VLOG_ERR("could not bootstrap CA cert: writing %s failed: %s", - ca_cert.file_name, strerror(error)); + ca_cert.file_name, ovs_strerror(error)); unlink(ca_cert.file_name); return error; } @@ -564,7 +564,7 @@ interpret_ssl_error(const char *function, int ret, int error, if (ret < 0) { int status = errno; VLOG_WARN_RL(&rl, "%s: system error (%s)", - function, strerror(status)); + function, ovs_strerror(status)); return status; } else { VLOG_WARN_RL(&rl, "%s: unexpected SSL connection close", @@ -834,7 +834,7 @@ pssl_accept(struct pstream *pstream, struct stream **new_streamp) if (new_fd < 0) { error = errno; if (error != EAGAIN) { - VLOG_DBG_RL(&rl, "accept: %s", strerror(error)); + VLOG_DBG_RL(&rl, "accept: %s", ovs_strerror(error)); } return error; } @@ -1015,7 +1015,8 @@ update_ssl_config(struct ssl_config_file *config, const char *file_name) * here. */ error = get_mtime(file_name, &mtime); if (error && error != ENOENT) { - VLOG_ERR_RL(&rl, "%s: stat failed (%s)", file_name, strerror(error)); + VLOG_ERR_RL(&rl, "%s: stat failed (%s)", + file_name, ovs_strerror(error)); } if (config->file_name && !strcmp(config->file_name, file_name) @@ -1123,7 +1124,7 @@ read_cert_file(const char *file_name, X509 ***certs, size_t *n_certs) file = fopen(file_name, "r"); if (!file) { VLOG_ERR("failed to open %s for reading: %s", - file_name, strerror(errno)); + file_name, ovs_strerror(errno)); return errno; } diff --git a/lib/stream-tcp.c b/lib/stream-tcp.c index 1767fe44e..d507208e2 100644 --- a/lib/stream-tcp.c +++ b/lib/stream-tcp.c @@ -53,7 +53,7 @@ new_tcp_stream(const char *name, int fd, int connect_status, retval = setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, &on, sizeof on); if (retval) { - VLOG_ERR("%s: setsockopt(TCP_NODELAY): %s", name, strerror(errno)); + VLOG_ERR("%s: setsockopt(TCP_NODELAY): %s", name, ovs_strerror(errno)); close(fd); return errno; } @@ -79,7 +79,7 @@ tcp_open(const char *name, char *suffix, struct stream **streamp, uint8_t dscp) if (fd >= 0) { return new_tcp_stream(name, fd, error, &sin, streamp); } else { - VLOG_ERR("%s: connect: %s", name, strerror(error)); + VLOG_ERR("%s: connect: %s", name, ovs_strerror(error)); return error; } } diff --git a/lib/stream-unix.c b/lib/stream-unix.c index dbee135d9..e4b7e779e 100644 --- a/lib/stream-unix.c +++ b/lib/stream-unix.c @@ -50,7 +50,8 @@ unix_open(const char *name, char *suffix, struct stream **streamp, fd = make_unix_socket(SOCK_STREAM, true, NULL, connect_path); if (fd < 0) { - VLOG_DBG("%s: connection failed (%s)", connect_path, strerror(-fd)); + VLOG_DBG("%s: connection failed (%s)", + connect_path, ovs_strerror(-fd)); free(connect_path); return -fd; } @@ -87,14 +88,14 @@ punix_open(const char *name OVS_UNUSED, char *suffix, bind_path = abs_file_name(ovs_rundir(), suffix); fd = make_unix_socket(SOCK_STREAM, true, bind_path, NULL); if (fd < 0) { - VLOG_ERR("%s: binding failed: %s", bind_path, strerror(errno)); + VLOG_ERR("%s: binding failed: %s", bind_path, ovs_strerror(errno)); free(bind_path); return errno; } if (listen(fd, 10) < 0) { error = errno; - VLOG_ERR("%s: listen: %s", name, strerror(error)); + VLOG_ERR("%s: listen: %s", name, ovs_strerror(error)); close(fd); free(bind_path); return error; diff --git a/lib/timeval.c b/lib/timeval.c index 4723c5686..0ccfa42a3 100644 --- a/lib/timeval.c +++ b/lib/timeval.c @@ -179,7 +179,7 @@ set_up_timer(void) } if (timer_create(monotonic_clock, NULL, &timer_id)) { - VLOG_FATAL("timer_create failed (%s)", strerror(errno)); + VLOG_FATAL("timer_create failed (%s)", ovs_strerror(errno)); } itimer.it_interval.tv_sec = 0; @@ -187,7 +187,7 @@ set_up_timer(void) itimer.it_value = itimer.it_interval; if (timer_settime(timer_id, 0, &itimer, NULL)) { - VLOG_FATAL("timer_settime failed (%s)", strerror(errno)); + VLOG_FATAL("timer_settime failed (%s)", ovs_strerror(errno)); } } @@ -456,7 +456,7 @@ void xgettimeofday(struct timeval *tv) { if (gettimeofday(tv, NULL) == -1) { - VLOG_FATAL("gettimeofday failed (%s)", strerror(errno)); + VLOG_FATAL("gettimeofday failed (%s)", ovs_strerror(errno)); } } diff --git a/lib/unixctl.c b/lib/unixctl.c index 3d5eda605..253e95389 100644 --- a/lib/unixctl.c +++ b/lib/unixctl.c @@ -358,7 +358,7 @@ unixctl_server_run(struct unixctl_server *server) } else { VLOG_WARN_RL(&rl, "%s: accept failed: %s", pstream_get_name(server->listener), - strerror(error)); + ovs_strerror(error)); } } diff --git a/lib/util.c b/lib/util.c index 1bb5096b0..0ba1ed559 100644 --- a/lib/util.c +++ b/lib/util.c @@ -616,7 +616,7 @@ get_cwd(void) int error = errno; free(buf); if (error != ERANGE) { - VLOG_WARN("getcwd failed (%s)", strerror(error)); + VLOG_WARN("getcwd failed (%s)", ovs_strerror(error)); return NULL; } size *= 2; @@ -754,7 +754,8 @@ follow_symlinks(const char *filename) linkname = xreadlink(fn); if (!linkname) { - VLOG_WARN("%s: readlink failed (%s)", filename, strerror(errno)); + VLOG_WARN("%s: readlink failed (%s)", + filename, ovs_strerror(errno)); return fn; } diff --git a/lib/vconn-stream.c b/lib/vconn-stream.c index 08ec7bf6b..92076d999 100644 --- a/lib/vconn-stream.c +++ b/lib/vconn-stream.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008, 2009, 2010, 2011, 2012 Nicira, Inc. + * Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -233,7 +233,7 @@ vconn_stream_run(struct vconn *vconn) retval = stream_send(s->stream, s->txbuf->data, s->txbuf->size); if (retval < 0) { if (retval != -EAGAIN) { - VLOG_ERR_RL(&rl, "send: %s", strerror(-retval)); + VLOG_ERR_RL(&rl, "send: %s", ovs_strerror(-retval)); vconn_stream_clear_txbuf(s); return; } @@ -348,7 +348,7 @@ pvconn_pstream_accept(struct pvconn *pvconn, struct vconn **new_vconnp) if (error) { if (error != EAGAIN) { VLOG_DBG_RL(&rl, "%s: accept: %s", - pstream_get_name(ps->pstream), strerror(error)); + pstream_get_name(ps->pstream), ovs_strerror(error)); } return error; } diff --git a/lib/vconn.c b/lib/vconn.c index dc84cbb75..449a36e90 100644 --- a/lib/vconn.c +++ b/lib/vconn.c @@ -695,7 +695,7 @@ do_send(struct vconn *vconn, struct ofpbuf *msg) retval = (vconn->class->send)(vconn, msg); if (retval != EAGAIN) { VLOG_DBG_RL(&ofmsg_rl, "%s: sent (%s): %s", - vconn->name, strerror(retval), s); + vconn->name, ovs_strerror(retval), s); } free(s); } diff --git a/lib/vlandev.c b/lib/vlandev.c index 0ccb6ca51..5f58f1055 100644 --- a/lib/vlandev.c +++ b/lib/vlandev.c @@ -212,7 +212,7 @@ vlandev_linux_refresh(void) return 0; } - VLOG_WARN_RL(&rl, "%s: open failed (%s)", fn, strerror(error)); + VLOG_WARN_RL(&rl, "%s: open failed (%s)", fn, ovs_strerror(error)); return error; } @@ -250,7 +250,7 @@ do_vlan_ioctl(const char *netdev_name, struct vlan_ioctl_args *via, error = ioctl(sock, SIOCSIFVLAN, via) < 0 ? errno : 0; if (error) { VLOG_WARN_RL(&rl, "%s: VLAN ioctl %s failed (%s)", - netdev_name, cmd_name, strerror(error)); + netdev_name, cmd_name, ovs_strerror(error)); } return error; } diff --git a/lib/vlog.c b/lib/vlog.c index 193e4f748..f87f48f82 100644 --- a/lib/vlog.c +++ b/lib/vlog.c @@ -320,7 +320,7 @@ vlog_set_log_file(const char *file_name) /* Log success or failure. */ if (log_fd < 0) { VLOG_WARN("failed to open %s for logging: %s", - log_file_name, strerror(errno)); + log_file_name, ovs_strerror(errno)); error = errno; } else { VLOG_INFO("opened log file %s", log_file_name); @@ -489,7 +489,7 @@ vlog_unixctl_reopen(struct unixctl_conn *conn, int argc OVS_UNUSED, if (log_file_name) { int error = vlog_reopen_log_file(); if (error) { - unixctl_command_reply_error(conn, strerror(errno)); + unixctl_command_reply_error(conn, ovs_strerror(errno)); } else { unixctl_command_reply(conn, NULL); } diff --git a/lib/worker.c b/lib/worker.c index 4c947a422..6904fdd1d 100644 --- a/lib/worker.c +++ b/lib/worker.c @@ -233,7 +233,7 @@ worker_send_iovec(const struct iovec iovs[], size_t n_iovs, } while (error == EINTR); if (error) { worker_broke(); - VLOG_ABORT("poll failed (%s)", strerror(error)); + VLOG_ABORT("poll failed (%s)", ovs_strerror(error)); } } } @@ -264,7 +264,7 @@ worker_request_iovec(const struct iovec iovs[], size_t n_iovs, error = worker_send_iovec(all_iovs, n_iovs + 1, fds, n_fds); if (error) { worker_broke(); - VLOG_ABORT("send failed (%s)", strerror(error)); + VLOG_ABORT("send failed (%s)", ovs_strerror(error)); } free(all_iovs); @@ -347,9 +347,9 @@ worker_reply_iovec(const struct iovec *iovs, size_t n_iovs, if (error == EPIPE) { /* Parent probably died. Continue processing any RPCs still buffered, * to avoid missing log messages. */ - VLOG_INFO("send failed (%s)", strerror(error)); + VLOG_INFO("send failed (%s)", ovs_strerror(error)); } else if (error) { - VLOG_FATAL("send failed (%s)", strerror(error)); + VLOG_FATAL("send failed (%s)", ovs_strerror(error)); } free(all_iovs); diff --git a/ofproto/collectors.c b/ofproto/collectors.c index 14572db9c..919fa1b8d 100644 --- a/ofproto/collectors.c +++ b/ofproto/collectors.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008, 2009, 2010, 2011 Nicira, Inc. + * Copyright (c) 2008, 2009, 2010, 2011, 2013 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -70,7 +70,7 @@ collectors_create(const struct sset *targets, uint16_t default_port, static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 5); VLOG_WARN_RL(&rl, "couldn't open connection to collector %s (%s)", - name, strerror(error)); + name, ovs_strerror(error)); if (!retval) { retval = error; } @@ -113,7 +113,7 @@ collectors_send(const struct collectors *c, const void *payload, size_t n) static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 5); if (send(c->fds[i], payload, n, 0) == -1) { VLOG_WARN_RL(&rl, "sending to collector failed: %s", - strerror(errno)); + ovs_strerror(errno)); } } } diff --git a/ofproto/connmgr.c b/ofproto/connmgr.c index 01b894f78..426493436 100644 --- a/ofproto/connmgr.c +++ b/ofproto/connmgr.c @@ -315,7 +315,7 @@ connmgr_run(struct connmgr *mgr, ofconn_set_rate_limit(ofconn, ofservice->rate_limit, ofservice->burst_limit); } else if (retval != EAGAIN) { - VLOG_WARN_RL(&rl, "accept failed (%s)", strerror(retval)); + VLOG_WARN_RL(&rl, "accept failed (%s)", ovs_strerror(retval)); } } @@ -327,7 +327,7 @@ connmgr_run(struct connmgr *mgr, if (!retval) { add_snooper(mgr, vconn); } else if (retval != EAGAIN) { - VLOG_WARN_RL(&rl, "accept failed (%s)", strerror(retval)); + VLOG_WARN_RL(&rl, "accept failed (%s)", ovs_strerror(retval)); } } } @@ -758,7 +758,7 @@ set_pvconns(struct pvconn ***pvconnsp, size_t *n_pvconnsp, if (!error) { pvconns[n_pvconns++] = pvconn; } else { - VLOG_ERR("failed to listen on %s: %s", name, strerror(error)); + VLOG_ERR("failed to listen on %s: %s", name, ovs_strerror(error)); if (!retval) { retval = error; } diff --git a/ofproto/in-band.c b/ofproto/in-band.c index 03d46610a..265dcb2a6 100644 --- a/ofproto/in-band.c +++ b/ofproto/in-band.c @@ -120,7 +120,8 @@ refresh_remote(struct in_band *ib, struct in_band_remote *r) &next_hop_inaddr, &next_hop_dev); if (retval) { VLOG_WARN("cannot find route for controller ("IP_FMT"): %s", - IP_ARGS(r->remote_addr.sin_addr.s_addr), strerror(retval)); + IP_ARGS(r->remote_addr.sin_addr.s_addr), + ovs_strerror(retval)); return 1; } if (!next_hop_inaddr.s_addr) { @@ -138,7 +139,7 @@ refresh_remote(struct in_band *ib, struct in_band_remote *r) VLOG_WARN_RL(&rl, "cannot open netdev %s (next hop " "to controller "IP_FMT"): %s", next_hop_dev, IP_ARGS(r->remote_addr.sin_addr.s_addr), - strerror(retval)); + ovs_strerror(retval)); free(next_hop_dev); return 1; } @@ -150,7 +151,7 @@ refresh_remote(struct in_band *ib, struct in_band_remote *r) r->remote_mac); if (retval) { VLOG_DBG_RL(&rl, "cannot look up remote MAC address ("IP_FMT"): %s", - IP_ARGS(next_hop_inaddr.s_addr), strerror(retval)); + IP_ARGS(next_hop_inaddr.s_addr), ovs_strerror(retval)); } /* If we don't have a MAC address, then refresh quickly, since we probably @@ -421,7 +422,8 @@ in_band_create(struct ofproto *ofproto, const char *local_name, error = netdev_open(local_name, "internal", &local_netdev); if (error) { VLOG_ERR("failed to initialize in-band control: cannot open " - "datapath local port %s (%s)", local_name, strerror(error)); + "datapath local port %s (%s)", + local_name, ovs_strerror(error)); return error; } diff --git a/ofproto/ofproto-dpif-sflow.c b/ofproto/ofproto-dpif-sflow.c index 102467a0a..64e6c9663 100644 --- a/ofproto/ofproto-dpif-sflow.c +++ b/ofproto/ofproto-dpif-sflow.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009, 2010, 2011, 2012 Nicira, Inc. + * Copyright (c) 2009, 2010, 2011, 2012, 2013 Nicira, Inc. * Copyright (c) 2009 InMon Corp. * * Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c index f8a191215..5ca16b7f0 100644 --- a/ofproto/ofproto-dpif.c +++ b/ofproto/ofproto-dpif.c @@ -932,7 +932,7 @@ open_dpif_backer(const char *type, struct dpif_backer **backerp) free(backer_name); if (error) { VLOG_ERR("failed to open datapath of type %s: %s", type, - strerror(error)); + ovs_strerror(error)); free(backer); return error; } @@ -979,7 +979,7 @@ open_dpif_backer(const char *type, struct dpif_backer **backerp) error = dpif_recv_set(backer->dpif, backer->recv_set_enable); if (error) { VLOG_ERR("failed to listen on datapath of type %s: %s", - type, strerror(error)); + type, ovs_strerror(error)); close_dpif_backer(backer); return error; } @@ -2472,7 +2472,7 @@ send_pdu_cb(void *port_, const void *pdu, size_t pdu_size) } else { VLOG_ERR_RL(&rl, "port %s: cannot obtain Ethernet address of iface " "%s (%s)", port->bundle->name, - netdev_get_name(port->up.netdev), strerror(error)); + netdev_get_name(port->up.netdev), ovs_strerror(error)); } } @@ -2511,7 +2511,7 @@ bundle_send_learning_packets(struct ofbundle *bundle) static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 5); VLOG_WARN_RL(&rl, "bond %s: %d errors sending %d gratuitous learning " "packets, last error was: %s", - bundle->name, n_errors, n_packets, strerror(error)); + bundle->name, n_errors, n_packets, ovs_strerror(error)); } else { VLOG_DBG("bond %s: sent %d gratuitous learning packets", bundle->name, n_packets); @@ -3587,8 +3587,8 @@ drop_key_clear(struct dpif_backer *backer) if (error && !VLOG_DROP_WARN(&rl)) { struct ds ds = DS_EMPTY_INITIALIZER; odp_flow_key_format(drop_key->key, drop_key->key_len, &ds); - VLOG_WARN("Failed to delete drop key (%s) (%s)", strerror(error), - ds_cstr(&ds)); + VLOG_WARN("Failed to delete drop key (%s) (%s)", + ovs_strerror(error), ds_cstr(&ds)); ds_destroy(&ds); } @@ -5414,7 +5414,7 @@ send_packet(const struct ofport_dpif *ofport, struct ofpbuf *packet) if (error) { VLOG_WARN_RL(&rl, "%s: failed to send packet on port %s (%s)", ofproto->up.name, netdev_get_name(ofport->up.netdev), - strerror(error)); + ovs_strerror(error)); } ofproto->stats.tx_packets++; diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c index d857902d5..522c8398f 100644 --- a/ofproto/ofproto.c +++ b/ofproto/ofproto.c @@ -445,7 +445,7 @@ ofproto_create(const char *datapath_name, const char *datapath_type, error = ofproto->ofproto_class->construct(ofproto); if (error) { VLOG_ERR("failed to open datapath %s: %s", - datapath_name, strerror(error)); + datapath_name, ovs_strerror(error)); ofproto_destroy__(ofproto); return error; } @@ -831,7 +831,7 @@ ofproto_port_set_cfm(struct ofproto *ofproto, ofp_port_t ofp_port, if (error) { VLOG_WARN("%s: CFM configuration on port %"PRIu16" (%s) failed (%s)", ofproto->name, ofp_port, netdev_get_name(ofport->netdev), - strerror(error)); + ovs_strerror(error)); } } @@ -857,7 +857,7 @@ ofproto_port_set_bfd(struct ofproto *ofproto, ofp_port_t ofp_port, if (error) { VLOG_WARN("%s: bfd configuration on port %"PRIu16" (%s) failed (%s)", ofproto->name, ofp_port, netdev_get_name(ofport->netdev), - strerror(error)); + ovs_strerror(error)); } } @@ -1168,7 +1168,7 @@ ofproto_type_run(const char *datapath_type) error = class->type_run ? class->type_run(datapath_type) : 0; if (error && error != EAGAIN) { VLOG_ERR_RL(&rl, "%s: type_run failed (%s)", - datapath_type, strerror(error)); + datapath_type, ovs_strerror(error)); } return error; } @@ -1185,7 +1185,7 @@ ofproto_type_run_fast(const char *datapath_type) error = class->type_run_fast ? class->type_run_fast(datapath_type) : 0; if (error && error != EAGAIN) { VLOG_ERR_RL(&rl, "%s: type_run_fast failed (%s)", - datapath_type, strerror(error)); + datapath_type, ovs_strerror(error)); } return error; } @@ -1213,7 +1213,7 @@ ofproto_run(struct ofproto *p) error = p->ofproto_class->run(p); if (error && error != EAGAIN) { - VLOG_ERR_RL(&rl, "%s: run failed (%s)", p->name, strerror(error)); + VLOG_ERR_RL(&rl, "%s: run failed (%s)", p->name, ovs_strerror(error)); } if (p->ofproto_class->port_poll) { @@ -1323,7 +1323,7 @@ ofproto_run_fast(struct ofproto *p) error = p->ofproto_class->run_fast ? p->ofproto_class->run_fast(p) : 0; if (error && error != EAGAIN) { VLOG_ERR_RL(&rl, "%s: fastpath run failed (%s)", - p->name, strerror(error)); + p->name, ovs_strerror(error)); } return error; } @@ -1763,7 +1763,7 @@ ofport_open(struct ofproto *ofproto, "cannot be opened (%s)", ofproto->name, ofproto_port->name, ofproto_port->ofp_port, - ofproto_port->name, strerror(error)); + ofproto_port->name, ovs_strerror(error)); return NULL; } @@ -1848,7 +1848,7 @@ ofport_install(struct ofproto *p, error: VLOG_WARN_RL(&rl, "%s: could not add port %s (%s)", - p->name, netdev_name, strerror(error)); + p->name, netdev_name, ovs_strerror(error)); if (ofport) { ofport_destroy__(ofport); } else { @@ -3335,7 +3335,7 @@ add_flow(struct ofproto *ofproto, struct ofconn *ofconn, rule = ofproto->ofproto_class->rule_alloc(); if (!rule) { VLOG_WARN_RL(&rl, "%s: failed to create rule (%s)", - ofproto->name, strerror(error)); + ofproto->name, ovs_strerror(error)); return ENOMEM; } cls_rule_init(&rule->cr, &fm->match, fm->priority); @@ -4981,7 +4981,7 @@ pick_datapath_id(const struct ofproto *ofproto) } VLOG_WARN("%s: could not get MAC address for %s (%s)", ofproto->name, netdev_get_name(port->netdev), - strerror(error)); + ovs_strerror(error)); } return ofproto->fallback_dpid; } @@ -5536,7 +5536,7 @@ ofproto_port_set_realdev(struct ofproto *ofproto, ofp_port_t vlandev_ofp_port, if (error) { VLOG_WARN("%s: setting realdev on port %"PRIu16" (%s) failed (%s)", ofproto->name, vlandev_ofp_port, - netdev_get_name(ofport->netdev), strerror(error)); + netdev_get_name(ofport->netdev), ovs_strerror(error)); } return error; } diff --git a/ovsdb/jsonrpc-server.c b/ovsdb/jsonrpc-server.c index 9d083cea2..4cba4d9eb 100644 --- a/ovsdb/jsonrpc-server.c +++ b/ovsdb/jsonrpc-server.c @@ -227,7 +227,7 @@ ovsdb_jsonrpc_server_add_remote(struct ovsdb_jsonrpc_server *svr, error = jsonrpc_pstream_open(name, &listener, options->dscp); if (error && error != EAFNOSUPPORT) { - VLOG_ERR_RL(&rl, "%s: listen failed: %s", name, strerror(error)); + VLOG_ERR_RL(&rl, "%s: listen failed: %s", name, ovs_strerror(error)); return NULL; } @@ -318,7 +318,7 @@ ovsdb_jsonrpc_server_run(struct ovsdb_jsonrpc_server *svr) } else if (error != EAGAIN) { VLOG_WARN_RL(&rl, "%s: accept failed: %s", pstream_get_name(remote->listener), - strerror(error)); + ovs_strerror(error)); } } @@ -599,7 +599,7 @@ ovsdb_jsonrpc_session_set_all_options( error = pstream_set_dscp(remote->listener, options->dscp); if (error) { VLOG_ERR("%s: set_dscp failed %s", - pstream_get_name(remote->listener), strerror(error)); + pstream_get_name(remote->listener), ovs_strerror(error)); } else { remote->dscp = options->dscp; } diff --git a/ovsdb/ovsdb-server.c b/ovsdb/ovsdb-server.c index 3520ffc05..912f599c4 100644 --- a/ovsdb/ovsdb-server.c +++ b/ovsdb/ovsdb-server.c @@ -1295,7 +1295,8 @@ save_config__(FILE *config_file, const struct sset *remotes, char *s; if (ftruncate(fileno(config_file), 0) == -1) { - VLOG_FATAL("failed to truncate temporary file (%s)", strerror(errno)); + VLOG_FATAL("failed to truncate temporary file (%s)", + ovs_strerror(errno)); } obj = json_object_create(); @@ -1307,7 +1308,7 @@ save_config__(FILE *config_file, const struct sset *remotes, if (fseek(config_file, 0, SEEK_SET) != 0 || fputs(s, config_file) == EOF || fflush(config_file) == EOF) { - VLOG_FATAL("failed to write temporary file (%s)", strerror(errno)); + VLOG_FATAL("failed to write temporary file (%s)", ovs_strerror(errno)); } free(s); } @@ -1353,7 +1354,7 @@ load_config(FILE *config_file, struct sset *remotes, struct sset *db_filenames) struct json *json; if (fseek(config_file, 0, SEEK_SET) != 0) { - VLOG_FATAL("seek failed in temporary file (%s)", strerror(errno)); + VLOG_FATAL("seek failed in temporary file (%s)", ovs_strerror(errno)); } json = json_from_stream(config_file); if (json->type == JSON_STRING) { diff --git a/tests/test-netflow.c b/tests/test-netflow.c index 921f0fd77..413837e56 100644 --- a/tests/test-netflow.c +++ b/tests/test-netflow.c @@ -184,7 +184,7 @@ main(int argc, char *argv[]) sock = inet_open_passive(SOCK_DGRAM, target, 0, NULL, 0); if (sock < 0) { - ovs_fatal(0, "%s: failed to open (%s)", argv[1], strerror(-sock)); + ovs_fatal(0, "%s: failed to open (%s)", argv[1], ovs_strerror(-sock)); } daemon_save_fd(STDOUT_FILENO); diff --git a/tests/test-sflow.c b/tests/test-sflow.c index edb996ce3..cba01b9e6 100644 --- a/tests/test-sflow.c +++ b/tests/test-sflow.c @@ -510,7 +510,7 @@ main(int argc, char *argv[]) sock = inet_open_passive(SOCK_DGRAM, target, 0, NULL, 0); if (sock < 0) { - ovs_fatal(0, "%s: failed to open (%s)", argv[1], strerror(-sock)); + ovs_fatal(0, "%s: failed to open (%s)", argv[1], ovs_strerror(-sock)); } daemon_save_fd(STDOUT_FILENO); diff --git a/tests/test-vconn.c b/tests/test-vconn.c index 1e4e7870b..f54a0dfbc 100644 --- a/tests/test-vconn.c +++ b/tests/test-vconn.c @@ -59,9 +59,9 @@ static void check_errno(int a, int b, const char *as, const char *file, int line) { if (a != b) { - char *str_b = strdup(strerror(abs(b))); + char *str_b = strdup(ovs_strerror(abs(b))); ovs_fatal(0, "%s:%d: %s is %d (%s) but should be %d (%s)", - file, line, as, a, strerror(abs(a)), b, str_b); + file, line, as, a, ovs_strerror(abs(a)), b, str_b); } } @@ -156,14 +156,14 @@ test_refuse_connection(int argc OVS_UNUSED, char *argv[]) if (!strcmp(type, "tcp")) { if (error != ECONNRESET && error != EPIPE) { ovs_fatal(0, "unexpected vconn_connect() return value %d (%s)", - error, strerror(error)); + error, ovs_strerror(error)); } } else if (!strcmp(type, "unix")) { CHECK_ERRNO(error, EPIPE); } else if (!strcmp(type, "ssl")) { if (error != EPROTO && error != ECONNRESET) { ovs_fatal(0, "unexpected vconn_connect() return value %d (%s)", - error, strerror(error)); + error, ovs_strerror(error)); } } else { ovs_fatal(0, "invalid connection type %s", type); @@ -194,7 +194,7 @@ test_accept_then_close(int argc OVS_UNUSED, char *argv[]) if (!strcmp(type, "tcp") || !strcmp(type, "unix")) { if (error != ECONNRESET && error != EPIPE) { ovs_fatal(0, "unexpected vconn_connect() return value %d (%s)", - error, strerror(error)); + error, ovs_strerror(error)); } } else { CHECK_ERRNO(error, EPROTO); @@ -249,7 +249,7 @@ test_read_hello(int argc OVS_UNUSED, char *argv[]) error = vconn_connect_block(vconn); if (error != ECONNRESET && error != EPIPE) { ovs_fatal(0, "unexpected vconn_connect() return value %d (%s)", - error, strerror(error)); + error, ovs_strerror(error)); } vconn_close(vconn); } diff --git a/utilities/ovs-controller.c b/utilities/ovs-controller.c index 70bc2e652..6d08af5ec 100644 --- a/utilities/ovs-controller.c +++ b/utilities/ovs-controller.c @@ -136,7 +136,7 @@ main(int argc, char *argv[]) } } if (retval) { - VLOG_ERR("%s: connect: %s", name, strerror(retval)); + VLOG_ERR("%s: connect: %s", name, ovs_strerror(retval)); } } if (n_switches == 0 && n_listeners == 0) { diff --git a/utilities/ovs-dpctl.c b/utilities/ovs-dpctl.c index a87a30514..2389942ef 100644 --- a/utilities/ovs-dpctl.c +++ b/utilities/ovs-dpctl.c @@ -590,13 +590,13 @@ show_dpif(struct dpif *dpif) free(nodes); } else { printf(", could not retrieve configuration (%s)", - strerror(error)); + ovs_strerror(error)); } smap_destroy(&config); netdev_close(netdev); } else { - printf(": open failed (%s)", strerror(error)); + printf(": open failed (%s)", ovs_strerror(error)); } putchar(')'); } @@ -608,12 +608,12 @@ show_dpif(struct dpif *dpif) error = netdev_open(dpif_port.name, dpif_port.type, &netdev); if (error) { - printf(", open failed (%s)", strerror(error)); + printf(", open failed (%s)", ovs_strerror(error)); continue; } error = netdev_get_stats(netdev, &s); if (error) { - printf(", could not retrieve stats (%s)", strerror(error)); + printf(", could not retrieve stats (%s)", ovs_strerror(error)); continue; } diff --git a/utilities/ovs-ofctl.c b/utilities/ovs-ofctl.c index 2d6872ba7..adf86adfc 100644 --- a/utilities/ovs-ofctl.c +++ b/utilities/ovs-ofctl.c @@ -361,7 +361,7 @@ open_vconn_socket(const char *name, struct vconn **vconnp) vconnp); if (error && error != ENOENT) { ovs_fatal(0, "%s: failed to open socket (%s)", name, - strerror(error)); + ovs_strerror(error)); } free(vconn_name); @@ -412,7 +412,7 @@ open_vconn__(const char *name, enum open_target target, error = vconn_connect_block(*vconnp); if (error) { ovs_fatal(0, "%s: failed to connect to socket (%s)", name, - strerror(error)); + ovs_strerror(error)); } ofp_version = vconn_get_version(*vconnp); @@ -1233,7 +1233,7 @@ ofctl_send(struct unixctl_conn *conn, int argc, error = vconn_send_block(vconn, msg); if (error) { ofpbuf_delete(msg); - ds_put_format(&reply, "%s\n", strerror(error)); + ds_put_format(&reply, "%s\n", ovs_strerror(error)); ok = false; } else { ds_put_cstr(&reply, "sent\n"); @@ -1270,7 +1270,7 @@ ofctl_barrier(struct unixctl_conn *conn, int argc OVS_UNUSED, error = vconn_send_block(aux->vconn, msg); if (error) { ofpbuf_delete(msg); - unixctl_command_reply_error(conn, strerror(error)); + unixctl_command_reply_error(conn, ovs_strerror(error)); } else { aux->conn = conn; } @@ -1284,7 +1284,7 @@ ofctl_set_output_file(struct unixctl_conn *conn, int argc OVS_UNUSED, fd = open(argv[1], O_CREAT | O_TRUNC | O_WRONLY, 0666); if (fd < 0) { - unixctl_command_reply_error(conn, strerror(errno)); + unixctl_command_reply_error(conn, ovs_strerror(errno)); return; } diff --git a/vswitchd/bridge.c b/vswitchd/bridge.c index 578c67871..28bf082ea 100644 --- a/vswitchd/bridge.c +++ b/vswitchd/bridge.c @@ -695,7 +695,7 @@ bridge_update_ofprotos(void) error = ofproto_port_del(br2->ofproto, ofproto_port.ofp_port); if (error) { VLOG_ERR("failed to delete port %s: %s", ofproto_port.name, - strerror(error)); + ovs_strerror(error)); } ofproto_port_destroy(&ofproto_port); } @@ -704,7 +704,7 @@ bridge_update_ofprotos(void) error = ofproto_create(br->name, br->type, &br->ofproto); if (error) { VLOG_ERR("failed to create bridge %s: %s", br->name, - strerror(error)); + ovs_strerror(error)); bridge_destroy(br); } } @@ -842,7 +842,7 @@ bridge_configure_datapath_id(struct bridge *br) static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 5); VLOG_ERR_RL(&rl, "bridge %s: failed to set bridge " "Ethernet address: %s", - br->name, strerror(error)); + br->name, ovs_strerror(error)); } } memcpy(br->ea, ea, ETH_ADDR_LEN); @@ -1320,7 +1320,7 @@ iface_set_netdev_config(const struct ovsrec_interface *iface_cfg, error = netdev_set_config(netdev, &iface_cfg->options); if (error) { VLOG_WARN("could not configure network device %s (%s)", - iface_cfg->name, strerror(error)); + iface_cfg->name, ovs_strerror(error)); } return error; } @@ -1461,7 +1461,7 @@ iface_do_create(const struct bridge *br, iface_get_type(iface_cfg, br->cfg), &netdev); if (error) { VLOG_WARN("could not open network device %s (%s)", - iface_cfg->name, strerror(error)); + iface_cfg->name, ovs_strerror(error)); goto error; } @@ -1575,7 +1575,7 @@ iface_create(struct bridge *br, struct if_cfg *if_cfg, ofp_port_t ofp_port) netdev_close(netdev); } else { VLOG_WARN("could not open network device %s (%s)", - port->name, strerror(error)); + port->name, ovs_strerror(error)); } } else { /* Already exists, nothing to do. */ @@ -2566,7 +2566,7 @@ qos_unixctl_show_cb(unsigned int queue_id, } } else { ds_put_format(ds, "\tFailed to get statistics for queue %u: %s", - queue_id, strerror(error)); + queue_id, ovs_strerror(error)); } } @@ -2602,7 +2602,8 @@ qos_unixctl_show(struct unixctl_conn *conn, int argc OVS_UNUSED, error = netdev_dump_queues(iface->netdev, qos_unixctl_show_cb, &data); if (error) { - ds_put_format(&ds, "failed to dump queues: %s", strerror(error)); + ds_put_format(&ds, "failed to dump queues: %s", + ovs_strerror(error)); } unixctl_command_reply(conn, ds_cstr(&ds)); } else { @@ -3534,7 +3535,7 @@ iface_set_mac(struct iface *iface) int error = netdev_set_etheraddr(iface->netdev, ea); if (error) { VLOG_ERR("interface %s: setting MAC failed (%s)", - iface->name, strerror(error)); + iface->name, ovs_strerror(error)); } } } diff --git a/vswitchd/ovs-vswitchd.c b/vswitchd/ovs-vswitchd.c index 80c8fedae..bb087bd9c 100644 --- a/vswitchd/ovs-vswitchd.c +++ b/vswitchd/ovs-vswitchd.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2008, 2009, 2010, 2011, 2012 Nicira, Inc. +/* Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -87,7 +87,7 @@ main(int argc, char *argv[]) if (want_mlockall) { #ifdef HAVE_MLOCKALL if (mlockall(MCL_CURRENT | MCL_FUTURE)) { - VLOG_ERR("mlockall failed: %s", strerror(errno)); + VLOG_ERR("mlockall failed: %s", ovs_strerror(errno)); } #else VLOG_ERR("mlockall not supported on this system"); diff --git a/vswitchd/system-stats.c b/vswitchd/system-stats.c index 842bc204a..f0f53c0c0 100644 --- a/vswitchd/system-stats.c +++ b/vswitchd/system-stats.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2010, 2012 Nicira, Inc. +/* Copyright (c) 2010, 2012, 2013 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -131,7 +131,8 @@ get_memory_stats(struct smap *stats) stream = fopen(file_name, "r"); if (!stream) { - VLOG_WARN_ONCE("%s: open failed (%s)", file_name, strerror(errno)); + VLOG_WARN_ONCE("%s: open failed (%s)", + file_name, ovs_strerror(errno)); return; } @@ -183,7 +184,8 @@ get_boot_time(void) stream = fopen(stat_file, "r"); if (!stream) { - VLOG_ERR_ONCE("%s: open failed (%s)", stat_file, strerror(errno)); + VLOG_ERR_ONCE("%s: open failed (%s)", + stat_file, ovs_strerror(errno)); return boot_time; } @@ -242,7 +244,8 @@ get_raw_process_info(pid_t pid, struct raw_process_info *raw) sprintf(file_name, "/proc/%lu/stat", (unsigned long int) pid); stream = fopen(file_name, "r"); if (!stream) { - VLOG_ERR_ONCE("%s: open failed (%s)", file_name, strerror(errno)); + VLOG_ERR_ONCE("%s: open failed (%s)", + file_name, ovs_strerror(errno)); return false; } @@ -327,13 +330,13 @@ count_crashes(pid_t pid) sprintf(file_name, "/proc/%lu/cmdline", (unsigned long int) pid); stream = fopen(file_name, "r"); if (!stream) { - VLOG_WARN_ONCE("%s: open failed (%s)", file_name, strerror(errno)); + VLOG_WARN_ONCE("%s: open failed (%s)", file_name, ovs_strerror(errno)); goto exit; } if (!fgets(line, sizeof line, stream)) { VLOG_WARN_ONCE("%s: read failed (%s)", file_name, - feof(stream) ? "end of file" : strerror(errno)); + feof(stream) ? "end of file" : ovs_strerror(errno)); goto exit_close; } @@ -398,7 +401,8 @@ get_process_stats(struct smap *stats) dir = opendir(ovs_rundir()); if (!dir) { - VLOG_ERR_ONCE("%s: open failed (%s)", ovs_rundir(), strerror(errno)); + VLOG_ERR_ONCE("%s: open failed (%s)", + ovs_rundir(), ovs_strerror(errno)); return; } @@ -457,7 +461,7 @@ get_filesys_stats(struct smap *stats OVS_UNUSED) stream = setmntent(file_name, "r"); if (!stream) { - VLOG_ERR_ONCE("%s: open failed (%s)", file_name, strerror(errno)); + VLOG_ERR_ONCE("%s: open failed (%s)", file_name, ovs_strerror(errno)); return; } diff --git a/vswitchd/xenserver.c b/vswitchd/xenserver.c index 7427e4c80..1f26e0d17 100644 --- a/vswitchd/xenserver.c +++ b/vswitchd/xenserver.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2009, 2010 Nicira, Inc. +/* Copyright (c) 2009, 2010, 2013 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -38,7 +38,7 @@ read_host_uuid(void) if (errno == ENOENT) { VLOG_DBG("not running on a XenServer"); } else { - VLOG_INFO("%s: open: %s", filename, strerror(errno)); + VLOG_INFO("%s: open: %s", filename, ovs_strerror(errno)); } return NULL; }