Looks Good.

On Fri, Mar 25, 2011 at 3:40 PM, Ben Pfaff <b...@nicira.com> wrote:
> ---
>  lib/netdev-linux.c    |   12 ++++++------
>  lib/netdev-provider.h |    8 ++++----
>  lib/netdev.c          |   31 +++++++++++++++----------------
>  lib/netdev.h          |   10 +++++-----
>  4 files changed, 30 insertions(+), 31 deletions(-)
>
> diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c
> index 02d8a4d..af84e5b 100644
> --- a/lib/netdev-linux.c
> +++ b/lib/netdev-linux.c
> @@ -64,7 +64,7 @@
>  #include "rtnetlink-link.h"
>  #include "socket-util.h"
>  #include "shash.h"
> -#include "svec.h"
> +#include "sset.h"
>  #include "vlog.h"
>
>  VLOG_DEFINE_THIS_MODULE(netdev_linux);
> @@ -729,9 +729,9 @@ netdev_linux_close(struct netdev *netdev_)
>     free(netdev);
>  }
>
> -/* Initializes 'svec' with a list of the names of all known network devices. 
> */
> +/* Initializes 'sset' with a list of the names of all known network devices. 
> */
>  static int
> -netdev_linux_enumerate(struct svec *svec)
> +netdev_linux_enumerate(struct sset *sset)
>  {
>     struct if_nameindex *names;
>
> @@ -740,7 +740,7 @@ netdev_linux_enumerate(struct svec *svec)
>         size_t i;
>
>         for (i = 0; names[i].if_name != NULL; i++) {
> -            svec_add(svec, names[i].if_name);
> +            sset_add(sset, names[i].if_name);
>         }
>         if_freenameindex(names);
>         return 0;
> @@ -1510,14 +1510,14 @@ netdev_linux_set_policing(struct netdev *netdev,
>
>  static int
>  netdev_linux_get_qos_types(const struct netdev *netdev OVS_UNUSED,
> -                           struct svec *types)
> +                           struct sset *types)
>  {
>     const struct tc_ops **opsp;
>
>     for (opsp = tcs; *opsp != NULL; opsp++) {
>         const struct tc_ops *ops = *opsp;
>         if (ops->tc_install && ops->ovs_name[0] != '\0') {
> -            svec_add(types, ops->ovs_name);
> +            sset_add(types, ops->ovs_name);
>         }
>     }
>     return 0;
> diff --git a/lib/netdev-provider.h b/lib/netdev-provider.h
> index 1a916f7..c6ebd2a 100644
> --- a/lib/netdev-provider.h
> +++ b/lib/netdev-provider.h
> @@ -166,7 +166,7 @@ struct netdev_class {
>      *
>      * If this netdev class does not support enumeration, this may be a null
>      * pointer. */
> -    int (*enumerate)(struct svec *all_names);
> +    int (*enumerate)(struct sset *all_names);
>
>     /* Attempts to receive a packet from 'netdev' into the 'size' bytes in
>      * 'buffer'.  If successful, returns the number of bytes in the received
> @@ -330,11 +330,11 @@ struct netdev_class {
>      * this function must not add "" to 'types'.
>      *
>      * The caller is responsible for initializing 'types' (e.g. with
> -     * svec_init()) before calling this function.  The caller takes ownership
> -     * of the strings added to 'types'.
> +     * sset_init()) before calling this function.  The caller retains 
> ownership
> +     * of 'types'.
>      *
>      * May be NULL if 'netdev' does not support QoS at all. */
> -    int (*get_qos_types)(const struct netdev *netdev, struct svec *types);
> +    int (*get_qos_types)(const struct netdev *netdev, struct sset *types);
>
>     /* Queries 'netdev' for its capabilities regarding the specified 'type' of
>      * QoS.  On success, initializes 'caps' with the QoS capabilities.
> diff --git a/lib/netdev.c b/lib/netdev.c
> index 4254c1a..bf7ff6a 100644
> --- a/lib/netdev.c
> +++ b/lib/netdev.c
> @@ -177,18 +177,18 @@ netdev_lookup_provider(const char *type)
>  }
>
>  /* Clears 'types' and enumerates the types of all currently registered netdev
> - * providers into it.  The caller must first initialize the svec. */
> + * providers into it.  The caller must first initialize the sset. */
>  void
> -netdev_enumerate_types(struct svec *types)
> +netdev_enumerate_types(struct sset *types)
>  {
>     struct shash_node *node;
>
>     netdev_initialize();
> -    svec_clear(types);
> +    sset_clear(types);
>
>     SHASH_FOR_EACH(node, &netdev_classes) {
>         const struct netdev_class *netdev_class = node->data;
> -        svec_add(types, netdev_class->type);
> +        sset_add(types, netdev_class->type);
>     }
>  }
>
> @@ -360,20 +360,20 @@ netdev_is_open(const char *name)
>     return !!shash_find_data(&netdev_dev_shash, name);
>  }
>
> -/*  Clears 'svec' and enumerates the names of all known network devices. */
> +/*  Clears 'sset' and enumerates the names of all known network devices. */
>  int
> -netdev_enumerate(struct svec *svec)
> +netdev_enumerate(struct sset *sset)
>  {
>     struct shash_node *node;
>     int error = 0;
>
>     netdev_initialize();
> -    svec_clear(svec);
> +    sset_clear(sset);
>
>     SHASH_FOR_EACH(node, &netdev_classes) {
>         const struct netdev_class *netdev_class = node->data;
>         if (netdev_class->enumerate) {
> -            int retval = netdev_class->enumerate(svec);
> +            int retval = netdev_class->enumerate(sset);
>             if (retval) {
>                 VLOG_WARN("failed to enumerate %s network devices: %s",
>                           netdev_class->type, strerror(retval));
> @@ -964,13 +964,13 @@ netdev_set_policing(struct netdev *netdev, uint32_t 
> kbits_rate,
>  * Every network device supports disabling QoS with a type of "", but this 
> type
>  * will not be added to 'types'.
>  *
> - * The caller must initialize 'types' (e.g. with svec_init()) before calling
> + * The caller must initialize 'types' (e.g. with sset_init()) before calling
>  * this function.  The caller is responsible for destroying 'types' (e.g. with
> - * svec_destroy()) when it is no longer needed.
> + * sset_destroy()) when it is no longer needed.
>  *
>  * Returns 0 if successful, otherwise a positive errno value. */
>  int
> -netdev_get_qos_types(const struct netdev *netdev, struct svec *types)
> +netdev_get_qos_types(const struct netdev *netdev, struct sset *types)
>  {
>     const struct netdev_class *class = netdev_get_dev(netdev)->netdev_class;
>     return (class->get_qos_types
> @@ -1258,12 +1258,11 @@ struct netdev *
>  netdev_find_dev_by_in4(const struct in_addr *in4)
>  {
>     struct netdev *netdev;
> -    struct svec dev_list = SVEC_EMPTY_INITIALIZER;
> -    size_t i;
> +    struct sset dev_list = SSET_INITIALIZER(&dev_list);
> +    const char *name;
>
>     netdev_enumerate(&dev_list);
> -    for (i = 0; i < dev_list.n; i++) {
> -        const char *name = dev_list.names[i];
> +    SSET_FOR_EACH (name, &dev_list) {
>         struct in_addr dev_in4;
>
>         if (!netdev_open_default(name, &netdev)
> @@ -1276,7 +1275,7 @@ netdev_find_dev_by_in4(const struct in_addr *in4)
>     netdev = NULL;
>
>  exit:
> -    svec_destroy(&dev_list);
> +    sset_destroy(&dev_list);
>     return netdev;
>  }
>
> diff --git a/lib/netdev.h b/lib/netdev.h
> index a7deb24..e6fadb0 100644
> --- a/lib/netdev.h
> +++ b/lib/netdev.h
> @@ -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.
> @@ -35,7 +35,7 @@ struct ofpbuf;
>  struct in_addr;
>  struct in6_addr;
>  struct shash;
> -struct svec;
> +struct sset;
>
>  enum netdev_flags {
>     NETDEV_UP = 0x0001,         /* Device enabled? */
> @@ -93,7 +93,7 @@ struct netdev_class;
>  void netdev_run(void);
>  void netdev_wait(void);
>
> -void netdev_enumerate_types(struct svec *types);
> +void netdev_enumerate_types(struct sset *types);
>
>  /* Open and close. */
>  int netdev_open(struct netdev_options *, struct netdev **);
> @@ -103,7 +103,7 @@ void netdev_close(struct netdev *);
>  bool netdev_exists(const char *name);
>  bool netdev_is_open(const char *name);
>
> -int netdev_enumerate(struct svec *);
> +int netdev_enumerate(struct sset *);
>
>  /* Options. */
>  int netdev_set_config(struct netdev *, const struct shash *args);
> @@ -173,7 +173,7 @@ struct netdev_queue_stats {
>  int netdev_set_policing(struct netdev *, uint32_t kbits_rate,
>                         uint32_t kbits_burst);
>
> -int netdev_get_qos_types(const struct netdev *, struct svec *types);
> +int netdev_get_qos_types(const struct netdev *, struct sset *types);
>  int netdev_get_qos_capabilities(const struct netdev *,
>                                 const char *type,
>                                 struct netdev_qos_capabilities *);
> --
> 1.7.1
>
> _______________________________________________
> dev mailing list
> dev@openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev
>
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to