|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 5 of 8 RESEND] blktap3/vhd: Introduce relative-path.c/relative-path.h
This patch copies from blktap2 functionality that returns a relative path from
one path to another, with changes coming from blktap2.5.
Signed-off-by: Thanos Makatos <thanos.makatos@xxxxxxxxxx>
diff --git a/tools/blktap2/vhd/lib/relative-path.c
b/tools/blktap3/vhd/lib/relative-path.c
copy from tools/blktap2/vhd/lib/relative-path.c
copy to tools/blktap3/vhd/lib/relative-path.c
--- a/tools/blktap2/vhd/lib/relative-path.c
+++ b/tools/blktap3/vhd/lib/relative-path.c
@@ -1,4 +1,5 @@
/* Copyright (c) 2008, XenSource Inc.
+ * Copyright (c) 2010, Citrix Systems, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -28,6 +29,7 @@
#include <errno.h>
#include <stdlib.h>
#include <string.h>
+#include <limits.h>
#include "relative-path.h"
@@ -212,7 +214,8 @@ char *
relative_path_to(char *from, char *to, int *err)
{
int from_nodes, common;
- char *to_absolute, *from_absolute;
+ char *to_absolute, __to_absolute[PATH_MAX];
+ char *from_absolute, __from_absolute[PATH_MAX];
char *up, *common_target_path, *relative_path;
*err = 0;
@@ -229,14 +232,14 @@ relative_path_to(char *from, char *to, i
return NULL;
}
- to_absolute = realpath(to, NULL);
+ to_absolute = realpath(to, __to_absolute);
if (!to_absolute) {
EPRINTF("failed to get absolute path of %s\n", to);
*err = -errno;
goto out;
}
- from_absolute = realpath(from, NULL);
+ from_absolute = realpath(from, __from_absolute);
if (!from_absolute) {
EPRINTF("failed to get absolute path of %s\n", from);
*err = -errno;
@@ -292,8 +295,6 @@ relative_path_to(char *from, char *to, i
out:
sfree(up);
- sfree(to_absolute);
- sfree(from_absolute);
return relative_path;
}
diff --git a/tools/blktap2/include/relative-path.h
b/tools/blktap3/vhd/lib/relative-path.h
copy from tools/blktap2/include/relative-path.h
copy to tools/blktap3/vhd/lib/relative-path.h
--- a/tools/blktap2/include/relative-path.h
+++ b/tools/blktap3/vhd/lib/relative-path.h
@@ -1,4 +1,5 @@
/* Copyright (c) 2008, XenSource Inc.
+ * Copyright (c) 2010, Citrix Systems, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |