Discussion:
[PATCH 2/2] sestatus: free process and file contexts which are checked
Nicolas Iooss
2018-04-22 19:21:48 UTC
Permalink
clang's static analyzer reports a potential memory leak because the
buffers allocated in pc and fc are not freed in main(), in sestatus.c.
Free these buffers properly.

Signed-off-by: Nicolas Iooss <***@m4x.org>
---
policycoreutils/sestatus/sestatus.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/policycoreutils/sestatus/sestatus.c b/policycoreutils/sestatus/sestatus.c
index d7f198c2fa0d..9a92e72ff4fd 100644
--- a/policycoreutils/sestatus/sestatus.c
+++ b/policycoreutils/sestatus/sestatus.c
@@ -436,6 +436,7 @@ int main(int argc, char **argv)
printf("%s\n", context);
freecon(context);
}
+ free(pc[i]);
}

printf("\nFile contexts:\n");
@@ -478,6 +479,7 @@ int main(int argc, char **argv)
freecon(context);
}
}
+ free(fc[i]);
}

return 0;
--
2.17.0
William Roberts
2018-04-23 16:54:13 UTC
Permalink
Post by Nicolas Iooss
clang's static analyzer reports a potential memory leak because the
buffers allocated in pc and fc are not freed in main(), in sestatus.c.
Free these buffers properly.
---
policycoreutils/sestatus/sestatus.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/policycoreutils/sestatus/sestatus.c b/policycoreutils/sestatus/sestatus.c
index d7f198c2fa0d..9a92e72ff4fd 100644
--- a/policycoreutils/sestatus/sestatus.c
+++ b/policycoreutils/sestatus/sestatus.c
@@ -436,6 +436,7 @@ int main(int argc, char **argv)
printf("%s\n", context);
freecon(context);
}
+ free(pc[i]);
}
printf("\nFile contexts:\n");
@@ -478,6 +479,7 @@ int main(int argc, char **argv)
freecon(context);
}
}
+ free(fc[i]);
}
return 0;
--
2.17.0
ack on both patches in this series.
William Roberts
2018-04-25 17:09:40 UTC
Permalink
Merged: https://github.com/SELinuxProject/selinux/pull/94

On Mon, Apr 23, 2018 at 9:54 AM, William Roberts
Post by William Roberts
Post by Nicolas Iooss
clang's static analyzer reports a potential memory leak because the
buffers allocated in pc and fc are not freed in main(), in sestatus.c.
Free these buffers properly.
---
policycoreutils/sestatus/sestatus.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/policycoreutils/sestatus/sestatus.c b/policycoreutils/sestatus/sestatus.c
index d7f198c2fa0d..9a92e72ff4fd 100644
--- a/policycoreutils/sestatus/sestatus.c
+++ b/policycoreutils/sestatus/sestatus.c
@@ -436,6 +436,7 @@ int main(int argc, char **argv)
printf("%s\n", context);
freecon(context);
}
+ free(pc[i]);
}
printf("\nFile contexts:\n");
@@ -478,6 +479,7 @@ int main(int argc, char **argv)
freecon(context);
}
}
+ free(fc[i]);
}
return 0;
--
2.17.0
ack on both patches in this series.
Loading...