According to SELinux API, when resources are allocated using getpidcon()
of getfilecon(), they should be freed using freecon().
This commit makes ss use freecon() where appropriate, defining a stub
function executing a free() useful when iproute2 is compiled without
SELinux support.
Signed-off-by: Andrea Claudi <aclaudi@redhat.com>
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
*context = NULL;
return -1;
}
+
+static void freecon(char *context)
+{
+ free(context);
+}
#endif
int preferred_family = AF_UNSPEC;
snprintf(name + nameoff, sizeof(name) - nameoff, "%d/fd/", pid);
pos = strlen(name);
if ((dir1 = opendir(name)) == NULL) {
- free(pid_context);
+ freecon(pid_context);
continue;
}
}
user_ent_add(ino, p, pid, fd,
pid_context, sock_context);
- free(sock_context);
+ freecon(sock_context);
}
- free(pid_context);
+ freecon(pid_context);
closedir(dir1);
}
closedir(dir);
getpidcon(pid, &pid_context);
out(" proc_ctx=%s", pid_context ? : "unavailable");
- free(pid_context);
+ freecon(pid_context);
}
if (show_details) {