openvswitchincludedir = $(includedir)/openvswitch
openvswitchinclude_HEADERS = \
include/openvswitch/compiler.h \
+ include/openvswitch/dynamic-string.h \
include/openvswitch/geneve.h \
include/openvswitch/list.h \
include/openvswitch/ofp-errors.h \
--- /dev/null
+/*
+ * Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013, 2015, 2016 Nicira, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at:
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef OPENVSWITCH_DYNAMIC_STRING_H
+#define OPENVSWITCH_DYNAMIC_STRING_H 1
+
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdio.h>
+#include "openvswitch/compiler.h"
+
+/* A "dynamic string", that is, a buffer that can be used to construct a
+ * string across a series of operations that extend or modify it.
+ *
+ * The 'string' member does not always point to a null-terminated string.
+ * Initially it is NULL, and even when it is nonnull, some operations do not
+ * ensure that it is null-terminated. Use ds_cstr() to ensure that memory is
+ * allocated for the string and that it is null-terminated. */
+struct ds {
+ char *string; /* Null-terminated string. */
+ size_t length; /* Bytes used, not including null terminator. */
+ size_t allocated; /* Bytes allocated, not including null terminator. */
+};
+
+#define DS_EMPTY_INITIALIZER { NULL, 0, 0 }
+
+void ds_init(struct ds *);
+void ds_clear(struct ds *);
+void ds_truncate(struct ds *, size_t new_length);
+void ds_reserve(struct ds *, size_t min_length);
+char *ds_put_uninit(struct ds *, size_t n);
+static inline void ds_put_char(struct ds *, char);
+void ds_put_utf8(struct ds *, int uc);
+void ds_put_char_multiple(struct ds *, char, size_t n);
+void ds_put_buffer(struct ds *, const char *, size_t n);
+void ds_put_cstr(struct ds *, const char *);
+void ds_put_and_free_cstr(struct ds *, char *);
+void ds_put_format(struct ds *, const char *, ...) OVS_PRINTF_FORMAT(2, 3);
+void ds_put_format_valist(struct ds *, const char *, va_list)
+ OVS_PRINTF_FORMAT(2, 0);
+void ds_put_printable(struct ds *, const char *, size_t);
+void ds_put_hex(struct ds *ds, const void *buf, size_t size);
+void ds_put_hex_dump(struct ds *ds, const void *buf_, size_t size,
+ uintptr_t ofs, bool ascii);
+int ds_get_line(struct ds *, FILE *);
+int ds_get_preprocessed_line(struct ds *, FILE *, int *line_number);
+int ds_get_test_line(struct ds *, FILE *);
+
+void ds_put_strftime_msec(struct ds *, const char *format, long long int when,
+ bool utc);
+char *xastrftime_msec(const char *format, long long int when, bool utc);
+
+char *ds_cstr(struct ds *);
+const char *ds_cstr_ro(const struct ds *);
+char *ds_steal_cstr(struct ds *);
+void ds_destroy(struct ds *);
+void ds_swap(struct ds *, struct ds *);
+
+int ds_last(const struct ds *);
+bool ds_chomp(struct ds *, int c);
+\f
+/* Inline functions. */
+
+void ds_put_char__(struct ds *, char);
+
+static inline void
+ds_put_char(struct ds *ds, char c)
+{
+ if (ds->length < ds->allocated) {
+ ds->string[ds->length++] = c;
+ ds->string[ds->length] = '\0';
+ } else {
+ ds_put_char__(ds, c);
+ }
+}
+
+#endif /* dynamic-string.h */
lib/heap.c \
lib/heap.h \
lib/dynamic-string.c \
- lib/dynamic-string.h \
lib/entropy.c \
lib/entropy.h \
lib/fat-rwlock.c \
#define BACKTRACE_H 1
#include <stdint.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
/* log_backtrace() will save the backtrace of a running program
* into the log at the DEBUG level.
#include "csum.h"
#include "dp-packet.h"
#include "dpif.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "flow.h"
#include "hash.h"
#include "hmap.h"
-/* Copyright (c) 2011, 2012, 2013, 2014, 2015 Nicira, Inc.
+/* Copyright (c) 2011, 2012, 2013, 2014, 2015, 2016 Nicira, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
#include <inttypes.h>
#include "colors.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "multipath.h"
#include "meta-flow.h"
#include "nx-match.h"
#include "byte-order.h"
#include "connectivity.h"
#include "dp-packet.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "flow.h"
#include "hash.h"
#include "hmap.h"
#include <errno.h>
#include <netinet/in.h>
#include "byte-order.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "odp-util.h"
#include "ofp-util.h"
#include "packets.h"
#include <getopt.h>
#include <limits.h>
#include <stdlib.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "ovs-thread.h"
#include "util.h"
#include "openvswitch/vlog.h"
#include "coverage.h"
#include <inttypes.h>
#include <stdlib.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hash.h"
#include "svec.h"
#include "timeval.h"
#include "command-line.h"
#include "compiler.h"
#include "dirs.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "hash.h"
#include "json.h"
#define DB_CTL_BASE_H 1
#include "compiler.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "shash.h"
struct ctl_context;
#include <config.h>
#include <stdlib.h>
#include <string.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "netdev-dpdk.h"
#include "dp-packet.h"
#include "util.h"
#include "dirs.h"
#include "dpctl.h"
#include "dpif.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "flow.h"
#include "match.h"
#include "netdev.h"
#include "dpif.h"
#include "dpif-provider.h"
#include "dummy.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fat-rwlock.h"
#include "flow.h"
#include "hmapx.h"
#include "bitmap.h"
#include "dpif-provider.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "flow.h"
#include "fat-rwlock.h"
#include "netdev.h"
#include "dpctl.h"
#include "dp-packet.h"
#include "dpif-netdev.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "flow.h"
#include "netdev.h"
#include "netlink.h"
*/
#include <config.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include <inttypes.h>
#include <stdlib.h>
#include <string.h>
+++ /dev/null
-/*
- * Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013, 2015, 2016 Nicira, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at:
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef DYNAMIC_STRING_H
-#define DYNAMIC_STRING_H 1
-
-#include <stdarg.h>
-#include <stdbool.h>
-#include <stddef.h>
-#include <stdint.h>
-#include <stdio.h>
-#include <time.h>
-#include "compiler.h"
-
-/* A "dynamic string", that is, a buffer that can be used to construct a
- * string across a series of operations that extend or modify it.
- *
- * The 'string' member does not always point to a null-terminated string.
- * Initially it is NULL, and even when it is nonnull, some operations do not
- * ensure that it is null-terminated. Use ds_cstr() to ensure that memory is
- * allocated for the string and that it is null-terminated. */
-struct ds {
- char *string; /* Null-terminated string. */
- size_t length; /* Bytes used, not including null terminator. */
- size_t allocated; /* Bytes allocated, not including null terminator. */
-};
-
-#define DS_EMPTY_INITIALIZER { NULL, 0, 0 }
-
-void ds_init(struct ds *);
-void ds_clear(struct ds *);
-void ds_truncate(struct ds *, size_t new_length);
-void ds_reserve(struct ds *, size_t min_length);
-char *ds_put_uninit(struct ds *, size_t n);
-static inline void ds_put_char(struct ds *, char);
-void ds_put_utf8(struct ds *, int uc);
-void ds_put_char_multiple(struct ds *, char, size_t n);
-void ds_put_buffer(struct ds *, const char *, size_t n);
-void ds_put_cstr(struct ds *, const char *);
-void ds_put_and_free_cstr(struct ds *, char *);
-void ds_put_format(struct ds *, const char *, ...) OVS_PRINTF_FORMAT(2, 3);
-void ds_put_format_valist(struct ds *, const char *, va_list)
- OVS_PRINTF_FORMAT(2, 0);
-void ds_put_printable(struct ds *, const char *, size_t);
-void ds_put_hex(struct ds *ds, const void *buf, size_t size);
-void ds_put_hex_dump(struct ds *ds, const void *buf_, size_t size,
- uintptr_t ofs, bool ascii);
-int ds_get_line(struct ds *, FILE *);
-int ds_get_preprocessed_line(struct ds *, FILE *, int *line_number);
-int ds_get_test_line(struct ds *, FILE *);
-
-void ds_put_strftime_msec(struct ds *, const char *format, long long int when,
- bool utc);
-char *xastrftime_msec(const char *format, long long int when, bool utc);
-
-char *ds_cstr(struct ds *);
-const char *ds_cstr_ro(const struct ds *);
-char *ds_steal_cstr(struct ds *);
-void ds_destroy(struct ds *);
-void ds_swap(struct ds *, struct ds *);
-
-int ds_last(const struct ds *);
-bool ds_chomp(struct ds *, int c);
-\f
-/* Inline functions. */
-
-void ds_put_char__(struct ds *, char);
-
-static inline void
-ds_put_char(struct ds *ds, char c)
-{
- if (ds->length < ds->allocated) {
- ds->string[ds->length++] = c;
- ds->string[ds->length] = '\0';
- } else {
- ds_put_char__(ds, c);
- }
-}
-
-#endif /* dynamic-string.h */
#include "colors.h"
#include "coverage.h"
#include "csum.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hash.h"
#include "jhash.h"
#include "match.h"
#include <limits.h>
#include <string.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hash.h"
#include "shash.h"
#include "unicode.h"
#include <errno.h>
#include "byteq.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "json.h"
#include "list.h"
#include <stdlib.h>
#include "connectivity.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hash.h"
#include "hmap.h"
#include "dp-packet.h"
/*
- * Copyright (c) 2011, 2012, 2013, 2014, 2015 Nicira, Inc.
+ * Copyright (c) 2011, 2012, 2013, 2014, 2015, 2016 Nicira, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
#include "byte-order.h"
#include "colors.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "match.h"
#include "meta-flow.h"
#include "nx-match.h"
#include <stdlib.h>
#include "byte-order.h"
#include "colors.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "ofp-util.h"
#include "packets.h"
#include "tun-metadata.h"
#include <stdbool.h>
#include <sys/time.h>
#include <sys/resource.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "poll-loop.h"
#include "simap.h"
#include "timeval.h"
#include <netinet/ip6.h>
#include "classifier.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "nx-match.h"
#include "ofp-util.h"
#include "ovs-thread.h"
/*
- * Copyright (c) 2010, 2011, 2012, 2013, 2014 Nicira, Inc.
+ * Copyright (c) 2010, 2011, 2012, 2013, 2014, 2016 Nicira, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
#include <sys/types.h>
#include <netinet/in.h>
#include "colors.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "nx-match.h"
#include "ofp-actions.h"
#include "ofp-util.h"
#include "coverage.h"
#include "dp-packet.h"
#include "dpif-netdev.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "openflow/openflow.h"
#include "ovs-thread.h"
#include "dp-packet.h"
#include "dpif-netdev.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "flow.h"
#include "list.h"
#include "netdev-provider.h"
#include "dp-packet.h"
#include "dpif-netlink.h"
#include "dpif-netdev.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "hash.h"
#include "hmap.h"
#include "dirs.h"
#include "dpif.h"
#include "dp-packet.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "flow.h"
#include "hash.h"
#include "hmap.h"
#include "coverage.h"
#include "dpif.h"
#include "dp-packet.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "hash.h"
#include "list.h"
#include "byte-order.h"
#include "compiler.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "netlink.h"
#include "netlink-socket.h"
#include "ofpbuf.h"
#include "byte-order.h"
#include "compiler.h"
#include "ct-dpif.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hmap.h"
#include "ofpbuf.h"
#include "timeval.h"
#include <sys/uio.h>
#include <unistd.h>
#include "coverage.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hash.h"
#include "hmap.h"
#include "netlink.h"
#include "classifier.h"
#include "colors.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hmap.h"
#include "meta-flow.h"
#include "ofp-actions.h"
#include "byte-order.h"
#include "coverage.h"
#include "dpif.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "flow.h"
#include "netlink.h"
#include "ofpbuf.h"
#include "colors.h"
#include "compiler.h"
#include "dummy.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hmap.h"
#include "learn.h"
#include "meta-flow.h"
#include <config.h>
#include <errno.h>
#include "byte-order.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "ofp-msgs.h"
#include "ofp-util.h"
#include "ofpbuf.h"
#include <config.h>
#include "ofp-msgs.h"
#include "byte-order.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hash.h"
#include "hmap.h"
#include "ofpbuf.h"
#include <netinet/in.h>
#include "byte-order.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "learn.h"
#include "meta-flow.h"
#include "multipath.h"
#include "byte-order.h"
#include "colors.h"
#include "compiler.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "flow.h"
#include "learn.h"
#include "multipath.h"
#include "bundle.h"
#include "byte-order.h"
#include "classifier.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "learn.h"
#include "meta-flow.h"
#include "multipath.h"
#include <config.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "ofp-util.h"
#include "ofp-version-opt.h"
#include "ovs-thread.h"
#include "ofpbuf.h"
#include <stdlib.h>
#include <string.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "netdev-dpdk.h"
#include "util.h"
#include <stdbool.h>
#include <stdlib.h>
#include <sys/types.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "flow.h"
#include "list.h"
#include "lldp/lldpd.h"
#include "command-line.h"
#include "compiler.h"
#include "dpif.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "netdev.h"
#include "packets.h"
#include "seq.h"
#include <inttypes.h>
#include <limits.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hash.h"
#include "ovs-thread.h"
#include "ovsdb-error.h"
#include <inttypes.h>
#include "backtrace.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "json.h"
#include "util.h"
#include "openvswitch/vlog.h"
#include "bitmap.h"
#include "coverage.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "json.h"
#include "jsonrpc.h"
#include <float.h>
#include <limits.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "json.h"
#include "ovs-thread.h"
#include "ovsdb-data.h"
#include "crc32c.h"
#include "flow.h"
#include "hmap.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "ovs-thread.h"
#include "odp-util.h"
#include "dp-packet.h"
#include <sys/ioctl.h>
#include <linux/perf_event.h>
#include <asm/unistd.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "perf-counter.h"
#include "shash.h"
#include "util.h"
#include <stdlib.h>
#include <string.h>
#include "coverage.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "list.h"
#include "ovs-thread.h"
#include <sys/wait.h>
#include <unistd.h>
#include "coverage.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "list.h"
#include "ovs-thread.h"
#include <sys/uio.h>
#include <sys/un.h>
#include <unistd.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "ovs-thread.h"
#include "packets.h"
#include "poll-loop.h"
#include <sys/stat.h>
#include <unistd.h>
#include "coverage.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "entropy.h"
#include "ofpbuf.h"
#include "openflow/openflow.h"
#include <string.h>
#include <sys/socket.h>
#include <unistd.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "packets.h"
#include "socket-util.h"
#include "util.h"
#include <stdlib.h>
#include <string.h>
#include "coverage.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "flow.h"
#include "jsonrpc.h"
#include <ctype.h>
#include <stdlib.h>
#include <string.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "util.h"
#include "openvswitch/vlog.h"
#include <unistd.h>
#include "compiler.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "socket-util.h"
#include "syslog-provider.h"
#include "util.h"
#include <unistd.h>
#include "compiler.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "socket-util.h"
#include "syslog-provider.h"
#include "util.h"
#include "table.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "json.h"
#include "ovsdb-data.h"
#include "ovsdb-error.h"
#include <unistd.h>
#include "coverage.h"
#include "dummy.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "hash.h"
#include "hmap.h"
#include "cmap.h"
#include "coverage.h"
#include "dpif-netdev.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "errno.h"
#include "flow.h"
#include "netdev.h"
#include <string.h>
#include "classifier.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hash.h"
#include "list.h"
#include "netdev.h"
#include <stdint.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "netlink.h"
#include "ofpbuf.h"
#include "openflow/openflow.h"
#include <inttypes.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "util.h"
/* Returns the unicode code point corresponding to leading surrogate 'leading'
#include <unistd.h>
#include "coverage.h"
#include "dirs.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "json.h"
#include "jsonrpc.h"
#include "list.h"
#include <stdlib.h>
#include <string.h>
#include "coverage.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "flow.h"
#include "ofp-msgs.h"
#include "async-append.h"
#include "coverage.h"
#include "dirs.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "ofpbuf.h"
#include "ovs-thread.h"
#include "sat-math.h"
#include "ofproto/ofproto-dpif-rid.h"
#include "connectivity.h"
#include "coverage.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "flow.h"
#include "hmap.h"
#include "lacp.h"
#include <stdlib.h>
#include "coverage.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fail-open.h"
#include "in-band.h"
#include "odp-util.h"
#include "coverage.h"
#include "cmap.h"
#include "dpif.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fail-open.h"
#include "guarded-list.h"
#include "latch.h"
#include "coverage.h"
#include "dp-packet.h"
#include "dpif.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "in-band.h"
#include "lacp.h"
#include "learn.h"
#include "cfm.h"
#include "ovs-lldp.h"
#include "dpif.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fail-open.h"
#include "guarded-list.h"
#include "hmapx.h"
#include "connectivity.h"
#include "connmgr.h"
#include "coverage.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hash.h"
#include "hmap.h"
#include "meta-flow.h"
#include "connectivity.h"
#include "csum.h"
#include "dpif.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fat-rwlock.h"
#include "hash.h"
#include "hmap.h"
#include "compiler.h"
#include "daemon.h"
#include "dirs.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "poll-loop.h"
#include "stream.h"
#include <config.h>
#include "chassis.h"
-#include "lib/dynamic-string.h"
#include "lib/vswitch-idl.h"
+#include "openvswitch/dynamic-string.h"
#include "openvswitch/vlog.h"
#include "ovn/lib/ovn-sb-idl.h"
#include "ovn-controller.h"
#include <config.h>
#include "lflow.h"
#include "lport.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "ofctrl.h"
#include "ofp-actions.h"
#include "ofpbuf.h"
#include <config.h>
#include "ofctrl.h"
#include "dirs.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hmap.h"
#include "match.h"
#include "ofp-actions.h"
#include "compiler.h"
#include "daemon.h"
#include "dirs.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "encaps.h"
#include "fatal-signal.h"
#include "hmap.h"
#include <stdarg.h>
#include <stdbool.h>
#include "compiler.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "expr.h"
#include "lex.h"
#include "logical-fields.h"
#include <config.h>
#include "expr.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "json.h"
#include "lex.h"
#include "logical-fields.h"
#include <ctype.h>
#include <errno.h>
#include <stdarg.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "json.h"
#include "packets.h"
#include "util.h"
#include "command-line.h"
#include "daemon.h"
#include "dirs.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "hash.h"
#include "hmap.h"
#include "command-line.h"
#include "compiler.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "json.h"
#include "ovsdb-data.h"
#include <stdlib.h>
#include "column.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "json.h"
#include "ovsdb-error.h"
#include "ovsdb-parser.h"
#include "bitmap.h"
#include "column.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "monitor.h"
#include "json.h"
#include "jsonrpc.h"
#include "bitmap.h"
#include "column.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "json.h"
#include "jsonrpc.h"
#include "ovsdb-error.h"
#include "compiler.h"
#include "daemon.h"
#include "dirs.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "json.h"
#include "jsonrpc.h"
#include "command-line.h"
#include "daemon.h"
#include "dirs.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "file.h"
#include "hash.h"
#include "command-line.h"
#include "compiler.h"
#include "dirs.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "file.h"
#include "lockfile.h"
#include <stddef.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "json.h"
#include "ovsdb-error.h"
#include "shash.h"
#include "transaction.h"
#include "bitmap.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hash.h"
#include "hmap.h"
#include "json.h"
#include <limits.h>
#include <stdlib.h>
#include "command-line.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "ovstest.h"
#include "util.h"
#include <unistd.h>
#include "command-line.h"
#include "daemon.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "ofpbuf.h"
#include "ovstest.h"
#include "packets.h"
#undef NDEBUG
#include "odp-util.h"
#include <stdio.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "flow.h"
#include "match.h"
#include "ofp-parse.h"
#include <errno.h>
#include <getopt.h>
#include <sys/wait.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "match.h"
#include "ofp-actions.h"
#include <stdlib.h>
#include "command-line.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "json.h"
#include "jsonrpc.h"
#include "ovsdb-data.h"
#include <setjmp.h>
#include "command-line.h"
#include "daemon.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "ofpbuf.h"
#include "ovstest.h"
#include "packets.h"
#include "command-line.h"
#include "daemon.h"
#include "dirs.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "jsonrpc.h"
#include "process.h"
#include "timeval.h"
#include "colors.h"
#include "compiler.h"
#include "dirs.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "nx-match.h"
#include "odp-util.h"
#include "command-line.h"
#include "compiler.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "hash.h"
#include "json.h"
#include "daemon.h"
#include "dirs.h"
#include "dpif.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "hash.h"
#include "hmap.h"
#include "hmapx.h"
#include "daemon.h"
#include "dirs.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "json.h"
#include "latch.h"
#include "ofpbuf.h"
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "process.h"
#include "util.h"
#include "openvswitch/vlog.h"
#include "command-line.h"
#include "compiler.h"
-#include "dynamic-string.h"
+#include "openvswitch/dynamic-string.h"
#include "fatal-signal.h"
#include "hash.h"
#include "json.h"