The following pull request was submitted through Github.
It can be accessed and reviewed at: https://github.com/lxc/lxc/pull/2420

This e-mail was sent by the LXC bot, direct replies will not reach the author
unless they happen to be subscribed to this list.

=== Description (from pull-request) ===
CC: Donghwa Jeong <dh48.je...@samsung.com>
Signed-off-by: Christian Brauner <christian.brau...@ubuntu.com>
From 9a5e7ac4a9fe963349717592a5f642f213ab5dae Mon Sep 17 00:00:00 2001
From: Christian Brauner <christian.brau...@ubuntu.com>
Date: Wed, 20 Jun 2018 13:44:02 +0200
Subject: [PATCH] include: add strlcat() implementation

CC: Donghwa Jeong <dh48.je...@samsung.com>
Signed-off-by: Christian Brauner <christian.brau...@ubuntu.com>
---
 configure.ac          |  4 ++++
 src/include/strlcat.c | 37 +++++++++++++++++++++++++++++++++++++
 src/include/strlcat.h | 29 +++++++++++++++++++++++++++++
 3 files changed, 70 insertions(+)
 create mode 100644 src/include/strlcat.c
 create mode 100644 src/include/strlcat.h

diff --git a/configure.ac b/configure.ac
index 96dd66594..c24f8f3ee 100644
--- a/configure.ac
+++ b/configure.ac
@@ -632,6 +632,10 @@ AC_CHECK_FUNCS([strlcpy],
        AM_CONDITIONAL(HAVE_STRLCPY, true)
        AC_DEFINE(HAVE_STRLCPY,1,[Have strlcpy]),
        AM_CONDITIONAL(HAVE_STRLCPY, false))
+AC_CHECK_FUNCS([strlcat],
+       AM_CONDITIONAL(HAVE_STRLCAT, true)
+       AC_DEFINE(HAVE_STRLCAT,1,[Have strlcat]),
+       AM_CONDITIONAL(HAVE_STRLCAT, false))
 
 # Check for some libraries
 AX_PTHREAD
diff --git a/src/include/strlcat.c b/src/include/strlcat.c
new file mode 100644
index 000000000..42fa3f32c
--- /dev/null
+++ b/src/include/strlcat.c
@@ -0,0 +1,37 @@
+/* liblxcapi
+ *
+ * Copyright © 2018 Christian Brauner <christ...@brauner.io>.
+ * Copyright © 2018 Canonical Ltd.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2, as
+ * published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * This function has been copied from musl.
+ */
+
+#include <limits.h>
+#include <stdint.h>
+#include <string.h>
+
+#ifndef HAVE_STRLCPY
+#include "strlcpy.h"
+#endif
+
+size_t strlcat(char *d, const char *s, size_t n)
+{
+       size_t l = strnlen(d, n);
+       if (l == n)
+               return l + strlen(s);
+
+       return l + strlcpy(d + l, s, n - l);
+}
diff --git a/src/include/strlcat.h b/src/include/strlcat.h
new file mode 100644
index 000000000..1b51e00e6
--- /dev/null
+++ b/src/include/strlcat.h
@@ -0,0 +1,29 @@
+/* liblxcapi
+ *
+ * Copyright © 2018 Christian Brauner <christ...@brauner.io>.
+ * Copyright © 2018 Canonical Ltd.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2, as
+ * published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * This function has been copied from musl.
+ */
+
+#ifndef _STRLCAT_H
+#define _STRLCAT_H
+
+#include <stdio.h>
+
+extern size_t strlcat(char *d, const char *s, size_t n);
+
+#endif
_______________________________________________
lxc-devel mailing list
lxc-devel@lists.linuxcontainers.org
http://lists.linuxcontainers.org/listinfo/lxc-devel

Reply via email to