X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Funixctl.c;h=ca90b396aa8abf26d50843a015a56849c51ec60f;hb=0c2c90570b53b715bf5f51d12b1987fd87db3bbf;hp=161374e0faa37ab4b80ac7ab961e940f71231987;hpb=b43c6fe279a5630dfbc0273e06bd1e8ca530ba35;p=openvswitch diff --git a/lib/unixctl.c b/lib/unixctl.c index 161374e0..ca90b396 100644 --- a/lib/unixctl.c +++ b/lib/unixctl.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008, 2009, 2010 Nicira Networks. + * Copyright (c) 2008, 2009, 2010, 2011 Nicira Networks. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -43,6 +43,9 @@ #endif VLOG_DEFINE_THIS_MODULE(unixctl); + +COVERAGE_DEFINE(unixctl_received); +COVERAGE_DEFINE(unixctl_replied); struct unixctl_command { unixctl_cb_func *cb; @@ -104,6 +107,13 @@ unixctl_help(struct unixctl_conn *conn, const char *args OVS_UNUSED, ds_destroy(&ds); } +static void +unixctl_version(struct unixctl_conn *conn, const char *args OVS_UNUSED, + void *aux OVS_UNUSED) +{ + unixctl_command_reply(conn, 200, get_program_version()); +} + void unixctl_command_register(const char *name, unixctl_cb_func *cb, void *aux) { @@ -203,6 +213,7 @@ unixctl_server_create(const char *path, struct unixctl_server **serverp) } unixctl_command_register("help", unixctl_help, NULL); + unixctl_command_register("version", unixctl_version, NULL); server = xmalloc(sizeof *server); list_init(&server->conns); @@ -565,8 +576,7 @@ unixctl_client_transact(struct unixctl_client *client, if (error) { VLOG_WARN("error reading reply from %s: %s", client->connect_path, - (error == EOF ? "unexpected end of file" - : strerror(error))); + ovs_retval_to_string(error)); goto error; }