summaryrefslogtreecommitdiff
path: root/lib/svec.c
diff options
context:
space:
mode:
authorBen Pfaff <blp@nicira.com>2009-12-02 11:49:53 -0800
committerBen Pfaff <blp@nicira.com>2009-12-02 11:49:53 -0800
commit58fda1dab104041fc693032475ec4662c1a52849 (patch)
treec6adcb818ad9233155d4d65872e8144dae6fe723 /lib/svec.c
parentc3bb4bd7f1d9c045a5e5d7062b09d4dac4e48195 (diff)
parent6c88d577e83db12f73df12be8fc575419b011fda (diff)
downloadopenvswitch-58fda1dab104041fc693032475ec4662c1a52849.tar.gz
Merge "master" branch into "db".
Diffstat (limited to 'lib/svec.c')
-rw-r--r--lib/svec.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/svec.c b/lib/svec.c
index 81a36b57a..bc3df23d5 100644
--- a/lib/svec.c
+++ b/lib/svec.c
@@ -372,6 +372,22 @@ svec_join(const struct svec *svec,
return ds_cstr(&ds);
}
+/* Breaks 's' into tokens at any character in 'delimiters', and appends each
+ * token to 'svec'. Empty tokens are not added. */
+void
+svec_split(struct svec *svec, const char *s_, const char *delimiters)
+{
+ char *s = xstrdup(s_);
+ char *save_ptr = NULL;
+ char *token;
+
+ for (token = strtok_r(s, delimiters, &save_ptr); token != NULL;
+ token = strtok_r(NULL, delimiters, &save_ptr)) {
+ svec_add(svec, token);
+ }
+ free(s);
+}
+
const char *
svec_back(const struct svec *svec)
{