From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony PERARD Subject: [PATCH V9 5/7] libxl: Intruduce libxl__strndup. Date: Thu, 29 Sep 2011 12:37:55 +0100 Message-ID: <1317296277-2838-6-git-send-email-anthony.perard@citrix.com> References: <1317296277-2838-1-git-send-email-anthony.perard@citrix.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: In-Reply-To: <1317296277-2838-1-git-send-email-anthony.perard@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Xen Devel Cc: Ian Campbell , Anthony PERARD , Stefano Stabellini List-Id: xen-devel@lists.xenproject.org Signed-off-by: Anthony PERARD Acked-by: Ian Campbell --- tools/libxl/libxl_internal.c | 10 ++++++++++ tools/libxl/libxl_internal.h | 1 + 2 files changed, 11 insertions(+), 0 deletions(-) diff --git a/tools/libxl/libxl_internal.c b/tools/libxl/libxl_internal.c index c4d54f9..0fb2315 100644 --- a/tools/libxl/libxl_internal.c +++ b/tools/libxl/libxl_internal.c @@ -159,6 +159,16 @@ char *libxl__strdup(libxl__gc *gc, const char *c) return s; } +char *libxl__strndup(libxl__gc *gc, const char *c, size_t n) +{ + char *s = strndup(c, n); + + if (s) + libxl__ptr_add(gc, s); + + return s; +} + char *libxl__dirname(libxl__gc *gc, const char *s) { char *c; diff --git a/tools/libxl/libxl_internal.h b/tools/libxl/libxl_internal.h index 343c11b..6ec402e 100644 --- a/tools/libxl/libxl_internal.h +++ b/tools/libxl/libxl_internal.h @@ -148,6 +148,7 @@ _hidden void *libxl__calloc(libxl__gc *gc, size_t nmemb, size_t size); _hidden void *libxl__realloc(libxl__gc *gc, void *ptr, size_t new_size); _hidden char *libxl__sprintf(libxl__gc *gc, const char *fmt, ...) PRINTF_ATTRIBUTE(2, 3); _hidden char *libxl__strdup(libxl__gc *gc, const char *c); +_hidden char *libxl__strndup(libxl__gc *gc, const char *c, size_t n); _hidden char *libxl__dirname(libxl__gc *gc, const char *s); _hidden char **libxl__xs_kvs_of_flexarray(libxl__gc *gc, flexarray_t *array, int length); -- Anthony PERARD