[Libvir] [PATCH] Handle failed openvzLocateConfDir.

Jim Meyering jim at meyering.net
Wed Feb 20 14:23:52 UTC 2008


Jim Meyering <jim at meyering.net> wrote:
...
>> +    if (conf_dir != NULL)
>> +        return -1
>
> Whoa.
> Chris Lalance pointed out another obvious flaw.
> I meant to add *this*:
>
>> +    if (conf_dir == NULL)
>> +        return -1
>
> Will repost shortly.
> Thanks, Chris!

Here's the corrected patch:

	Handle failed openvzLocateConfDir.
	* src/openvz_conf.c (openvzLocateConfDir, openvzGetVPSUUID):
	(openvzSetUUID): Don't dereference NULL upon failure.

Signed-off-by: Jim Meyering <meyering at redhat.com>
---
 src/openvz_conf.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/src/openvz_conf.c b/src/openvz_conf.c
index 482de82..a274223 100644
--- a/src/openvz_conf.c
+++ b/src/openvz_conf.c
@@ -641,6 +641,8 @@ openvzGetVPSUUID(int vpsid, char *uuidstr)
     int fd, ret;

     conf_dir = openvzLocateConfDir();
+    if (conf_dir == NULL)
+        return -1;
     sprintf(conf_file, "%s/%d.conf", conf_dir, vpsid);
     free(conf_dir);

@@ -681,6 +683,8 @@ openvzSetUUID(int vpsid)
     int fd, ret;

     conf_dir = openvzLocateConfDir();
+    if (conf_dir == NULL)
+        return -1;
     sprintf(conf_file, "%s/%d.conf", conf_dir, vpsid);
     free(conf_dir);

@@ -722,6 +726,8 @@ int openvzAssignUUIDs(void)
     char ext[8];

     conf_dir = openvzLocateConfDir();
+    if (conf_dir == NULL)
+        return -1;

     dp = opendir(conf_dir);
     if(dp == NULL) {
--
1.5.4.2.134.g82883




More information about the libvir-list mailing list